camelot

camelot

专业的PDF表格数据提取Python库

Camelot是一个开源的PDF表格提取Python库,提供高度可配置的设置以精确控制提取过程。它支持将提取的表格直接转换为pandas DataFrame,并可输出为CSV、JSON、Excel等多种格式。Camelot还提供了提取质量评估指标,有助于筛选高质量结果。这个工具适用于需要从PDF文档中提取结构化数据的数据分析师和开发者。

PDF表格提取Python库Camelot数据分析开源项目Github
<p align="center"> <img src="https://yellow-cdn.veclightyear.com/835a84d5/db700ecd-7460-4528-8b3d-75552f1fb7b5.png" width="200"> </p>

Camelot:为人类设计的PDF表格提取工具

测试 文档状态 codecov.io image image image Gitter聊天 image

Camelot是一个可以帮助您从PDF中提取表格的Python库!

**注意:**您还可以查看Excalibur,这是Camelot的Web界面!


**以下是如何从PDF中提取表格的方法。**您可以在这里查看本例中使用的PDF。

<pre> >>> import camelot >>> tables = camelot.read_pdf('foo.pdf') >>> tables &lt;TableList n=1&gt; >>> tables.export('foo.csv', f='csv', compress=True) # json, excel, html, markdown, sqlite >>> tables[0] &lt;Table shape=(7, 7)&gt; >>> tables[0].parsing_report { 'accuracy': 99.02, 'whitespace': 12.24, 'order': 1, 'page': 1 } >>> tables[0].to_csv('foo.csv') # to_json, to_excel, to_html, to_markdown, to_sqlite >>> tables[0].df # 获取pandas DataFrame! </pre>
循环名称KI (1/km)距离 (英里)燃料节省百分比
改善速度减少加速消除停车减少空转
2012_23.301.35.9%9.5%29.2%17.4%
2145_10.6811.22.4%0.1%9.5%2.7%
4234_10.5958.78.5%1.3%8.5%3.3%
2032_20.1757.821.7%0.3%2.7%1.2%
4171_10.07173.958.1%1.6%2.1%0.5%

Camelot还附带了一个命令行界面

**注意:**Camelot仅适用于基于文本的PDF,不适用于扫描文档。(正如Tabula解释的那样,"如果您可以在PDF查看器中点击并拖动选择表格中的文本,那么您的PDF是基于文本的"。)

您可以在这里查看一些常见问题。

为什么选择Camelot?

  • 可配置性:Camelot通过可调节的设置让您可以控制表格提取过程。
  • 指标:您可以根据准确性和空白等指标丢弃不良表格,而无需手动查看每个表格。
  • 输出:每个表格都被提取到一个pandas DataFrame中,可以无缝集成到ETL和数据分析工作流程中。您还可以将表格导出为多种格式,包括CSV、JSON、Excel、HTML、Markdown和Sqlite。

查看与类似库和工具的比较

支持开发

如果Camelot对您有所帮助,请考虑在OpenCollective上进行一次性或每月捐赠来支持其开发。

安装

使用conda

安装Camelot的最简单方法是使用conda,这是Anaconda发行版的包管理器和环境管理系统。

<pre> $ conda install -c conda-forge camelot-py </pre>

使用pip

安装依赖项tkghostscript)后,您也可以直接使用pip安装Camelot:

<pre> $ pip install "camelot-py[base]" </pre>

从源代码

安装依赖项后,使用以下命令克隆仓库:

<pre> $ git clone https://www.github.com/camelot-dev/camelot </pre>

然后使用pip安装Camelot:

<pre> $ cd camelot $ pip install ".[base]" </pre>

文档

文档可在http://camelot-py.readthedocs.io/查看。

封装器

贡献

贡献者指南中有关于贡献问题、文档、代码和测试的详细信息。

版本控制

Camelot使用语义版本控制。有关可用版本,请参阅此仓库的标签。有关更新日志,您可以查看HISTORY.md

许可证

本项目采用MIT许可证,详情请参阅LICENSE文件。

编辑推荐精选

小云雀

小云雀

字节旗下AI内容创作Agent

小云雀是字节跳动旗下剪映团队推出的AI内容创作Agent,主打”一句话打造一个爆款”的零门槛创作体验。用户只需输入一句指令,可自动生成15-60秒短视频、数字人口播视频、风格化海报等内容,支持200+可商用数字人形象和19种语言及方言。小云雀核心功能包括智能成片、AI设计、照片会说话、爆款复刻等,已接入豆包大模型、DeepSeek Chat及自研Seedance 2.0视频生成模型、Seedream 5.0图像生成模型。目前支持安卓APP和网页版,每日登录可领取120积分。适合自媒体创作者、电商营销人员、教育工作者及普通用户使用,近期因用户量激增,视频生成排队时长可达8小时。

豆包

豆包

字节跳动旗下 AI 智能助手

字节跳动旗下 AI 智能助手

Pixmax

Pixmax

一站式AI短剧创作平台

Pixmax专注打造下一代“ AI 视觉创作引擎”,整合行业顶尖 AI 大模型、工工业级精准控制及企业级协同管理功能,是全方位的 AI 内容创作平台。

GPT Plus|Pro充值

GPT Plus|Pro充值

GPT充值

支持 ChatGPT Plus / Pro 充值服务,支付便捷,自动发货,售后可查。

GPT Image 2中文站

GPT Image 2中文站

AI 图片生成平台

GPT Image 2 是面向用户的 AI 图片生成平台,支持文生图、图生图及多模型创意工作流。

Vecbase

Vecbase

你的AI Agent团队

Vecbase 是专为 AI 团队打造的智能工作空间,将数据管理、模型协作与知识沉淀整合于一处。算法、产品与业务在同一平台无缝协同,让从数据到 AI 应用的落地更快一步。

音述AI

音述AI

全球首个AI音乐社区

音述AI是全球首个AI音乐社区,致力让每个人都能用音乐表达自我。音述AI提供零门槛AI创作工具,独创GETI法则帮助用户精准定义音乐风格,AI润色功能支持自动优化作品质感。音述AI支持交流讨论、二次创作与价值变现。针对中文用户的语言习惯与文化背景进行专门优化,支持国风融合、C-pop等本土音乐标签,让技术更好地承载人文表达。

QoderWork

QoderWork

阿里Qoder团队推出的桌面端AI智能体

QoderWork 是阿里推出的本地优先桌面 AI 智能体,适配 macOS14+/Windows10+,以自然语言交互实现文件管理、数据分析、AI 视觉生成、浏览器自动化等办公任务,自主拆解执行复杂工作流,数据本地运行零上传,技能市场可无限扩展,是高效的 Agentic 生产力办公助手。

lynote.ai

lynote.ai

一站式搞定所有学习需求

不再被海量信息淹没,开始真正理解知识。Lynote 可摘要 YouTube 视频、PDF、文章等内容。即时创建笔记,检测 AI 内容并下载资料,将您的学习效率提升 10 倍。

AniShort

AniShort

为AI短剧协作而生

专为AI短剧协作而生的AniShort正式发布,深度重构AI短剧全流程生产模式,整合创意策划、制作执行、实时协作、在线审片、资产复用等全链路功能,独创无限画布、双轨并行工业化工作流与Ani智能体助手,集成多款主流AI大模型,破解素材零散、版本混乱、沟通低效等行业痛点,助力3人团队效率提升800%,打造标准化、可追溯的AI短剧量产体系,是AI短剧团队协同创作、提升制作效率的核心工具。

下拉加载更多