使用 PyPDF2 连接多个 PDF

我正在尝试将多个PDF合并为一个。以下是我的代码:


import PyPDF2

import os

import sys


if not sys.warnoptions:

    import warnings

    warnings.simplefilter("ignore")


pdf_path=r'path'

os.chdir(pdf_path)


output_pdf=input("Enter for output pdf: ")


#Get PDF list

pdfmerge=[]

for pdf_file in os.listdir(pdf_path):

    if pdf_file.endswith('.pdf'):

        pdfmerge.append(pdf_file)


pdfWriter = PyPDF2.PdfFileWriter()


#loop through all PDFs

for pdf_file in pdfmerge:

    pdfFileObj=open(pdf_file,'rb')

    pdfReader = PyPDF2.PdfFileReader(pdfFileObj)


for pageNum in range(pdfReader.numPages):

    pageObj=pdfReader.getPage(pageNum)

    pdfWriter.addPage(pageObj)


#Save PDF

pdfOutput=open(output_pdf+'.pdf','wb')


pdfWriter.write(pdfOutput)

pdfOutput.close()

此代码提供输出pdf,但只有文件夹中的最后一个pdf在输出pdf中串联,其余的则不是。我应该在代码中更改什么,以便文件夹中的所有pdf都合并,而不仅仅是最后一个pdf


慕的地6264312
浏览 121回答 1
1回答

冉冉说

迭代页面时缺少缩进,它应该显示为:for pdf_file in pdfmerge:    pdfFileObj=open(pdf_file,'rb')    pdfReader = PyPDF2.PdfFileReader(pdfFileObj)    for pageNum in range(pdfReader.numPages):        pageObj=pdfReader.getPage(pageNum)        pdfWriter.addPage(pageObj)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python