当前位置:   article > 正文

Python对PDF文档操作第三方库PyPDF库功能介绍_python pypdf

python pypdf

1、读取pdf文档
import PyPDF2
pdf = PyPDF2.PdfFileReader(‘test.pdf’)
其中,PdfFileReader是一个用来用来读入pdf的类,其中的参数如下

class PyPDF2.PdfFileReader(stream, strict=True, warndest=None, overwriteWarnings=True)
主要的参数是stream表示文件对象

2、获取文档信息
# 下面两个函数等价
print(pdf.getDocumentInfo())
print(pdf.documentInfo)

3、获取文档页码
# 获取页码
print(pdf.getNumPages())

4、提取第m页的内容
# 提取第m页的内容
print(pdf.getPage(m))

5、删除文档中的部分页
方法一
pdf = PyPDF2.PdfFileReader(‘test.pdf’)
pdfFileMerge = PyPDF2.PdfFileMerger()
# pages是(start, stop[, step])格式
# 本代码表示提取第1页和第2页(文档从第0页开始)
pdfFileMerge.append(fileobj=pdf, pages=(1, 3))
# 将提取后的文档写入test01.pdf
pdfFileMerge.write(“test01.pdf”)

方法二
pdf = PyPDF2.PdfFileReader(‘test.pdf’)
pdfFileWriter = PyPDF2.PdfFileWriter()
# 获取页码
numPages = pdf.getNumPages()
# 保留的页码
needList = [1, 5, 6]
for index in range(numPages):
if index in needList:
page = pdf.getPage(index)
pdfFileWriter.addPage(page)
# 将提取后的文档写入test01.pdf
pdfFileWriter.write(open(“test01.pdf”, ‘wb’))
如果想设置去除的页码,在index判断时改为not in即可

6、将两个pdf合并
6.1在pdf的末尾插入新的pdf
# 先读取两个文档
pdf = PyPDF2.PdfFileReader(“test1.pdf”)
add_pdf = PyPDF2.PdfFileReader(‘test2.pdf’)
pdfFileMerge = PyPDF2.PdfFileMerger()
# 在后面追加pdf,pages是(start, stop[, step])格式
pdfFileMerge.append(fileobj=pdf, pages=(0, 10))
pdfFileMerge.append(fileobj=add_pdf, pages=(5, 15))
# 将插入后的结果写入test01.pdf
pdfFileMerge.write(“D:/py3/CSDN/test01.pdf”)
上文代码的含义是 在pdf指向的文档的第0页到第9页后添加add_pdf对应的文档的第4页到第14页。如果不设置pages参数则默认为整个文档。

6.2在pdf中的某一页添加新的pdf
# 先读取两个文档
pdf = PyPDF2.PdfFileReader(“test1.pdf”)
add_pdf = PyPDF2.PdfFileReader(‘test2.pdf’)
pdfFileMerge = PyPDF2.PdfFileMerger()
# 在后面追加pdf,pages是(start, stop[, step])格式
pdfFileMerge.append(fileobj=pdf, pages=(0, 10))
# 相比于append,merge还可以指定position参数,该参数表示从第几页插入新的pdf
pdfFileMerge.merge(position=1, fileobj=add_pdf, pages=(5, 15))
# 将插入后的结果写入test01.pdf
pdfFileMerge.write(“D:/py3/CSDN/test01.pdf”)
通过position参数设置从第几页开始添加,如例子中是从第一页开始添加,即第一页已是add_pdf的内容

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/在线问答5/article/detail/761776
推荐阅读
相关标签
  

闽ICP备14008679号