以不规则的间隔分割pdf

时间:2019-08-19 17:46:05

标签: python pdf split

我正在使用以下代码来分割各种发票的pdf:

但是,我试图让此for循环在不规则的间隔内进行迭代(例如,第一个拆分应该仅是第1页,第二个拆分应该是第2-4页,第三个拆分应该是第2-4页,等等)< / p>

也许有人可以帮助我修改此代码以获得所需的结果吗?

非常感谢!

from PyPDF2 import PdfFileWriter, PdfFileReader

inputpdf = PdfFileReader(open("document.pdf", "rb"))

for i in range(inputpdf.numPages):
    output = PdfFileWriter()
    output.addPage(inputpdf.getPage(i))
    with open("document-page%s.pdf" % i, "wb") as outputStream:
        output.write(outputStream)

1 个答案:

答案 0 :(得分:0)

在此,假设end_of_split是每个拆分的最后一页的true,包括最后一个拆分:

def end_of_split(n):
    return n%2==0
output = PdfFileWriter()
out_count = 0
for i in range(inputpdf.numPages):
    output.addPage(inputpdf.getPage(i))
    if end_of_split(i):
        with open("document-page%s.pdf" % out_count, "wb") as outputStream:
            output.write(outputStream)
            out_count += 1
        if i < inputpdf.numPages-1:
            output = PdfFileWriter()