在我的缓存文件夹中有5个pdf文件。我希望读取这些文件,并将它们合并在一起,这样我就可以得到一个pdf文件,该文件由位于文件夹中的5个文件组成。
我的问题是,PyPDF2 PdfFileMerger和PyPDF2 PdfWriter (已经尝试过这两个变体)将我合并5倍于第一个文件。
当我将读取的PDF文件单独保存回我的硬盘驱动器时,它们被整齐地存储起来,没有任何问题。所以我在文件里读似乎没有任何问题。合并时我的循环有问题吗?我没有正确理解PyPDF2文档吗?
不幸的是,我找不到我的错误,希望得到你的支持。
最好的感谢
import os
from PyPDF2 import PdfReader
from PyPDF2 import PdfFileMerger
pdf_files = [f for f in os.listdir(CACHE_FOLDER_PATH) if f.endswith('.pdf')]
pdf_files.sort()
merger = PdfFileMerger()
for element in pdf_files:
with open(os.path.join(CACHE_FOLDER_PATH, element), 'rb') as f:
merger.append(PdfReader(f))
with open(os.path.join(CACHE_FOLDER_PATH, 'output.pdf'), 'wb') as f:
merger.write(f)发布于 2022-09-05 12:44:31
解决了。
我刚刚完成了从2.4.1版本到最新版本2.10.5的更新。显然,它实际上是我使用的PyPDF2版本中的一个bug。
不管怎样,谢谢你们。
https://stackoverflow.com/questions/73607970
复制相似问题