3

我希望能够阅读办公文档的内容(用于自定义爬虫)。

需要阅读的office版本是2000年到2007年,主要是爬words,excel和powerpoint文档。

我不想检索格式,只检索其中的文本。

爬虫基于 lucene.NET,如果这可以提供一些帮助并且在 c# 中。

我已经使用 iTextSharp 解析 PDF

4

5 回答 5

3

如果您已经在使用 Lucene.NET,您可能只想利用已经可用的各种 IFilter 来执行此操作。看看开源的SeekAFile项目。它将向您展示如何使用 IFilter 从任何可用 IFilter 的文件类型中打开和提取此信息。有适用于 Word、Excel、Powerpoint、PDf 和大多数其他常见文档类型的 IFilter。

于 2008-09-22T15:59:31.590 回答
1

有一个优秀的开源项目POI,唯一的缺点 - 它是为 Java 编写的。.net 端口在某种程度上是测试版。

于 2008-09-22T15:31:28.427 回答
1

是将 Word 文档转换为纯文本的各种工具的一个很好的列表,您可以使用这些工具进行任何操作。

于 2008-09-22T15:44:26.277 回答
0

这是Krishnan LN在 c-charpcorner 上的一篇不错的小帖子,它提供了使用 Word Primary Interop 程序集从 Word 文档中获取文本的基本代码。

基本上,您从 Word 文档中获取“WholeStory”属性,将其粘贴到剪贴板,然后将其从剪贴板中拉出,同时将其转换为文本格式。剪贴板步骤大概是为了去除格式。

对于 PowerPoint,您执行类似的操作,但您需要循环播放幻灯片,然后为每个幻灯片循环播放形状,并获取每个形状中的“TextFrame.TextRange.Text”属性。

对于 Excel,由于 Excel 可以是 OleDb 数据源,因此使用 ADO.NET 是最简单的。这是Laurent Bugnion 的一篇很好的文章,介绍了这种技术。

于 2008-09-22T15:39:17.160 回答
0

您也可以考虑查看 DtSearch (www.DtSearch.com)。虽然它主要是一个搜索工具,但它在从大量文件类型中提取文本方面做得很好,并且比其他选项(如 Oracle/Stellent OutsideIn 技术或 Autonomy 的同等技术)便宜得多。

我多年来一直在使用 DtSearch,并且发现它对于此类任务是必不可少的。

于 2009-06-25T16:43:15.310 回答