Python合并PDF

1.前言

最近做爬虫的时候需要将爬取的pdf分页文件合并成一个pdf文件,就想着python有没有什么库能够实现。通过简单搜索,发现了Pypdf2。

2.安装

安装步骤很简单:

pip install pypdf2

3.使用

通过查询文档发现pypdf2提供了很多,满足我的需求只需要其中两个,即PdfFileMerger, PdfFileReader

from PyPDF2 import PdfFileMerger, PdfFileReader #引入

file_merger = PdfFileMerger(strict=False) #初始化并设置非严格检查
target_path = 'X:/XXX/temp' #合并pdf所在目录
path='X:/XXX/XXX' #合并后输出目录
pdf_lst = [f for f in os.listdir(target_path) if f.endswith('.pdf')]#读取pdf
pdf_lst = [os.path.join(target_path, filename) for filename in pdf_lst]#补全文件地址
for pdf in pdf_lst:
    file_merger.append(PdfFileReader(pdf), 'tag')
file_merger.addMetadata(
    {u'/Title': u'my title', u'/Creator': u'creator', '/Subject': 'subjects'})#补全pdf信息
with open(PATH, 'wb+') as fa:
    file_merger.write(fa) #写入合并后的pdf

通过上面这段代码即可实现pdf的合并。

PdfFileMerger()有一个参数,strict(bool) – 确定是否应警告用户出现问题,缺省值为True。我合并的pdf中被检测出问题,不设置为strict=False不能合并成功。

PdfFileMergerappend()方法也有参数,第一个参数是文件对象,第二个参数是书签,为了方便浏览我用爬虫爬取了书签,再通过第二个参数在合并是设置书签。

PdfFileMergeraddMetadata()方法可以添加元数据,便于pdf的后续管理。该方法的参数必须使用元组进行设置。

4.参考

官方文档:PyPDF2 Documentation — PyPDF2 1.26.0 documentation (pythonhosted.org)

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值