使用Apache Lucene解析大型PDF文件

时间:2011-11-17 05:33:16

标签: parsing pdf lucene pdfbox

我试图找出搜索/解析一组大型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文件中检索信息?

1 个答案:

答案 0 :(得分:0)

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

有更简单的方法吗? Solr与Tika有strong integration,这使得索引PDF文档变得非常容易。 (Solr是Lucene的包装。)