[英]How to speed up merging multiple PDF files using PyPDF2
我正在尝试使用此代码使用 pypdf2 合并 5 个 pdf 文件:
import os
from PyPDF2 import PdfMerger
source_dir = r"C:\Users\Aparns\Downloads\speeddata"
merger = PdfMerger(strict=True)
for item in os.listdir(source_dir):
if item.endswith("pdf"):
merger.append(source_dir + item)
merger.write(source_dir + r"C:\Users\Aparns\Downloads\speeddata\Complete.pdf")
merger.close()
pdf个文件存放在speeddata目录下。 此过程花费太多时间进行响应。 有没有其他方法可以做到这一点?
我是 pypdf 和PyPDF2
的当前维护者。 我认为使用pypdf
/ PyPDF2
(或任何其他 pypdf 项目)没有更快的方法。 如果有,请告诉我,我们可以将其添加到 合并文档中。
一些建议:
pypdf
。 PyPDF2
已弃用。strict=False
(默认)open
文件。 pypdf 这样做 - 它也再次关闭文件句柄使用 Python 从 PyPDF2 导入 PdfFileMerger 合并两个 PDF 文件。 #Create and instance of PdfFileMerger() class.merger = PdfFileMerger() #Create 一个包含文件名的列表。 pdf_files = ['pdf_files/sample_page1.pdf', 'pdf_files/sample_page2.pdf'] #迭代文件名列表。 合并。 追加(pdf_文件)
这个简单的代码对我有用而且速度非常快
from PyPDF2 import PdfFileReader, PdfFileMerger
f1=PdfFileReader(open(r"C:\Users\Aparna\Downloads\Speed Vs Time (5).pdf","rb"))
f2=PdfFileReader(open(r"C:\Users\Aparna\Downloads\Speed Vs Time (4).pdf","rb"))
merger = PdfFileMerger(strict=True)
merger.append(f1)
merger.append(f2)
merger.write('new.pdf')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.