12.5k Star,一行代码能实现什么丧心病狂的功能?

简介: 网页在线转换为pdf格式

      日常中我们总是需要将一些网页转换成pdf格式使用,尽管可以使用浏览器自带的功能实现,但面对批量转换时就显的有点力不从心了;或者需要在项目中调用该项功能实现转换。

      今天,就给大家介绍一款好用的开3源项目-wkhtmltopdf,只需要一行命令就可以实现上述功能,配合各种语言,能实现程序内的自由调用,非常容易实现批量化操作。

简介

wkhtmltopdf一个使用 WebKit 网页渲染引擎开发的用来将 HTML 文档转成 PDF 文档的工具,可以跟多种脚本语言进行集成来转换文档,适用于Windows,Macos,Linux,在GitHub上有12.5k Star。

基础使用

以Windows为例

为了能让软件在任何目录下都能运行,在安装好软件后,需要将其添加到系统变量中

运行命令行代码:

wkhtmltopdf  http://www.cxy521.com  d:/pdf/cxy521.pdf


批量处理

对于有多个html需要转换的,可以将它们转换到一个pdf文件中

wkhtmltopdf  http://www.cxy521.comhttp://www.baidu.com  d:/pdf/cxy+baidu.pdf


或则通过批处理单独转换成一个个pdf文件

@echo off

title html to pdf

rem 遍历当前目录下所有 .html 文件,转换成pdf文件存放在当前目录

for   %%i  in  ( *.html)  do wkhtmltopdf  toc  %%i  %%~ni.pdf

pause


注意:html文件名称含有中文时,可能会存在无法转换的问题。

集成使用

以Python为例

在Pycharm中,下载安装pdfkit

输入代码:

import pdfkit


# pdfkit是python对wkhtmltopdf调用的封装,支持URL,本地文件,文本内容到PDF的转换

# 设置环境变量,如果有设置可省略

path_wkthmltopdf = r'C:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe'

config = pdfkit.configuration(wkhtmltopdf=path_wkthmltopdf)

# 将对应网页转换为pdf格式,并保存在当前目录下

pdfkit.from_url('http://www.baidu.com', 'out.pdf', configuration=config)


写在最后

以上只是简单的对wkhtmltopdf功能的介绍,实际上该软件功能十分强大,可以通过 wkhtmltopdf -h查看详细的命令,动手试试;另外,还有一个能将网页转换成图片的功能-wkhtmltoimage,有兴趣的朋友可以试试效果哦!


点击获取更多内容

相关文章
|
3月前
|
NoSQL Linux 网络安全
26.5k star,推荐一款实用工具
【8月更文挑战第19天】
|
3月前
|
Rust 监控 Linux
|
3月前
|
测试技术 Linux
|
5月前
|
Python 容器
GitHub狂揽6700 Star,Python进阶必备的案例、技巧与工程实践
当下是 Python 急剧发展的时代,越来越多的人开始学习和使用Pyhon,而大家也遇到了各种问题。这份手册清晰、细致地介绍了 Python 代码应该遵循的编程风格,并解释了背后的原理和机制。
|
5月前
|
人工智能 自然语言处理
如何使用 Co-STAR 模型来设计提示词
如何使用 Co-STAR 模型来设计提示词
476 0
|
6月前
|
JSON 安全 Java
Star 28.2k!这个开源库真是好用
阅读Hutool的源码是深入理解其工作原理的有效方式。通过阅读源码,你可以学习到Hutool的实现细节,了解其内部的逻辑和设计模式。这对于提高自己的编程技能和理解Hutool的精髓非常有帮助。由于分析源码需要更大的文章篇幅,后续有时间,V 哥再单独写一篇文章来解释这些好用工具类的源码分析。
|
6月前
|
JSON 安全 数据安全/隐私保护
​iOS Class Guard github用法、工作原理和安装详解及使用经验总结
​iOS Class Guard github用法、工作原理和安装详解及使用经验总结
100 0
|
6月前
|
JSON 安全 数据安全/隐私保护
iOS Class Guard github用法、工作原理和安装详解及使用经验总结
iOS Class Guard github用法、工作原理和安装详解及使用经验总结
81 0
|
XML JSON JavaScript
关于2k Star项目BpmnProcessDesigner的开发过程与扩展说明
关于2k Star项目BpmnProcessDesigner的开发过程与扩展说明
1276 4