印度小哥“神剑”:PDF提取表格so easy!
作者 | 若名
出品 | AI科技大本营
如果经常跟数据表格打交道,那你应该体验过那种令人烦躁到抓狂的心情。但现在,学会下面将要介绍的一款工具的使用方法,相信我,它会让你在工作中简直不能更舒爽。
Excalibur,从古希腊语翻译过来就是“神剑”,它现在也是一种用于从 PDF 中提取表格数据的 Web 界面,使用 Python 3 编写,由 Camelot(Python 库) 提供支持,可以让任何人轻松地从 PDF 文件中提取表格数据。需要注意的是,Excalibur 仅适用于基于文本的 PDF 文件,扫描文件不在此列。
Camelot 和 Excalibur 的作者和维护者是来自新德里 Bharati Vidyapeeth 工程学院的 Vinayak Mehta,目前他正全职做这些项目。
Excalibur 的四大特性
可移植文件格式
PDF 文件定义了将字符放置在相对于页面左下角的 x,y 坐标的指令。通过将某些字符放在比其他字符更近的地方来模拟单词。空格是通过将单词放在相对较远的地方来模拟的。最后,通过放置在电子表格中显示的字词来模拟表格,格式没有表格结构的内部表示。
自动检测 PDF 中的表格数据
可移植文件格式不是为表格数据设计的。可悲的是,许多开放数据共享时都是 PDF 文件,但对其中的表格进行分析却是一件非常痛苦的事。简单的复制粘贴行不通,Excalibur 通过自动检测 PDF 中的表格并让你通过 Web 界面将它们保存为 CSV 和 Excel 文件,这使 PDF 表格提取变得非常简单。
可动态调整表格提取规则
虽然有很多广泛用于 PDF 表格提取的开源和闭源工具,但他们输出的表格良莠不齐。Excalibur 由 Camelot 提供支持,为用户提供附加设置以调整表格提取并获得最佳效果。相较而言,它的性能要好于其他开源工具和库。
数据完全可控且安全
你可以完全控制数据,因为所有文件存储和处理都在你自己的本地或远程计算机上进行。Excalibur 还可以配置 MySQL 和 Celery 系统,以并行和分布式方式执行表格提取任务。默认情况下,任务按顺序执行。
快速上手指南
下载和安装
https://github.com/camelot-dev/excalibur/releases
https://excalibur-py.readthedocs.io/en/master/user/install.html#install
设置开发环境
你可以使用 pip 轻松安装开发依赖项:
$ pip install excalibur-py [dev]
测试(很快)
安装后,你可以使用以下命令运行测试:
$ python setup.py test
使用“神剑”
安装后,可以使用以下命令初始化元数据的数据库:
$ excalibur initdb
然后使用以下命令启动 Web 服务器:
$ excalibur webserver
现在,你可以转到 http:// localhost:5000 并开始从 PDF 文件中提取表格数据。
上传 PDF
你可以使用 Web 界面上传 PDF 文件,还可以与之前的上传进行整合。
自动检测表格
Excalibur 可以自动检测 PDF 中的表格。
绘制表格区域或者放置分隔符
如果表格深埋在文本内部并且自动检测失败,则可以通过绘制表格区域和列分隔符进行操作。
加载已保存的规则设置
你也可以保存 PDF 文件中表格提取的规则设置,并将其应用于新的 PDF 文件以提取具有类似结构的表格。
查看和下载数据
最后,你可以查看提取的表格并将其下载为 CSV 或 Excel 文件。Excalibur 还支持 JSON 和 HTML 格式。
最后给出源代码链接,你可以通过以下方式查看最新源代码:
$ git clone https://www.github.com/camelot-dev/excalibur
(*本文为AI科技大本营原创文章,转载请联系作者)
公开课预告
◆
推荐系统
◆
在当今人工智能浪潮之下,个性化推荐技术更是风靡业界,在金融、传媒、短视频、电商、教育等诸多领域大放异彩,影响人们生活的方方面面。不仅方便了人们获取各种各样的信息,还给企业带来了收益的大幅提升。本次分享带你揭开个性化推荐的神秘面纱,从推荐算法到大型系统架构进行全面剖析。
推荐阅读
何恺明等最新突破:视频识别快慢结合,取得人体动作AVA数据集最佳水平
20k~65k, 2018年最后一波热门技术岗位, 立刻投简历, 跳槽才是加薪的捷径
ofo 遭千万人退押金
更新微信 7.0,你后悔了吗?
程序员求助:被领导强行要求写Bug该怎么办?网友的回答让我笑翻
用Python分析了1982场英雄联盟数据,开局前预测游戏对局胜负!
凭什么老程序员被裁,应届生却能月薪 1.3 万?
印度小哥“神剑”:PDF提取表格so easy!相关推荐
- 讨厌手写,印度小哥开源了一个手写体转换工具,支持中文
[导语]:Text-to-Handwriting 是一个在线的开源工具,可以将文字输入转为手写体,并提供图片下载. 简介 Text-to-Handwriting 的开发者是个印度小哥,他讨厌手写作业, ...
- 在《我的世界》里搭建神经网络,运行过程清晰可见,这位印度小哥开发的新玩法火了...
点击上方"AI遇见机器学习",选择"星标"公众号 重磅干货,第一时间送达 晓查 凌晨 发自 凹非寺 量子位 报道 | 公众号 QbitAI 可能是疫情吧,大家 ...
- python富翁与陌生人编程_GitHub近10万星:印度小哥用Python和Java实现所有AI算法
原标题:GitHub近10万星:印度小哥用Python和Java实现所有AI算法 又到了招聘季.疫情将我们圈在家里这么长时间,以至于都宅废了! AI的算法你还记得多少?他们都是如何用Python和Ja ...
- 屏幕尺寸计算器_计算器能联网?还能聊天?南都科创对话这位印度小哥
一台带有OLED显示屏.能连WiFi和用来聊天的"升级版"卡西欧计算器在国外火了.南都科创记者近日对话了这位改装计算器的印度技术达人Srinivasan. 事情是这样的: 最近,一 ...
- 用camelot读取表格_如何使用Camelot从PDF提取表格
用camelot读取表格 数据科学 (DATA SCIENCE) 安装 (Installation) If you are on Windows make sure to install Ghosts ...
- 这位印度小哥,拯救了山河日下的微软帝国
IT行业的历史上,微软公司绝对是一个传奇. 上个世纪,在个人电脑的操作系统领域,微软用Windows操作系统打败了苹果和IBM:在浏览器领域,微软用IE浏览器打败了网景:在办公软件领域,微软用offi ...
- 怎么提取pdf中的表格数据_如何从pdf第1部分中提取表格数据
怎么提取pdf中的表格数据 In this article, we talk about the challenges and principles of extracting tabular dat ...
- 10行Python代码批量实现pdf转txt,word,提取表格到excel
在日常工作中,常常要把文档转格式,比如常见pdf转word,pdf转ppt等,如果数量少的话还好,可以直接去网上找网站解决,多了的话就比较麻烦了,因为很多网站都是限制一天只能转几个,再多就得冲vip. ...
- 再见PDF提取收费!我用100行Python代码搞定!
点上方"菜鸟学Python",选择"星标" 第471篇原创干货,第一时间送达 大家在日常的工作和学习过程中,都少不了与PDF文件打交道,很多的小伙伴都面临着将P ...
最新文章
- Matplotlib绘制简单函数的梯度下降法
- 每周学算法/读英文/知识点心得分享 2.25 - 3.1
- Machine Learning week 4 quiz: programming assignment-Multi-class Classification and Neural Networks
- linux openfire mysql_Openfire 服务器在Linux上的安装
- Lidar SLAM | 地面三维激光雷达测试报告
- Codeforces Round #674 (Div. 3) F. Number of Subsequences 简单计数dp
- 参考框架 系统 基准_带有基准的前端框架的实际比较
- 绝对布局优势_前瞻布局+尖端科技+雄厚资金 恒大解锁造车的“正确姿势”
- Win11任务栏一直转圈圈的解决方法
- 满二叉树及完全二叉树的相关性质证明
- 【BZOJ3489】A simple rmq problem kd-tree
- pyecharts制作交互式数据展示地图
- keras学习率下降策略
- PowerBuilder反编译,PowerBuilder 反编译
- 小白都懂的Python爬虫之网易云音乐下载
- win10家庭中文版安装win7虚拟机
- 关于wps删除不了多余的空白页
- 目标追踪(一)环境搭建
- 百度分词ai php,百度分词技术
- manjaro 安装 tim 后无法输入中文
热门文章
- mysql 5.5半同步复制功能部署
- HLG 1481 Attack of the Giant n-pus【二分+二分图完全匹配】
- 功能演示:戴尔PowerConnect 8024交换机VLAN的创建与删除
- 黄聪:穿过主机访问虚拟机中的SQL服务 FOR VMware NAT
- php 请求方式,PHP发起HTTP请求有哪几种方式?
- github 视觉测量_教你如何提高双目立体视觉系统的精度
- tar命令-压缩,解压缩文件
- [BZOJ3329] Xorequ
- java学习之匿名内部类与包装类
- [leetcode]_Integer to Roman