通过Python将目录中的所有多页PDF文件分离为单页PDF

时间:2018-05-30 20:34:36

标签: python pdf

我需要获取数百个随机命名的多页PDF文件,并将它们拆分为单页PDF文件。我一直在试验Python并取得了一些成功。以下代码完全符合我的要求,但它是为了分割特定的'而编写的。 PDF文件(w9.pdf)。我需要将所有PDF文件拆分到目录(* .pdf)中。

有人可以指出我正确的方向吗?

# pdf_splitter.py

import os
from PyPDF2 import PdfFileReader, PdfFileWriter

def pdf_splitter(path):
fname = os.path.splitext(os.path.basename(path))[0]


pdf = PdfFileReader(path)
for page in range(pdf.getNumPages()):
    pdf_writer = PdfFileWriter()
    pdf_writer.addPage(pdf.getPage(page))

    output_filename = '{}_page_{}.pdf'.format(
        fname, page+1)


    with open(output_filename, 'wb') as out:
        pdf_writer.write(out)

    print('Created: {}'.format(output_filename))


if __name__ == '__main__':
    path = 'w9.pdf'
    pdf_splitter(path)

1 个答案:

答案 0 :(得分:3)

我建议您使用以下解决方案:

import glob

if __name__ == '__main__':
    paths = glob.glob('*.pdf')
    for path in paths:
        pdf_splitter(path)