提取特定的PDF页面并使用Python保存

2022-03-30 00:00:00 python extract pdf pypdf2

问题描述

我有一些源代码,并试图编码提取一些页面和创建pdf文件。 我有一个列表,如下所示

information = [(filename1,startpage1,endpage1), (filename2, startpage2, endpage2), ...,(filename19,startpage19,endpage19)].

这是我的代码。

import PyPDF2    
for page in range(pdfReader.getNumPages()-1):
    pdf_writer = PyPDF2.PdfFileWriter()
    start = information[page][1]
    end = information[page][2]
    while start<end:
        pdf_writer.addPage(pdfReader.getPage(start))
        start+=1
        output_filename = '{}_{}_page_{}.pdf'.format(information[page][0],information[page][1], information[page][2])
    with open(output_filename,'wb') as out:
        pdf_writer.write(out)

但输出很奇怪..有些里面什么都没有,有些只有一页。我如何更正此错误?


解决方案

我已修复该问题。这是等号(Start<;=End)。

for page in range(len(information)):
    pdf_writer = PyPDF2.PdfFileWriter()
    start = information[page][1]
    end = information[page][2]
    while start<=end:
        pdf_writer.addPage(pdfReader.getPage(start-1))
        start+=1
    if not os.path.exists(savepath):
        os.makedirs(savepath)
    output_filename = '{}_{}_page_{}.pdf'.format(information[page][0],information[page][1], information[page][2])
    with open(output_filename,'wb') as out:
        pdf_writer.write(out)

相关文章