【发布时间】:2017-01-27 04:44:57
【问题描述】:
我有一些超过 500 页的 .pdf 文件,但我只需要每个文件中的几页。有必要保留文档的标题页。我确切地知道程序应该删除的页数。我如何使用安装在 MS Visual Studio 上的 Python 2.7 环境来做到这一点?
【问题讨论】:
我有一些超过 500 页的 .pdf 文件,但我只需要每个文件中的几页。有必要保留文档的标题页。我确切地知道程序应该删除的页数。我如何使用安装在 MS Visual Studio 上的 Python 2.7 环境来做到这一点?
【问题讨论】:
【讨论】:
尝试使用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)
【讨论】:
for i in pages_to_keep: ...?