1

我们从电子邮件中提取各种信息 - 航班、汽车租赁、酒店等。方法是提取邮件的正文,通常是 HTML 格式,但有时是文本,或者我们使用 PDF/Word/RTF 附件中的信息。然后,我们应用正则表达式(有时分几个步骤)以获取以表格形式提供的信息(您可以想到航班表、酒店表等)。请注意,即使我们解析 HTML,这也不是网络抓取。

目前我们正在使用 QL2 的 WebQL 引擎,但出于商业原因,我们正在寻求替换它。你能推荐其他引擎吗?它必须在 Linux 上运行并且可以从 Java 访问(Java API 是最好的,但 Web 服务也是很好的解决方案)。它还必须支持用于文本提取的正则表达式,而不仅仅是基于 HTML 结构。

4

4 回答 4

3

我建议你看看 R。它有大量的文本挖掘包:看看 Natural Language Processing 视图。特别是看tm包装。以下是一些相关链接:

此外,R 提供了许多用于解析 HTML 或 XML 的工具。看看这个问题以获取使用and packages的示例RCurlXML

编辑:您可以将 R 与 Java 与 JRI 集成。这是一个非常广泛使用的包,有很多例子。 您还可以查看这些相关问题

于 2009-10-01T03:45:30.023 回答
2

看一下:

  • LingPipe -LingPipe是一套用于人类语言语言分析的 Java 库。
  • Lucene - Apache Lucene 是一个完全用 Java 编写的高性能、全功能的文本搜索引擎库。
于 2009-10-01T12:30:27.303 回答
0

出于类似目的,我使用由 Flex 和 C++ 制作的自定义解析器。我建议你看看 java 中的解析器生成器(javaCC .jj 文件)javacc-faq Nutch 就是这样做的。(NutchAnalysis.jj)

于 2009-10-16T05:58:17.820 回答
0

只是想更新 - 我们的最终决定是在groovy中实现解析,并通过依赖 3rd 方库在 Java 中实现它来添加一些必需的功能(html 到文本、pdf 到文本、干净的空白等) .

于 2009-10-06T09:10:22.330 回答