Python办公自动化:提取pdf文件中的图片

简介: Python办公自动化:提取pdf文件中的图片

本期文章,我们用python实现对pdf文件中图片的复制,比如在wps中,这个功能是要收费的,如下图:

要会员,两年198元,呵呵呵。但在python中不存在,哈哈哈。我们来提取一下下面一个pdf中的图片。

共11张图片,直接上代码:


import osfrom io import BytesIOfrom PIL import Imageimport PyPDF2
def extract_images_from_pdf(pdf_path, image_dir):    if not os.path.exists(image_dir):        os.makedirs(image_dir)
    with open(pdf_path, 'rb') as pdf_file:        pdf_reader = PyPDF2.PdfFileReader(pdf_file)
        for page_num in range(pdf_reader.numPages):            page = pdf_reader.getPage(page_num)            try:                xObject = page['/Resources']['/XObject'].getObject()                                for obj in xObject:                    if xObject[obj]['/Subtype'] == '/Image':                        img_data = xObject[obj]._data                        img = Image.open(BytesIO(img_data))                        img.save(os.path.join(image_dir, f'{obj[1:]}.png'))                                    except Exception as e:                pass
if __name__ == '__main__':    pdf_path =r'C:\Users\XXXX\Python_project\python提取pdf中图片\input.pdf'    image_dir = r'C:\Users\XXXX\Python_project\python提取pdf中图片\images'    extract_images_from_pdf(pdf_path, image_dir)

跑一遍,看看文件夹里有没有? ,如下图:

507686eaaca89777170cf67184497428.png

done

目录
打赏
0
1
0
1
18
分享
相关文章
|
13天前
|
使用Python实现multipart/form-data文件接收的http服务器
至此,使用Python实现一个可以接收 'multipart/form-data' 文件的HTTP服务器的步骤就讲解完毕了。希望通过我的讲解,你可以更好地理解其中的逻辑,另外,你也可以尝试在实际项目中运用这方面的知识。
111 69
无需配置开箱即用!MoLing:基于MCP开发的自动化办公服务,一键搞定文件与网页操作
MoLing是一款基于Go语言开发的跨平台办公自动化工具,通过操作系统API和浏览器自动化框架实现文件操作、命令执行及网页控制,无需额外依赖即可运行。
65 1
无需配置开箱即用!MoLing:基于MCP开发的自动化办公服务,一键搞定文件与网页操作
【工具教程】批量PDF和图片OCR识别指定区域文字自动改图片名字,多个区域一次性批量识别改名批量重命名
本内容介绍了一款用于企业档案、医院病历及办公文件管理的图片和PDF文字识别工具。通过框选识别区域,软件可批量提取关键信息,实现文件重命名或导出为表格,极大提升管理效率。支持图片与PDF两种模式,操作简单,适用于合同、病历、报告等场景。提供详细步骤指导,包含区域设置、文件导入、批量处理及结果校验等功能。
74 8
1.6K star!这个开源文本提取神器,5分钟搞定PDF/图片/Office文档!
Kreuzberg 是一个基于 Python 的文本提取库,支持从 PDF、图像、Office 文档等 20+ 格式中提取文本内容。采用 MIT 开源协议,具备本地处理、异步架构、智能 OCR 等特性,特别适合需要隐私保护的文档处理场景。
探秘文件共享服务之哈希表助力 Python 算法实现
在数字化时代,文件共享服务不可或缺。哈希表(散列表)通过键值对存储数据,利用哈希函数将键映射到特定位置,极大提升文件上传、下载和搜索效率。例如,在大型文件共享平台中,文件名等信息作为键,物理地址作为值存入哈希表,用户检索时快速定位文件,减少遍历时间。此外,哈希表还用于文件一致性校验,确保传输文件未被篡改。以Python代码示例展示基于哈希表的文件索引实现,模拟文件共享服务的文件索引构建与检索功能。哈希表及其分布式变体如一致性哈希算法,保障文件均匀分布和负载均衡,持续优化文件共享服务性能。
Python 高级编程与实战:构建自动化测试框架
本文深入探讨了Python中的自动化测试框架,包括unittest、pytest和nose2,并通过实战项目帮助读者掌握这些技术。文中详细介绍了各框架的基本用法和示例代码,助力开发者快速验证代码正确性,减少手动测试工作量。学习资源推荐包括Python官方文档及Real Python等网站。
Python自动化Office文档处理全攻略
本文介绍如何使用Python自动化处理Word、Excel和PDF文档,提升办公效率。通过安装`python-docx`、`openpyxl`、`pandas`、`PyPDF2`和`pdfplumber`等库,可以轻松实现读取、修改、创建和批量处理这些文档。具体包括:自动化处理Word文档(如读取、修改内容、调整样式),Excel文档(如读取、清洗、汇总数据),以及PDF文档(如提取文本和表格数据)。结合代码示例和实战案例,帮助你掌握高效办公技巧,减少手动操作的错误率。
98 1
对双栏 | 单双栏混合 | 图表文字混合的复杂布局的图片OCR识别(对布局复杂的整个pdf进行OCR识别)
这个故事告诉我们要多尝试不同的库和引擎,尤其是需求比较偏门或者少见的时候。同一个方向不同的库所擅长的领域是不一样的。 博客不应该只有代码和解决方案,重点应该在于给出解决方案的同时分享思维模式,只有思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
Python3给图片添加水印
Python3给图片添加水印
127 1

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等