从 PDF 文档中提取数据

Extract data from PDF document

我有一个 PDF 文档。

它包含表格格式的数据。我想使用逗号作为列分隔符将数据提取到逗号分隔的文本文件中。

有什么建议吗?

标准 PDF 不提供有关它们在页面上绘制内容的语义的任何提示:语法提供的唯一区别是矢量元素(线条、填充)之间的区别,...), 图片和文字。

无论任何字符是 table 的一部分或一行的一部分,还是空白区域内的一个孤独的单个字符,都不容易通过解析 PDF 源代码以编程方式识别。

关于为什么 PDF 文件格式不应该被认为是 suitable 的背景,用于托管 extractable、结构化数据,见这篇文章:

Why Updating Dollars for Docs Was So Difficult (ProPublica-Website)

说了这么多现在让我补充一下:

Tabula 写在 Ruby。


更新

这是一个 ASCiinema 截屏视频(您也可以 download 并借助 asciinema 命令行工具), 主演 tabula-extractor: