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

在日常的数据采集、文档归档与信息挖掘过程中,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. 累加获取到的文本内容。

代码示例:

python 复制代码
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 = True
    options.IsSimpleExtraction = True
    # 提取文本并累加
    all_text += text_extractor.ExtractText(options)

# 输出全部文本内容
print(all_text)

PDF文档 :

读取的PDF文本 :


Python读取PDF图片

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

操作说明:

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

代码示例:

python 复制代码
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文档属性

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

操作说明:

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

代码示例:

python 复制代码
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文档属性 :


总结

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

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

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


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

相关推荐
迪飞特科技几秒前
大模型接入业务系统:API、本地部署、RAG、智能体四种路线怎么选
java·数据库·人工智能·知识图谱·deepseek·本地化大模型
星轨zb4 分钟前
[专题5]支付发放物品的一致性保障:事务、幂等与状态流转
数据库·后端·mongodb·支付架构学习
海姐软件测试7 分钟前
Python 自动化与 AI 结合:基于 Jenkins 的回归验证实践
人工智能·python·自动化
保密资质顾问说10 分钟前
保密培训三大误区纠正:从形式主义到持续合规
数据库
泡海椒13 分钟前
JQuick-SQL GROUP BY 聚合:COUNT、SUM、AVG、MIN 与 MAX
数据库·sql
Haoyunyi14 分钟前
2026年做期货量化,和三年前已经不是一回事了
大数据·人工智能·python·金融·区块链
小冯不疯19 分钟前
销售订单同步实战:从聚水潭到金蝶云星空的线上出库单落地
大数据·数据库
qq_4017004130 分钟前
Qt 实时大数据量存储:自己动手实现 TDMS 读写
数据库·qt
再__努力1点32 分钟前
一个开源的AI边缘计算平台:一个项目把算能、瑞芯微、x86的NPU全打通了
人工智能·python·课程设计·媒体·流媒体
小oo呆39 分钟前
【学习心得】Python函数参数中的两个特殊分隔符
开发语言·python