python将网页保存为pdf,利用Python将网页保存为PDF文件

本文介绍了如何使用Python结合wkhtmltopdf工具将网页内容转化为PDF文件。首先,需要在Ubuntu 16.04上安装wkhtmltopdf,接着通过pip安装pdfkit库。示例代码展示了从URL、文件或字符串创建PDF的方法,并提供了一个利用BeautifulSoup处理HTML的示例。此外,还给出了一个名为`html2pdf`的函数,用于将网页内容保存为PDF。
摘要由CSDN通过智能技术生成

环境简介

wkhtmltopdf可以直接把任何一个可以在浏览器中浏览的网页直接转换成一个pdf,首先说明一下它不是一个python库,而是一个把html页面转换成pdf的一个软件,我们需要在系统上安装它。

Ubuntu 16.04 安装wkhtmltopdf

$ sudo apt-get install wkhtmltopdf

然后Python需要使用这个软件需要再安装一个库

sudo pip3 install pdfkit

pdfkit使用示例

参考文档

一个简单的例子:

import pdfkit

pdfkit.from_url('http://google.com', 'out.pdf')

pdfkit.from_file('test.html', 'out.pdf')

pdfkit.from_string('Hello!', 'out.pdf')

你也可以传递一个url或者文件名列表:

pdfkit.from_url(['google.com', 'yandex.ru', 'engadget.com'], 'out.pdf')

pdfkit.from_file(['file1.html', 'file2.html'], 'out.pdf')

其他使用方式请参照pdfkit参考文档

参考代码

def html2pdf(url,tag,name,value):

html=requests.get(url).content

bsObj=BeautifulSoup(html,'html.parser')

title=bsObj.h1

content=bsObj.find(tag,{name:value})

content.insert(1,title)

filename=content.h1.get_text()

html=html_template.format(content=content)

html = html.encode("utf-8")

with open(filename+'.html', 'wb') as f:

f.write(html)

pdfkit.from_file(filename+'.html',filename+'.pdf',options=options)

华裳绕指柔, 版权所有丨如未注明 , 均为原创|转载请注明利用Python将网页保存为PDF文件!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值