1.首先安装该软件:点击安装
2.如何使用?
- 直接命令:
wkhtmltopdf http://www.baidu.com/ baidu.pdf
- php使用:
$shell = Env::get('PDF.WKHTMLTOPDF')." ".Env::get('APP.APP_HOST')."reportDetail?docId=".$v["app_doc_id"]." ".Env::get('PDF.STORE_URL').$v["app_doc_id"].".pdf";
exec($shell,$out,$status);
if(!$status) {
$pdf_url = "/uploads/pdf/" . $v["app_doc_id"] . ".pdf";
Db::name('report')->where('app_doc_id', $v["app_doc_id"])->update(["pdf_url" => $pdf_url]);
}
其中:
[PDF]
WKHTMLTOPDF = D:\wkhtmltopdf\bin\wkhtmltopdf.exe
STORE_URL = E:\xxx\WWW\bbb\public\uploads\pdf\
- python使用:
# -*- coding: utf-8 -*-
"""
Created on Wed Jul 8 09:58:03 2020
@author: Administrator
测试将网页导出为pdf
"""
import pdfkit
'''将url生成pdf文件'''
def url_to_pdf(url, to_file):
# wkhtmltopdf.exe程序本地路径
path_wkthmltopdf = r'D:\\wkhtmltopdf\\bin\\wkhtmltopdf.exe'
config = pdfkit.configuration(wkhtmltopdf=path_wkthmltopdf)
# 生成pdf文件,to_file为文件路径
pdfkit.from_url(url, to_file, configuration=config)
print('完成')
# 百度的首页url,转换为pdf
url_to_pdf(r'http://192.168.142.244:88/reportDetail?docId=32879', 'out_1.pdf')
这里我们用了python的pdfkit库,需要先安装:
pip install -i http://pypi.douban.com/simple --trusted-host pypi.douban.com pdfkit
安装后,可以先了解下里面的三个函数:from_url、from_file、from_string,分别针对网址,html文件及文本。
如果你测试了,会发现生成的pdf文件较小,质量较高,适合批量自动化操作。