【问题标题】:Using Apache Lucene to parse large PDF files使用 Apache Lucene 解析大型 PDF 文件
【发布时间】:2011-12-31 01:05:30
【问题描述】:

我正在尝试找出搜索/解析一组大型 pdf 文件的最佳方法。我目前正在使用 PDFBox 将我的 PDF 文件转换为文本文件。然后我使用 Lucene 来索引这些文本文件并搜索信息。使用这种方法我面临一些问题。 (请注意,我在非常基本的层面上使用这两种技术只是为了看看它们能做什么)。

考虑我的 PDF 文件中的以下行,它给出了所有列的总计。每列包含一对值,其总计显示如下。

    Grand Total  $3,148.06 $484.80 $13.07 $8.90 $0.00 $69.90 $0.00 $0.00
                 $10.00    $5.15   $25.60 $0.00 $2.69 $0.00  $0.00 $0.00 $3,768.17

当我使用 PDFBox 中的 TextStripper 将我的 pdf 文件转换为文本文件时,pdf 文件中的上述行将转换为文本文件中的以下文本。

    58.20$3,148.06 $484.80 $13.07 $0.00 $0.00 $0.00Grand Total $8.90 $69.90$10.00 $5.15 $25.60 $0.00 $2.69 $0.00 $0.00 $0.00 $3,768.17

从上面的文本文件可以看出,数据分散在 Grand Total 标签周围。因此,由于 PDF 文件的缩进没有保存在文本文件中,因此难以检索总计信息。

因此,我想知道是否有办法将 PDF 文件转换为文本文件,以便文本文件保持 PDF 文件的缩进/格式。我还想知道 Lucene 是实现我的目标的好主意,还是有一种更简单、更快捷的方法可以从一组大型 PDF 文件中检索信息?

【问题讨论】:

    标签: parsing pdf lucene pdfbox


    【解决方案1】:

    你可以试试Tika。 (通常当人们从 PDF 中提取数据到 Lucene 中时,他们会使用 Tika。)

    有没有更简单的方法? Solr 有 strong integration 和 Tika,这应该可以很容易地索引 PDF 文档。 (Solr 是 Lucene 的包装器。)

    【讨论】:

    • 我的要求是能够在 PDF 文件中搜索标签(在我的情况下为总计)并能够检索标签的相应值。据我了解,我将能够使用 Tika、Solr 等轻松搜索我感兴趣的标签,并识别包含该标签的文档。但是,是否可以使用这种方法轻松检索与标签对应的实际值(在我的情况下为总计值)?
    • @bot:您当然可以从与您的查询匹配的每个文档中获取一个字段。相关问题是:Tika 能否正确解析我的 PDF?我认为唯一的答案是:试试看。
    猜你喜欢
    • 1970-01-01
    • 2013-03-22
    • 1970-01-01
    • 2015-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多