点击上方 "程序员小乐"关注公众号, 星标或置顶一起成长
每天早上8点20分, 第一时间与你相约
每日英文
Sometimes, tears is sign of unspoken happiness. And smile is sign of silent pain.
有时候,眼泪,是一种无法言说的幸福;微笑,是一种没有说出口的伤痛。
每日掏心话
原来世界上真的没有什么是永远。一段友情,离开了就淡了。一段爱情,分离了就散了。珍惜现在所拥有的,也许下一秒,就不再属于你的,以前,我错了, 只在乎我在乎的人。现在,我懂了,从今以后我只在乎在乎我的人。
来自:机器之心 | 作者:vinayak mehta| 责编:乐乐
程序员小乐(ID:study_tech)第 654 次推文 图片来自网络
往日回顾:程序员因接外包坐牢 456 天!两万字长文揭露心酸真实经历
00 前言
从 PDF 表格中获取数据是一项痛苦的工作。不久前,一位开发者提供了一个名为 Camelot 的工具,使用三行代码就能从 PDF 文件中提取表格数据。
项目地址:https://github.com/camelot-dev/camelot
>>> import camelot
>>> tables = camelot.read_pdf('foo.pdf') #类似于Pandas打开CSV文件的形式
>>> tables[0].df # get a pandas DataFrame!
>>> tables.export('foo.csv', f='csv', compress=True) # json, excel, html, sqlite,可指定输出格式
>>> tables[0].to_csv('foo.csv') # to_json, to_excel, to_html, to_sqlite, 导出数据为文件
>>> tables
>>> tables[0]
# 获得输出的格式
>>> tables[0].parsing_report
{
'accuracy': 99.02,
'whitespace': 12.24,
'order': 1,
'page': 1
}
以下为输出的结果,对于合并的单元格,Camelot 在抽取后做了空行处理,这是一个稳妥的方法。
安装方法
项目作者提供了三种安装方法。
首先,你可以使用 Conda 进行安装,这是最简单的。
conda install -c conda-forge camelot-py
最流行的安装方法是使用 pip 安装。
pip install camelot-py[cv]
还可以从项目中克隆代码,并使用源码安装。
欢迎在留言区留下你的观点,一起讨论提高。如果今天的文章让你有新的启发,学习能力的提升上有新的认识,欢迎转发分享给更多人。
欢迎各位读者加入程序员小乐技术群,在公众号后台回复“加群”或者“学习”即可。
猜你还想看
Java Web 开发必须掌握的三个技术:Token、Cookie、Session!
注意,系统架构的 3 个误区,看这篇就对了!
Java内存管理,看这篇就对了!
嘿,你在看吗?
你可能感兴趣的:(Python新工具:用三行代码提取PDF表格数据)