如何使用Python从pdf文件中删除页面?

时间:2016-09-19 13:12:17

标签: python pdf

我有一些超过500页的.pdf文件,但每个文件只需要几页。有必要保留文档的标题页。我确切地知道程序应删除的页面数量。我如何使用安装在MS Visual Studio上的Python 2.7环境来完成它?

2 个答案:

答案 0 :(得分:19)

尝试使用PyPDF2

不是删除页面,而是创建新文档并添加您不想删除的所有页面。

一些示例代码(最初改编自BinPress,已死,已归档here)。

from PyPDF2 import PdfFileWriter, PdfFileReader
pages_to_keep = [1, 2, 10] # page numbering starts from 0
infile = PdfFileReader('source.pdf', 'rb')
output = PdfFileWriter()

for i in pages_to_keep:
    p = infile.getPage(i)
    output.addPage(p)

with open('newfile.pdf', 'wb') as f:
    output.write(f)

from PyPDF2 import PdfFileWriter, PdfFileReader
pages_to_delete = [3, 4, 5] # page numbering starts from 0
infile = PdfFileReader('source.pdf', 'rb')
output = PdfFileWriter()

for i in range(infile.getNumPages()):
    if i not in pages_to_delete:
        p = infile.getPage(i)
        output.addPage(p)

with open('newfile.pdf', 'wb') as f:
    output.write(f)

答案 1 :(得分:-1)

使用pyPDF2:

https://github.com/mstamy2/PyPDF2

文档位于:

https://pythonhosted.org/PyPDF2/

看起来非常直观。