当前位置: 首页 > news >正文

Python读取PDF:文本、图片与文档属性

在日常的数据采集、文档归档与信息挖掘过程中,PDF格式因其版式固定、内容稳定而被广泛使用。Python 开发者若希望实现 PDF 内容的自动化提取,选择一个易用且功能完善的库至关重要。本文将介绍如何用Python实现 PDF文本读取图片提取 以及 文档属性读取 三大核心操作,适用于信息抽取、电子档案处理等场景。

文章目录

    • Python读取PDF文本
    • Python读取PDF图片
    • Python读取PDF文档属性
    • 总结

本文使用免费的 Free Spire.PDF for Python,pip安装:pip install spire.pdf.free


Python读取PDF文本

在PDF中提取可识别的文字内容,是信息处理的基础需求。Spire.PDF 提供了 PdfTextExtractor 类,可逐页提取文本,并通过参数控制提取方式。

操作说明:

  1. 创建 PdfDocument 实例并加载PDF;
  2. 遍历每一页,构建 PdfTextExtractor
  3. 设置提取选项,如是否简化布局;
  4. 累加获取到的文本内容。

代码示例:

from spire.pdf import PdfDocument, PdfTextExtractor, PdfTextExtractOptions# 创建 PdfDocument 实例并加载文档
pdf = PdfDocument()
pdf.LoadFromFile("sample.pdf")all_text = ""
# 遍历所有页面
for pageIndex in range(pdf.Pages.Count):page = pdf.Pages.get_Item(pageIndex)# 创建文本提取器text_extractor = PdfTextExtractor(page)# 设置提取选项options = PdfTextExtractOptions()options.IsExtractAllText = Trueoptions.IsSimpleExtraction = True# 提取文本并累加all_text += text_extractor.ExtractText(options)# 输出全部文本内容
print(all_text)

PDF文档
Python读取PDF示例PDF文档

读取的PDF文本
Python读取PDF文本


Python读取PDF图片

PDF中的图片可能包含插图、图标、水印等重要信息。Spire.PDF 提供了 PdfImageHelper 工具类,可提取页面中嵌入的图像并保存为文件。

操作说明:

  1. 加载PDF文档并获取页面;
  2. 使用 PdfImageHelper.GetImagesInfo() 获取图片信息;
  3. 遍历并保存提取的图片对象。

代码示例:

from spire.pdf import PdfDocument, PdfImageHelper# 加载PDF文件
pdf = PdfDocument()
pdf.LoadFromFile("sample.pdf")# 获取第一页
page = pdf.Pages.get_Item(0)# 创建图片助手
image_helper = PdfImageHelper()
# 获取页面中的图片信息
images_info = image_helper.GetImagesInfo(page)# 保存图片为本地文件
for i in range(len(images_info)):images_info[i].Image.Save("output/Images/image" + str(i) + ".png")

读取的PDF图片:
Python读取PDF图片


Python读取PDF文档属性

除了内容本身,PDF还可能包含元数据(如标题、作者、关键词等),便于进行文档分类与检索。Spire.PDF 支持直接读取这些信息。

操作说明:

  1. 加载PDF文件;
  2. 通过 DocumentInformation 属性访问文档元数据;
  3. 打印或记录相关属性值。

代码示例:

from spire.pdf import PdfDocument# 加载PDF文件
pdf = PdfDocument()
pdf.LoadFromFile("sample.pdf")# 获取文档属性信息
properties = pdf.DocumentInformation
print("标题: " + properties.Title)
print("作者: " + properties.Author)
print("主题: " + properties.Subject)
print("关键词: " + properties.Keywords)

读取的PDF文档属性
Python读取PDF文档属性


总结

使用 Free Spire.PDF for Python,可以轻松完成以下三类典型的 PDF 信息提取操作:

  • 读取PDF文本:逐页提取文字内容,适用于全文分析、搜索系统等;
  • 读取PDF图片:提取嵌入图像用于归档、识别或后续处理;
  • 读取PDF文档属性:访问标题、作者、关键词等元信息,辅助分类索引。

以上功能均可在本地环境中快速部署,适合构建轻量级 PDF 处理工具或集成至业务系统中。


更多教程请参考:Spire.PDF for Python 教程中心

http://www.lqws.cn/news/176725.html

相关文章:

  • 《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析 (一)
  • Tika Server:企业级文档内容解析的轻量级服务化方案
  • CppCon 2015 学习:How to Make Your Data Structures Wait-Free for Reads
  • 【iOS安全】iPhone X iOS 16.7.11 (20H360) WinRa1n 越狱教程
  • 主流 AI IDE 之一的 Cursor 介绍
  • 2506,字节对齐
  • 【配置 YOLOX 用于按目录分类的图片数据集】
  • 96. 2017年蓝桥杯省赛 - Excel地址(困难)- 进制转换
  • transformer和 RNN以及他的几个变体区别 改进
  • cnn卷积神经变体
  • 豆包和deepseek 元宝 百度ai区别是什么
  • 大语言模型提示词(LLM Prompt)工程系统性学习指南:从理论基础到实战应用的完整体系
  • 大数据学习(132)-HIve数据分析
  • 【LLMs篇】14:扩散语言模型的理论优势与局限性
  • 海康工业相机文档大小写错误
  • vite配置@别名,以及如何让IDE智能提示路经
  • 亚矩阵云手机实测体验:稳定流畅背后的技术逻辑​
  • RabbitMQ入门4.1.0版本(基于java、SpringBoot操作)
  • Visual Studio 中的 MD、MTD、MDD、MT 选项详解
  • Neo4j 集群管理:原理、技术与最佳实践深度解析
  • MVC与MVP设计模式对比详解
  • ABP VNext 与 Neo4j:构建基于图数据库的高效关系查询
  • Spring Cloud 2025.0.0 Gateway迁移全过程详解
  • 【行驶证识别成表格】批量OCR行驶证识别与Excel自动化处理系统,行驶证扫描件和照片图片识别后保存为Excel表格,基于QT和华为ocr识别的实现教程
  • 在web-view 加载的本地及远程HTML中调用uniapp的API及网页和vue页面是如何通讯的?
  • 20250606-C#知识:List排序
  • LangChain【6】之输出解析器:结构化LLM响应的关键工具
  • Vue3 卡片绑定滚动条 随着滚动条展开效果 GSAP动画库 ScrollTrigger滚动条插件
  • 【数据结构】B树
  • 【Survival Analysis】【机器学习】【3】 SHAP可解釋 AI