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,有兴趣的朋友可以试试效果哦!


点击获取更多内容

相关文章
|
2月前
|
测试技术 Linux
|
4月前
|
人工智能 自然语言处理
如何使用 Co-STAR 模型来设计提示词
如何使用 Co-STAR 模型来设计提示词
283 0
|
5月前
|
存储 JSON 前端开发
🔥基于GitHub的Electron自动发布与更新🔥
🔥基于GitHub的Electron自动发布与更新🔥
|
5月前
|
JSON 安全 数据安全/隐私保护
​iOS Class Guard github用法、工作原理和安装详解及使用经验总结
​iOS Class Guard github用法、工作原理和安装详解及使用经验总结
89 0
|
5月前
|
JSON 安全 数据安全/隐私保护
iOS Class Guard github用法、工作原理和安装详解及使用经验总结
iOS Class Guard github用法、工作原理和安装详解及使用经验总结
76 0
|
BI
GitHub 近两万 Star,无需编码,可一键生成前后端代码 下
GitHub 近两万 Star,无需编码,可一键生成前后端代码 下
115 0
GitHub 近两万 Star,无需编码,可一键生成前后端代码   下
|
JavaScript 前端开发 NoSQL
GitHub 近两万 Star,无需编码,可一键生成前后端代码 上
GitHub 近两万 Star,无需编码,可一键生成前后端代码 上
173 0
GitHub 近两万 Star,无需编码,可一键生成前后端代码  上
|
JavaScript 算法 前端开发
github 后面加 1s 进入类似 vscode 的样式可以更好的阅读代码
github 后面加 1s 进入类似 vscode 的样式可以更好的阅读代码
107 0
github 后面加 1s 进入类似 vscode 的样式可以更好的阅读代码
github:代码修改合并工作流程笔记
github:代码修改合并工作流程笔记
109 0