13

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

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

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

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

4

1 回答 1

20

我以前不知道这一点,但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)]
于 2014-08-04T18:49:42.583 回答