当前位置: 首页 > 科技观察

如何在第一个PDF文件中间插入第二个PDF文件的内容?

时间:2023-03-15 23:35:06 科技观察

大家好,我是Python进阶。前言前几天在研究【麦大叔】Python自动化书籍中的案例时,学习了PDF文件处理,感觉很有意思。刚刚在【J哥】的交流群里,有粉丝问了一个关于PDF处理的问题。如果不学习如何处理PDF,刚开始看的时候会有点吃力,一开始有点手足无措。1.思路对于这个问题,我其实有3个思路。第一个思路:把pdf文件1拆分成单独的文件,然后和pdf文件2一起排序放到一个文件夹里,然后合并在一起;思路二:尝试使用merge合并,直接插入到文件的指定页面下,但是我目前不太会用这个,还没想好;思路三:逐页添加,另存为新文件。2.解决方案对于这个问题,这里采用第三种方法,这是三种方法中最自然、最简单的。这里需要用到PDF处理库PyPDF2。这个库需要安装。安装命令:pipinstallPyPDF2这个库对于PDF处理还是比较强大的。它可以拆分、合并、加密和拦截PDF文件。.很多公众号也写过这个库的其他用途,这里就不赘述了。解决这个问题,这里直接上代码,如下:fromPyPDF2importPdfFileReader,PdfFileWriterpdf_file1=PdfFileReader("dogs_0.pdf")#待插入的pdf文件pdf_file2=PdfFileReader("pythonintroduction.pdf")#待插入insertedTargetpdffilenew_file=PdfFileWriter()#这里的场景是将pdf_file1插入到pdf_file2的第3页new_file.addPage(pdf_file2.getPage(0))new_file.addPage(pdf_file2.getPage(1))new_file.addPage(pdf_file1.getPage(0))new_file.addPage(pdf_file2.getPage(2))#writethefilewithopen("merged_file.pdf","wb")asf:new_file.write(f)关键地方有注释标注,如果需要在原pdf文件中插入过多的页面,可以考虑循环追加,这样就不用写很多行代码了。3.总结我是Python进阶。本文基于实际过程中遇到的PDF文件拆分合并问题,使用PyPDF2第三方库帮助解决。这个库可以拆分、合并、加密和截取PDF文件。功能强大,可以帮助自己和大家更好的了解库的使用方法。