Python利用fitz库提取pdf中的图片

 更新时间:2023年05月31日 09:35:56   作者:空空star  
Fitz库是一个Python图像处理库,主要用于打开、编辑和保存PDF、TIFF和JPEG格式的图像,它可以帮助用户读取和写入PDF文件,提取PDF页面以及在页面上进行标记和注释,本文主要介绍了如何通过Python的fitz库提取pdf中的图片,需要的朋友可以参考下

一、fitz库是什么?

Fitz库是一个Python图像处理库,主要用于打开、编辑和保存PDF、TIFF和JPEG格式的图像。它可以帮助用户读取和写入PDF文件,提取PDF页面以及在页面上进行标记和注释。此外,Fitz库还提供了一些图像处理功能,如旋转、裁剪、缩放、调整亮度、对比度和色彩平衡等。这些功能使得Fitz库成为一个非常实用的图像处理工具。

二、安装fitz库

pip install fitz

    三、查看fitz库版本

    pip show fitz

    Name: fitz
    Version: 0.0.1.dev2
    Summary: Fitz: Workflow Mangement for neuroimaging data.
    Home-page: http://github.com/kastman/fitz
    Author: Erik Kastman
    Author-email: erik.kastman@gmail.com
    License: BSD (3-clause)
    Requires: configobj, configparser, httplib2, nibabel, nipype, numpy, pandas, pyxnat, scipy
    Required-by:

    四、pymupdf库是什么?

    使用fitz,需要安装pymupdf库。

     PyMuPDF 是一个基于 Python 的开源 PDF 处理库,提供了一系列的 PDF 文档处理功能,如读取、编辑、创建、转换等。它是 MuPDF 的 Python 绑定,MuPDF 是一款轻量级的开源 PDF 文档渲染引擎,支持多种平台和多种文件格式。
    PyMuPDF 具有快速、高效、简单易用等特点,可以用于 PDF 文档的自动化处理和批量处理,比如提取文本、提取图片、添加或修改书签、添加或修改注释、合并 PDF 文件、切割 PDF 文件、提取 PDF 页面等。同时,它还支持 PDF 渲染成图片,方便快速预览和生成缩略图。
    总之,PyMuPDF 是一个非常实用的 Python PDF 处理库,适用于多种场景,如数据处理、文档处理、自动化办公等。

    五、安装pymupdf库

    pip install pymupdf

    六、查看pymupdf库版本

    pip show pymupdf

    Name: PyMuPDF
    Version: 1.22.3
    Summary: Python bindings for the PDF toolkit and renderer MuPDF
    Home-page: https://github.com/pymupdf/PyMuPDF
    Author: Artifex
    Author-email: support@artifex.com
    License: GNU AFFERO GPL 3.0
    Requires:
    Required-by:

    七、fitz和pymupdf是什么关系?

    fitz 是 Pymupdf 库的一个模块,它是 Pymupdf 的主要模块之一,也是最常用的模块。fitz 模块提供了对 PDF 文档的基本操作,如打开、读取、编辑、保存等。

    八、提取pdf中的图片

    1.引入库

    import fitz

    2.定义pdf路径

    local = '/Users/kkstar/Downloads/'

    3.打开PDF文件

    pdf_doc = fitz.open(local+'demo_pic.pdf')

    4.遍历所有页面

    for pg in range(pdf_doc.page_count):
        page = pdf_doc[pg]

    5.获取页面上所有图像

    image_list = page.get_images()

    6.遍历所有图像

    for img in image_list:

    7.获取图像的XREF编号和图像数据      

    xref = img[0]
    pix = fitz.Pixmap(pdf_doc, xref)

    8.如果图像是RGB颜色空间,则保存为PNG文件     

    if str(fitz.csRGB) == str(pix.colorspace):
    img_path = local + f'image{pg+1}_{xref}.png'
    pix.save(img_path)

    总结

    pdf

    提取图片效果

    以上就是Python利用fitz库提取pdf中的图片的详细内容,更多关于Python fitz库提取pdf中图片的资料请关注脚本之家其它相关文章!

    相关文章

    • Python淘宝秒杀的脚本实现

      Python淘宝秒杀的脚本实现

      这篇文章主要介绍了Python淘宝秒杀的脚本实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
      2023-01-01
    • selenium XPath定位的实现示例

      selenium XPath定位的实现示例

      XPath是一种在XML文档中定位和选择节点的语言,通过路径表达式遍历XML树,支持节点选取、字符串匹配、数值计算、逻辑运算等功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
      2024-10-10
    • Django 请求Request的具体使用方法

      Django 请求Request的具体使用方法

      这篇文章主要介绍了Django 请求Request的具体使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
      2019-11-11
    • Pycharm更换python解释器的方法

      Pycharm更换python解释器的方法

      今天小编就为大家分享一篇Pycharm更换python解释器的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
      2018-10-10
    • python如何删除字符串最后一个字符

      python如何删除字符串最后一个字符

      这篇文章主要介绍了python如何删除字符串最后一个字符,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
      2022-05-05
    • Django认证系统实现的web页面实现代码

      Django认证系统实现的web页面实现代码

      这篇文章主要介绍了Django认证系统实现的web页面实现过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
      2019-08-08
    • 关于python pyqt5安装失败问题的解决方法

      关于python pyqt5安装失败问题的解决方法

      这篇文章主要给大家介绍了关于python pyqt5安装失败问题的解决方法,文中给出了详细的解决过程与解决方法,对同样遇到这个问题的朋友们具有一定的参考学习价值,需要的朋友们跟着小编来一起学习学习吧。
      2017-08-08
    • Java实现的执行python脚本工具类示例【使用jython.jar】

      Java实现的执行python脚本工具类示例【使用jython.jar】

      这篇文章主要介绍了Java实现的执行python脚本工具类,结合实例形式分析了java使用jython.jar执行Python脚本的具体操作技巧,需要的朋友可以参考下
      2018-03-03
    • PyCharm无法调用numpy(报错ModuleNotFoundError:No module named 'numpy')

      PyCharm无法调用numpy(报错ModuleNotFoundError:No module named &a

      本文主要介绍了PyCharm无法调用numpy(报错ModuleNotFoundError:No module named 'numpy'),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
      2023-02-02
    • 基于梯度爆炸的解决方法:clip gradient

      基于梯度爆炸的解决方法:clip gradient

      今天小编就为大家分享一篇基于梯度爆炸的解决方法:clip gradient,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
      2020-02-02

    最新评论