首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
操作PDF介绍
打开与保存PDF文档
读取文档与文档尺寸
读取页面和保存页面
合并文档
修改PDF
旋转页面
缩放页面
裁剪页面
提取文本
提取图片
添加水印
查看元数据
更新元数据
加密文档
解密文档
Word转PDF
Excel转PDF
PPT转PDF
PDF转Word
当前位置:
首页>>
技术小册>>
Python与办公-玩转PDF
小册名称:Python与办公-玩转PDF
很遗憾,pypdf2库主要是用来处理PDF文档页面的,对于文档内容它却基本上不涉及,所以也没有提供提取图片的相关方法,想要提取图片,又只能另辟蹊径了。 巧了,上一小节使用到的pymupdf库就有提取图片的功能,那么还是用它来处理吧,如果想学习更多的库,可以尝试找一下还有哪些库也可以提取PDF文件的图片,自己动手尝试,实现提取图片的需求。 使用pymupdf提取一个PDF文档的全部图片的参考代码如下: ```bash import os import fitz pdf = fitz.open("./pdf_ files/练习文档.pdf") save_path = "./pdf_images" for index,page in enumerate(pdf.pages()): print(f"正确提取第{index}页") for image in page.get_images(): xref = image[0] pix = fitz.Pixmap(pdf,xref) if not os.path.exists(save_path): os.mkdir(save_path) path = os.path.join(save_path,f"page{index}_{xref}.png") pix.save(path) ``` 提取图片的过程也很清晰,首先打开一个PDF文档,遍历它的所有页面,页面对象有一个get_images()方法可以获取到所有图片的信息,返回的是一个元组套元组,即一个元组代表一张图片的信息。 图片信息里最主要的是图片的xref,其实xref就是一个数字,表示图片的编号,我们可以根据文档对象和xref调用f i tz.Pixmap()获取到一个Pixmap对象,即一张图片,最后调用Pixmap对象的save()方法把它保存到指定路径即可。Pixmap的save()方法的第一个参数是路径,第二个参数是图片格式,支持的格式有png(默认)、pnm、tga、psd、ps等,不过我们一般采用默认的png格式就行了。
上一篇:
提取文本
下一篇:
添加水印
该分类下的相关小册推荐:
Python爬虫入门与实战开发(下)
Python高并发编程与实战
Python合辑9-判断和循环
Python3网络爬虫开发实战(上)
Python甚础Django与爬虫
Python合辑7-集合、列表与元组
实战Python网络爬虫
Python爬虫入门与实战开发(上)
Python合辑13-面向对象编程案例(上)
Python合辑14-面向对象编程案例(下)
Python神经网络入门与实践
Python合辑11-闭包函数