繁体   English   中英

Python PDFMerger 太慢

[英]Python PDFMerger Too Slow

我正在使用 PyPDF2 中的 PDFMerger。 我的程序基本上是读取文件夹中的所有 PDF 并将它们合并为一个。 我用 15 个 PDF 文件进行了测试,每个文件大小为 500kb,效果非常好。 整个过程在一秒钟内完成。 然而,当我尝试大量处理时,过程花费的时间比我预期的要长。 我曾尝试合并 1000 个文件,每个文件都是 500kb,读取和附加所有这些 PDF 总共花费了 3 秒,但是在编写 PDF 时,它花费了 67 秒。 我已经尝试了 2 个级别的合并(500 合并为 1,其他 500 合并为其他 1,然后合并最后的 2),但持续时间大致相同。 有什么办法可以加快这个写作过程吗?

我在下面添加我的代码。

            merger = PdfMerger()
            for pdf in dirs:
                if pdf.endswith('pdf'):
                       merger.append(pdf)

            merger.write(filename)
            merger.close()

这是一个比答案更长的评论。

我刚刚使用最新版本的 PyPDF2 尝试了这个:

from PyPDF2 import PdfReader, PdfWriter
import time

reader =PdfReader("a-two-page-doc.pdf")
writer = PdfWriter()

for i in range(1000):
    writer.append(reader)


t0 = time.time()
with open("out-2000-pages.pdf", "wb") as fp:
    writer.write(fp)
t1 = time.time()

print(f"{t1-t0:.2f}s")

这在我的机器上花费了大约 0.67 秒。

您使用的是哪个版本的 PyPDF2? 哪个版本的 Python? 是否有关于特定 PDF 的内容? 单个PDF有多大? 您是否启用了某些压缩功能?

没有更多的细节,没有人能够帮助你。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM