5.2 使用Python操作PDF文档

5.2.1 PyPDF2安装与介绍

PyPDF2是一个能够处理 pdf 文件的库,它提供了读取,分割,合并,文件转换等多种操作。

安装PyPDF2:

pip install PyPDF2

PyPDF2 包含了 PdfFileReader,PdfFileMerger,PageObject,PdfFileWriter 四个常用的主要 Class。

5.2.2 使用PdfFileReader,PdfFileWriter读取和写入PDF文件

可以对PDF文件进行读写:

from PyPDF2 import PdfFileReader, PdfFileWriter 
readFile = 'python.pdf'
writeFile = 'write.pdf'
# 获取一个 PdfFileReader 对象 
pdfReader = PdfFileReader(open(readFile, 'rb')) 
# 获取 PDF 的页数 
pageCount = pdfReader.getNumPages() 
# 返回一个 PageObject 
page = pdfReader.getPage(0) 
# 获取一个 PdfFileWriter 对象 
pdfWriter = PdfFileWriter() 
# 将一个 PageObject 加入到 PdfFileWriter 中 
pdfWriter.addPage(page) 
# 输出到文件中 
pdfWriter.write(open(writeFile, 'wb'))

即可将python.pdf文件中的第一页写入到write.pdf文件中。

page对象可以使用extractText()方法,返回该页文本的字符串,但是有时无法获取到完整的内容,甚至只能获取一系列的"\n"。

在此基础之上,可以将一个pdf文档中的若干页写入到另一个文档中,实现文档的分割,合并等操作。