如何在数千个 PDF 文件中抓取表格?

Posted

技术标签:

【中文标题】如何在数千个 PDF 文件中抓取表格?【英文标题】:How to scrape tables in thousands of PDF files? 【发布时间】:2014-09-27 07:26:56 【问题描述】:

我有大约 1'500 个 PDF,每个 PDF 仅包含 1 页,并且具有相同的结构(例如,请参阅 http://files.newsnetz.ch/extern/interactive/downloads/BAG_15m_kzh_2012_de.pdf)。

我正在寻找一种方法来迭代所有这些文件(如果可能,在本地)并提取表的实际内容(作为 CSV,存储到 SQLite DB 中,等等)。

我很想在 Node.js 中执行此操作,但找不到任何合适的库来解析此类内容。你知道吗?

如果在 Node.js 中不可能,如果有更好的方法可用,我也可以用 Python 编写代码。

【问题讨论】:

【参考方案1】:

我以前不知道这个,但是less 具有阅读 pdf 文件的神奇能力。我能够使用此脚本从您的示例 pdf 中提取表格数据:

import subprocess
import re

output = subprocess.check_output(["less","BAG_15m_kzh_2012_de.pdf"])

re_data_prefix = re.compile("^[0-9]+[.].*$")
re_data_fields = re.compile("(([^ ]+[ ]?)+)")
for line in output.splitlines():
    if re_data_prefix.match(line):
        print [l[0].strip() for l in re_data_fields.findall(line)]

【讨论】:

我写了一些我最终想出的解决方案:timogrossenbacher.ch/2014/11/…

以上是关于如何在数千个 PDF 文件中抓取表格?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用nodejs从数千个具有不同html结构(因此可能不使用html标签)的网站中抓取数据?

如何利用Python抓取PDF中的某些内容

如何将PDF转Excel表格?俩种方法三秒搞定

如何提取pdf中的数据将pdf转换成excel

excel表格文件如何转为pdf

如何在电脑中将Excel表格格式转换成PDF格式?