我通过自己下载和解析html页面构建了一个WEB TREC集合。每个 TREC 文件都包含一个类别字段。如何使用 Lucene 构建索引以便在该集合中执行搜索?这个想法是这个搜索,而不是返回文档作为结果,它可以返回类别。
谢谢!
我通过自己下载和解析html页面构建了一个WEB TREC集合。每个 TREC 文件都包含一个类别字段。如何使用 Lucene 构建索引以便在该集合中执行搜索?这个想法是这个搜索,而不是返回文档作为结果,它可以返回类别。
谢谢!
这应该是一个相对简单的任务,因为它们是 HTML 格式的。因此,您可以在 Lucene 中对它们进行索引(基于 Java 的伪代码)
foreach(file in htmlfiles)
{
Document d = new Document();
d.add(new Field("Category", GetCategoryName(...), Field.Store.YES, Field.Index.NOT_ANALYZED));
d.add(new Field("Contents", GetContents(...), Field.Store.YES, Field.Index.ANALYZED));
writer.addDocument(d);
writer.close();
}
GetCategoryName = 应该返回类别字符串和 GetContents(...) 相应 HTML 文件的内容。从标签中解析出 HTML 内容是个好主意,有几种方法可以做到这一点。HtmlParser是其中之一。
当您搜索时,搜索内容字段并遍历您的搜索结果以收集您的类别。
如果您想获得附有计数(“方面”)的类别列表,请查看分面搜索。Solr 是使用 Lucene 构建的搜索服务器,开箱即用。