常用pdf解析提取工具的分析和示例

目前,大量的文档采用pdf格式。相比word文档,pdf由于缺乏结构化支持,提取相对困难。

这里示例常用的pdf文档解析工具,比如pypdf、pdfplumber。

所用代码参考和修改自网络资料。

1 pypdf

1.1 pypdf说明

pypdf/pypdf2支持pdf的合并、拆分、旋转、加密、添加水印、提取文本。

缺点是文本提取能力有限,对复杂结构支持不好,不具备页面布局、表格识别等高级功能

1.2 提取示例

示例代码如下所示,每次解析一页,部分换行不能精确识别。

复制代码
from pypdf import PdfReader
reader = PdfReader(pdf_path)
text = ""
i = 0
for page in reader.pages:
    curr_text = page.extract_text()
    text += curr_text
    print(i, "=>", curr_text)
    i += 1

2 pdfplumber

支持表格提取的pdf提取工具,精确提取 结构化数据,尤其适用于表格、发票、报告等。

2.1 工具安装

安装命令如下所示

!pip install pdfplumber

2.2 提取示例

以下是使用pdfpluber提取文件的示例,支持按页提取表格内容,相比pypdf操控更精确。

复制代码
import pdfplumber
with pdfplumber.open(pdf_path) as pdf:
    page = pdf.pages[0]
    text = page.extract_text()
    table = page.extract_table()
    print("page=>")
    print("text=>", text)
    print("table=>", table)

reference


PDF工具集:PyPDF / PyPDF2、PDFMiner.six、PyMuPDF(fitz) 和 pdfplumber(v2+)

https://juejin.cn/post/7503490370367832079

大模型RAG应用开发之PDF解析工具对比

https://www.cnblogs.com/deeplearningmachine/p/18383664

网友认可的PDF开源解析工具

https://blog.csdn.net/liliang199/article/details/150986528

相关推荐
有趣灵魂13 小时前
Java-Spingboot根据HTML模板和动态数据生成PDF文件
java·pdf·html
mfxcyh13 小时前
使用html2canvas和jsPDF导出pdf文件、把pdf文件传给后端
pdf
ComPDFKit15 小时前
从爱泼斯坦案文件泄露,看“涂黑≠删除”的 PDF 脱敏陷阱
pdf·脱敏·pdf redaction·标记密文·涂黑
今夕资源网16 小时前
PDF与图片在线处理工具纯HTML网页源码 PDF 多功能魔方
pdf·pdf在线处理
codingFunTime16 小时前
vue3 snapdom 导出图片和pdf
前端·javascript·pdf
runepic16 小时前
Vue3 + Element Plus 实现PDF附件上传下载
前端·pdf·vue
沙漠豪1 天前
提取PDF发票信息的Python脚本
开发语言·python·pdf
非凡ghost1 天前
CoolUtils PDF Combine(PDF合并工具)
windows·学习·pdf·软件需求
小离a_a1 天前
富文本内容展示A4纸张大小的内容,生成一个pdf的格式预览,预览内容上加两张图片,图片可拖拽,可下载到本地pdf
pdf