用Python3.8提取PDF中的图片(附BUG修复讲解)

本文介绍了如何使用Python3.8提取PDF中的图片,针对原代码中的过时部分进行了BUG修复,包括time.clock()替换为time.process_time(),_getXrefLength()替换为xref_length(),getObjectString()替换为xref_object()。适用于Python3.8.8环境,需要在Anaconda Prompt中以管理员权限安装最新版pymupdf。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.背景介绍

之前参考了另一个博主关于用python提取PDF图片的贴子:Python提取PDF中的图片_Jayce~的博客-优快云博客_python提取pdf中的图片

把代码复制下来跑了一遍,但是没有成功。后来发现是Python、pymupdf模块版本更新的缘故,导致原有一些语句已经过时不再适用,所以修复了原有代码的一些BUG,写了这篇贴子供有需要的人参考。

2.代码

直接上代码,经过调试可用:

import fitz, time, re, os

def pdf2pic(path, pic_path):
    '''
    # 从pdf中提取图片
    :param path: pdf的路径
    :param pic_path: 图片保存的路径
    :return:
    '''
    t0 = time.process_time()  #原先的time.clock()已经不适用,要改成time.process_time()
    # 使用正则表达式来查找图片
    checkXO = r"/Type(?= */XObject)" 
    checkIM = r"/Subtype(?= */Image)" 

    # 打开pdf
    doc = fitz.open(path)
    # 图片计数
    imgcount = 0
   
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值