Python PyMuPDF 提取PDF文件中的图片到指定目录保存,PDF将每一页都保存为图片
代码
PyMuPDF的版本不同,似乎方法也不同,所以建议指定一个版本。
安装:
pip install PyMuPDF==1.21.1
代码:
import os
import fitz# 提取每一页的图片对象单独保存
def muExtractImages(pdf_name, pic_save_path):doc = fitz.open(pdf_name)for itm,page in enumerate(doc):try:tupleImage = page.get_images()for xref0 in tupleImage: # 取第一个元组xref = xref0[0] # 最终取得xref okimg = doc.extract_image(xref) # 获取文件扩展名,图片内容 等信息imageFilename = os.path.join(pic_save_path, str(itm) + '_' + str(xref) + '.' + img['ext'])imgout = open(imageFilename, 'wb') # byte方式新建图片imgout.write(img["image"]) # 当前提取的图片写入磁盘imgout.close()except:continuedoc.close()# 将每一页作为图片,保存到某个目录
def pdf_image(pdf_name, pic_save_path):img_paths = []doc = fitz.open(pdf_name)for i, pg in enumerate(doc.pages()):page = pg # 获得每一页的对象trans = fitz.Matrix(3.0, 3.0)pm = page.get_pixmap(matrix=trans, alpha=False) # 获得每一页的流对象img_path = str(i + 1) + '.jpg'img_path = os.path.join(pic_save_path, img_path)pm.save(img_path)img_paths.append(img_path)doc.close()return img_pathsif __name__ == '__main__':file_path = r'F:\BaiduNetdiskDownload\语文-状元笔记\语文-状元笔记\1.pdf' # pdf_name 文件路径dir_path = r'F:\BaiduNetdiskDownload\语文-状元笔记\语文-状元笔记\1' # 存放图片的文件夹muExtractImages(file_path, dir_path)
PyMuPDF介绍
PyMuPDF是一个用于操作PDF文件的Python库。它是基于MuPDF库的Python绑定,提供了一组高级功能,可以用于读取,修改和写入PDF文件。
主要特性:
支持多种PDF版本,包括PDF 1.7(Acrobat 8.0)
支持读取加密和签名的PDF文件
支持修改PDF文件的内容,包括文本,图像,链接和表单
支持创建新的PDF文件或合并现有的PDF文件
支持渲染PDF页面为图像,包括多种格式(如PNG,JPEG,TIFF)
支持对PDF文件进行搜索和提取文本
Python PyMuPDF 提取PDF文件中的图片到指定目录保存,PDF将每一页都保存为图片相关推荐
- Python工具源码,Python批量提取PPT文件中的图片
在办公场景当中,同样也有这样一个需求,那就是快速批量把PPT文件中的图片提取出来,毕竟一个个点击另存为太过于繁琐,以及耗费时间,前面本渣渣分享过如何应用Python批量提取PDF文件中的图片,而这一篇 ...
- python 知乎 合并 pdf_实例4:用Python提取不同PDF文件中的页面合并进新的PDF文件...
公司船务部一个重要任务就是需要准备每单货物的发票,从系统导出发票时是默认存为一个PDF文档,在打印的时候,有多少个文件,就需要点多少次"打印".如果能够将当天的发票PDF档合并在一 ...
- Python批量提取PowerPoint文件中所有幻灯片标题和备注文本
小知识: 在制作PowerPoint演示文档时,可以在幻灯片下面添加备注,在双屏播放PPT并设置了演讲者视图时可以给讲者提供一些提示信息,防止忘词,也可以提示下一页幻灯片的内容是什么使得讲者能够完美过 ...
- Python批量提取Excel文件中的图片
推荐图书: <Python程序设计(第3版)>,(ISBN:978-7-302-55083-9),董付国,清华大学出版社,2020年6月第1次印刷,2021年7月第9次印刷,山东省一流本科 ...
- Python批量提取Excel文件中文本框组件里的文本
开学第一课:拜托,一定不要这样问Python问题 中国大学MOOC"Python程序设计基础"免费学习地址 2020年秋季学期Python教材推荐与选用参考 推荐图书: <P ...
- 使用Python,提取视频文件中的音频
■前言 一些好的视频,我们只需要其中的声音就够了. (抖音上的一首,五十音图的儿歌) ■Step1 安装Python Python 语言 Hello world_sun0322的博客-CSDN博客 ■ ...
- 利用python中pdfplumber库提取PDF文件中文字
pdfplumber库中提供了一个extract_text()方法来帮助我们提取PDF文件中的文字.我们只需要使用pdfplumber中的open()方法打开我们希望提取文字的PDF文件,然后对所需提 ...
- python抓取表格数据_Python如何实现从PDF文件中爬取表格数据(代码示例)
本篇文章给大家带来的内容是关于Python如何实现从PDF文件中爬取表格数据(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 本文将展示一个稍微不一样点的爬虫. 以往我们的 ...
- Python批量设置pptx文件中文本框边框与填充样式(含20分钟视频讲解)
近期会议: 10月30-11月1日 全国高校Python课程高级研修班(苏州) 推荐图书: <Python程序设计(第3版)>,(ISBN:978-7-302-55083-9),董付国,清 ...
- 【Latex】用Acrobat剪切pdf文件中图
目录 1.动机 2.方法 3.补充 4.参考 1.动机 因为写开题等报告所需,需要将一些论文中的图裁剪出来使用,为了可以保证图的高清和不失真,开始查找相关方法 发现可以通过使用Acrobat直接剪切p ...
最新文章
- react发送Ajax中文问号,如何从Javascript/React发送AJAX请求并在pythonrestapi中接收数据...
- 基础总结(04)-- display:none;visibility:hidden;区别
- windows系统作为客户端时,linux中本地yum源挂载时,如何同时挂载DVD1和DVD2?
- Javascript的继承
- SSO单点登录之同域登录的实现
- 24模块-push【管理推送消息功能】
- python好玩的代码-我珍藏的一些好的Python代码,技巧
- 微信小程序——云开发入门
- 神武手游哪个服务器人最多,神武4端游什么老区人最多
- CSPS Oct目标
- 计算机c类地址是什么,ip地址中属于c类地址的是什么
- 【C++Python】C++调用Python(二):Python脚本调用
- excel绁炵粡缃戠粶瀹炵幇,excel 绁炵粡缃戠粶
- Fiddler抓包工具详细介绍
- win10更改IP地址遇错(出现了一个意外情况,不能完成你的更改)
- int、long和long long的范围
- 如何解决Kerberos问题: Server has invalid Kerberos principal: hdfs/host2@****.COM
- 模型评估过程中,有哪些主要的验证方法?
- CSS3+HTML5+JavaScript:个人相册网站实现
- wince支持多线程编程吗_WinCE 多线程下绣花机运动控制的实现