前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >骚操作,用三行Python代码提取PDF表格数据

骚操作,用三行Python代码提取PDF表格数据

作者头像
猴哥yuri
发布于 2019-11-06 14:52:40
发布于 2019-11-06 14:52:40
1.3K00
代码可运行
举报
文章被收录于专栏:极客猴极客猴
运行总次数:0
代码可运行

作者:Vinayak Mehta

从 PDF 表格中获取数据是一项痛苦的工作。不久前,一位开发者提供了一个名为 Camelot 的工具,使用三行代码就能从 PDF 文件中提取表格数据。

PDF 文件是一种非常常用的文件格式,通常用于正式的电子版文件。它能够很好的将不同的排版格式固定下来,形成版面清晰且美观的展示效果。然而,对于想要从 PDF 中提取信息的人们来说,PDF 是个噩梦,尤其是表格。

大量的学术报告、论文、分析文章都使用 PDF 展示其中的表格数据,但是对于如果想要直接从表格中复制数据则会非常麻烦。不久前,有一位开发者提供了一个可从文字 PDF 中提取表格信息的工具——Camelot,能够直接将大部分表格转换为 Pandas 的 Dataframe。

  • 项目地址:https://github.com/camelot-dev/camelot

Camelot 是什么

据项目介绍称,Camelot 是一个 Python 工具,用于将 PDF 文件中的表格数据提取出来。

具体而言,用户可以像使用 Pandas 那样打开 PDF 文件,然后利用这个工具提取表格数据,最后再指定输出的形式(如 csv 文件)。

代码示例

项目提供的 PDF 文件如图所示,假设用户需要提取这些文字之间的表格 2-1 中的信息。

PDF 文件。我们需要提取表格 2-1。

使用 Camelot 提取表格数据的代码如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
>>> 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
<TableList n=1>
>>> tables[0]
<Table shape=(7, 7)> # 获得输出的格式
>>> tables[0].parsing_report
{
    'accuracy': 99.02,
    'whitespace': 12.24,
    'order': 1,
    'page': 1
}

以下为输出的结果,对于合并的单元格,Camelot 在抽取后做了空行处理,这是一个稳妥的方法。

安装方法

项目作者提供了三种安装方法。首先,你可以使用 Conda 进行安装,这是最简单的。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
conda install -c conda-forge camelot-py

最流行的安装方法是使用 pip 安装。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
pip install camelot-py[cv]

还可以从项目中克隆代码,并使用源码安装。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
git clone https://www.github.com/camelot-dev/camelot
cd camelot
pip install ".[cv]"
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-11-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 极客猴 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Python新工具:用三行代码提取PDF表格数据
PDF 文件是一种非常常用的文件格式,通常用于正式的电子版文件。它能够很好的将不同的排版格式固定下来,形成版面清晰且美观的展示效果。然而,对于想要从 PDF 中提取信息的人们来说,PDF 是个噩梦,尤其是表格。
Python数据科学
2019/10/10
1.1K0
Python新工具:用三行代码提取PDF表格数据
Python新工具:用三行代码提取PDF表格数据
PDF 文件是一种非常常用的文件格式,通常用于正式的电子版文件。它能够很好的将不同的排版格式固定下来,形成版面清晰且美观的展示效果。然而,对于想要从 PDF 中提取信息的人们来说,PDF 是个噩梦,尤其是表格。
昱良
2019/10/13
8790
python库Camelot从pdf抽取表格数据
首先,让我们看一个简单的例子:eg.pdf,整个文件只有一页,这一页中只有一个表格,如下:
周小董
2019/08/18
8.1K0
python日常技巧(2)将pdf文件中的表格转化成csv文件
从 PDF 表格中提取表格数据时比较困难的。不久前,一位开发者提供了一个名为 Camelot 的工具,满足大家从 PDF 文件中提取表格数据。
用户1359560
2019/11/21
2.4K0
[Python工具]pdf表格提取camelot安装教程
.每一个表格数据是一个panda的dataframe,从而可以很方便的集成到ETL和数据分析工作流中
小宋是呢
2019/06/27
3.3K0
AI办公自动化:用ChatGPT批量提取PDF中的表格到Excel
读取PDF文件:"F:\AI自媒体内容\AI炒股\已经阅读\20240612-海通国际-中国互联网:“人工智能+”引爆新质生产力革命.pdf"
AIGC部落
2024/09/11
4990
AI办公自动化:用ChatGPT批量提取PDF中的表格到Excel
Python骚操作,提取pdf文件中的表格数据!
在实际研究中,我们经常需要获取大量数据,而这些数据很大一部分以pdf表格的形式呈现,如公司年报、发行上市公告等。面对如此多的数据表格,采用手工复制黏贴的方式显然并不可取。那么如何才能高效提取出pdf文件中的表格数据呢?
诸葛青云
2019/03/31
7.7K0
Python骚操作,提取pdf文件中的表格数据!
三大神器助力Python提取pdf文档信息
今天这篇文章是今年最后一篇文章了,因此也是一篇非常有用的技术文章,你可以现在只了解一下并进行收藏,等你需要用到的时候再拿出来看一看,这样就好了。
啃饼思录
2019/02/26
20.8K0
3行代码将PDF中表格转成Excel文件
之前有粉丝问我,能不能帮忙写个脚本,把PDF文件中的表格转成Excel。我说现在我没那么多时间,你可以去看看《学习Python 不加班》那本书中应该是会有相应的一些案例。然后呢就没有然后了。今天有空我来写一个转换脚本,一共3行代码搞定。
马拉松程序员
2022/04/26
3.1K1
3行代码将PDF中表格转成Excel文件
10个有趣的Python高级脚本,建议收藏!
比如不久前的复旦大佬,用130行Python代码硬核搞定核酸统计,大大提升了效率,节省了不少时间。
小F
2022/05/26
1.5K0
10个有趣的Python高级脚本,建议收藏!
python实用小脚本
1、提取PDF表格 # 方法① import camelot tables = camelot.read_pdf("tables.pdf") print(tables) tables.export("extracted.csv", f="csv", compress=True) # 方法②, 需要安装Java8 import tabula tabula.read_pdf("tables.pdf", pages="all") tabula.convert_into("table.pdf", "o
不吃小白菜
2022/09/22
5890
印度小哥“神剑”:PDF提取表格so easy!
如果经常跟数据表格打交道,那你应该体验过那种令人烦躁到抓狂的心情。但现在,学会下面将要介绍的一款工具的使用方法,相信我,它会让你在工作中简直不能更舒爽。
AI科技大本营
2019/01/02
2.4K0
python提取pdf文档中的表格数据、svg格式转换为pdf
https://www.analyticsvidhya.com/blog/2020/08/how-to-extract-tabular-data-from-pdf-document-using-camelot-in-python/
用户7010445
2020/08/28
1.3K0
一日一技:从PDF完美提取表格
在之前很长一段时间,从PDF文件中提取表格都是一个老大难的问题。无论你使用的是PyPDF2还是其他什么第三方库,提取出来的表格都会变成纯文本,难以二次利用。
青南
2023/09/11
2.3K0
一日一技:从PDF完美提取表格
为了提取pdf中的表格数据,python遇到excel,各显神通!
不知大家在工作中有没有过提取pdf表格数据的经历,按照普通人的思维,提取pdf的表格数据的方法可能会选择复制粘贴,但这是一个相当繁杂且重复的工作。而今天我们会讲解如何用python和excel来提取pdf的表格数据,看二者哪个更为方便!
Python与Excel之交
2021/08/05
3.5K0
Python | GitHub 收藏夹
Week_03: 04.06 - 04.12 库名称 用途 项目主页 geemap 在 Jupyter 中嵌入交互式地图 https://github.com/giswqs/geemap ipyleaflet 在 Jupyter 中嵌入入交互式地图 https://github.com/jupyter-widgets/ipyleaflet ipympl 绘制交互式 Matplotlib 图 https://github.com/voila-gallery/ipympl voila-gridstack 基于
PyStaData
2020/07/21
1.2K0
用 Python 批量提取 PDF 的表格数据,保存为 Excel
需求:想要提取 PDF 的数据,保存到 Excel 中。虽然是可以直接利用 WPS 将 PDF 文件输出成 Excel,但这个功能是收费的,而且如果将大量 PDF转 Excel 的时候,手动去输出是非常耗时的。我们可以利用 Python 的第三方工具库 pdfplumber 快速完成这个功能。
杰哥的IT之旅
2022/05/17
2.6K0
用 Python 批量提取 PDF 的表格数据,保存为 Excel
66.如何使用Python提取PDF表格中数据
用Python提取PDF文件表格中的数据,这里我说的是,只提取PDF文件中表格中的数据,其他数据不提取。这样的需求如何实现?今天就来分享一下这个技能。首先,需要安装一个Python第三方库camelot-py。不得不说Python的第三方库真的是很强大。只有你想不到,没有它做不到的事情。在编写程序之前,你最好准备一个带有表格的PDF文件。用来测试我们编写好的程序。
TalkPython
2020/02/17
3K0
如何使用python提取pdf表格及文本,并保存到excel
pdf是一种便携式文档格式,由Adobe公司设计。因为不受平台限制,且方便保存和传输,所以pdf非常受欢迎。
派大星的数据屋
2022/04/03
3.3K0
如何使用python提取pdf表格及文本,并保存到excel
JMA台风路径数据处理:从PDF到CSV的转换指南
日本气象厅发布的台风路径与强度数据是气象研究和预报的重要依据。然而,这些数据通常以PDF格式提供,给数据处理和分析带来了挑战。本文将详细介绍如何利用Python将PDF中的台风路径数据高效转换为CSV格式,以便于进一步的气象分析和可视化。
用户11172986
2024/10/21
2640
JMA台风路径数据处理:从PDF到CSV的转换指南
相关推荐
Python新工具:用三行代码提取PDF表格数据
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验