camelot pdf提取表格实践(记录)

参考:
巧用Python的camelot库批量提取PDF发票信息
关于文本pdf的表格抽取

AttributeError: module 'camelot' has no attribute 'read_pdf'及类似问题解决办法
camelot 参数
https://blog.csdn.net/INTSIG/article/details/123000010

报错解决:

ModuleNotFoundError: No module named 'Workbook' xlwt,是版本太低,升级版本即可。 pip install --upgrade xlwt

介绍:

camelot方法有两种解析模式:流解析(stream)、格子解析(lattice),其中格子解析能够保留表格完整的样式,对于复杂表格来说要优于流解析模式。同时,camelot方法默认格子解析(lattice),而采用这种解析方式,需要安装ghostscript。

camelot是一个可以从可编辑的pdf文档中抽取表格的开源框架,与pdfplumber相比,其功能完备性差了点,除了表格抽取之外,并不能用它从pdf文档中解析出字符、单词、文本、线等较为低层次的对象。

下载ghostscript https://www.ghostscript.com/releases/gsdnld.html

参数


代码

python 复制代码
import camelot
import pandas as pd
# 使用Camelot读取PDF文件中的表格
tables = camelot.read_pdf('pdf.pdf', pages='all', flavor='lattice')

# 将所有表格转换为 DataFrame 并合并
all_data = pd.concat([table.df for table in tables], ignore_index=True)

all_data.to_excel('all_data.xlsx',index=False)

识别效果:不太理想,文本排序有问题。pdfplumber提取表格效果会更好,但是也有少部分数据可能错行

相关推荐
不甘懦弱22 分钟前
阿里云搭建flask服务器
服务器·python·flask
赵英英俊35 分钟前
Python day51
人工智能·pytorch·python
律品41 分钟前
pytest的前置与后置
开发语言·python·pytest
飞翔的佩奇44 分钟前
【完整源码+数据集+部署教程】遥感森林砍伐检测系统源码和数据集:改进yolo11-SWC
python·yolo·计算机视觉·数据集·yolo11·遥感森林砍伐检测
阿汤哥的程序之路1 小时前
Python如何将两个列表转化为一个字典
python
RabbitYao1 小时前
Android 项目 通过 AndroidStringsTool 更新多语言词条
android·python
RabbitYao2 小时前
使用 Gemini 及 Python 更新 Android 多语言 Excel 文件
android·python
天天进步20152 小时前
Python机器学习入门:用scikit-learn构建你的第一个预测模型
python·机器学习·scikit-learn
程序员岳焱2 小时前
使用 JPype 实现 Java 与 Python 的深度交互
java·后端·python
站大爷IP2 小时前
Python处理JSON数据的最佳实践:从基础到进阶的实用指南
python