

PyPDF2如何实现按照PDF页码提取后并另存为PDF格式文件?
source link: https://segmentfault.com/a/1190000041163857
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

PyPDF2如何实现按照PDF页码提取后并另存为PDF格式文件?
事情的经过是这样的,由于现有的PDF文件太多了而我真正需要的内容只有十几页。
每次查找不方便,另外需要发给自己的小伙伴也太多别人也不容易找到需要的内容,所以产生了一个想法就是把需要的PDF提取出来然后另存为一个PDF文件。
于是就有了这次的PDF页面提取操作,下面进入实战环节。
项目中用到的库主要是PyPDF2用于PDF格式文件的提取等操作,另外还需要os操作库用来做文件的读写、另存为操作。
from PyPDF2 import PdfFileReader, PdfFileWriter # PDF格式文件操作 import os # 系统文件操作
第一步:初始化在PDF文件操作过程中的相关参数。
# 定义文件的操作路径(需要提取内容的原文件路径) file_path = 'data.pdf' # 定义目标文件路径(已经提取好的文件路径) output_file_path = '' # 定义开始提取页的页码 begin = '102' # 定义结束提取页的页码 end = '113' # 初始化已经提取好的文件路径 output_file_path = output_file_path + f'({begin}~{end}).pdf'
第二步:判断需要操作的原始文件是否存在、判断需要提取的页码是否在合理的范围内。
# 判断pdf文件是否存在,存在则继续读取文件 if os.path.isfile(file_path): global pdf_obj_reader pdf_obj_reader = PdfFileReader(file_path) # 读取原始文件所有内容 # 判断一下页码是否在合理的范围内。 if begin < 1 or end > pdf_obj_reader.getNumPages(): print('请输入合理的页面范围') else: exit(0)
第三步:根据需要提取内容的pdf页码范围提取pdf内容并写入PDF文件写入流。
# 初始化文件写入流。 global pdf_obj_writer pdf_obj_writer = PdfFileWriter() # 遍历已经读取的文件流,提取需要的部分并写入文件写入流。 for page_num in range(begin - 1, end): # 由于读取的页面是从0开始,所以开始页码进行减1操作 pdf_obj_writer.addPage(pdf_obj_reader.getPage(page_num)) # 将符合条件的页码对应内容写入文件写入流 # 最后,将提取好的文件流对象写入到新定义好的PDF文件中 with open(output_file_path, 'wb') as output_file_pdf: pdf_obj_writer.write(output_file_pdf) # 写入到指定文件
到此,整个PDF内容提取和写入的操作就完成了,感谢大家的支持。
【往期精彩】
浪漫的turtle,送给程序员自己的圣诞树!
PyQt5 GUI:百度图片下载器(文末附源码)
python3中的zip()、zip(*)、list()之间的灵活转换!
python print() 函数的格式化字符串输出
PyQt5 GUI && Requests Api 做一个天气查询系统(文末领取完整代码)!
Recommend
-
74
使用html2canvas将网页保存为图片
-
12
Vue前端HTML保存为PDF的两种常用方式 「干货分享」
-
21
V2EX › 程序员 jquery 生成的 chart 如何自动保存为图片 xumng123 · 10 小时 18...
-
3
word插入页码的方法 2021年9月12日104 在使用的word进行对文档中编写也越来越频繁了,那么进行编辑的过程中,...
-
7
【笔记】Word页眉/页脚/页码不连续设置 发表于 2022-05-08 阅读次数:...
-
19
迷途小书童的Note python 3.8
-
4
-
4
调整页码、转移批注、切割页面:这些命令行工具帮你玩转 PDF 无需 Adobe Acrobat 或付费 PDF 软件,也能玩转复杂 PDF 操作 如今,无论是商业文件,电子书籍,还是学术论文,大多以 PDF 文件格式存储和分发。这主...
-
5
相信有很多小伙伴完成ps图片的时候非常模糊但不知道如何变成高清吧,今天就来跟大家说一下如何变成高清图片,大家可以在保存图片的时候换个格式就高清了。 psd文件如何保存为高清图片: 1、首先需要用到ps软件,大家打开
-
3
如何将手机QQ浏览器当前网页内容保存为图片?在使用qq浏览器的时候,我们可以直接将网页保存为图片。我们使用qq浏览器的时候,直接将网页保存为图片就可以保存在本地中,这样就可以很方便的随时随地查看,我们还可以分享给朋友,那...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK