python 读取pdf图片_三种方法,Python轻松提取PDF中全部图片

本文介绍了使用Python的fitz(pymupdf子模块)和pdf2image库来提取PDF文件中的图片。通过正则匹配和大小过滤,实现了高效提取。还展示了pdf2image库的两种方法,包括从路径和字节流转换图片,适用于不同场景。文章最后提到了转换速度优化的thread_count参数。
摘要由CSDN通过智能技术生成

今天就跟大家系统分享几种Python提取 PDF 图片的方法。其实没有非常完美的方法,每种方法提取效率都不是百分之百,因此可以考虑用多种方法进行互补,主要将涉及:

基于

fitz 库和正则搜索提取图片

基于

pdf2image 库的两种方法提取图片

基于 fitz 库和正则搜索

fitz 是 pymupdf 的子模块,需要先用命令行安装 pymupdf:

pip install pymupdf

但注意导入时使用 import fitz 导入模块!

下面的代码就利用 fitz 库提取图片需要通过正则匹配图片元素,将模板元素转化为像素后再以图片形式写出

import fitz

import re

import os

file_path = r'C:\xxx\xxx.pdf' # PDF 文件路径

dir_path = r'C:\xxx' # 存放图片的文件夹

def pdf2image1(path, pic_path):

checkIM = r"/Subtype(?= */Image)"

pdf = fitz.open(path)

lenXREF = pdf._getXrefLength()

count = 1

for i in range(1, lenXREF):

text = pdf._getXrefString(i)

isImage = re.search(checkIM, text)

if not isImage:

continue

pi

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值