如何使用nutch和索引特定标记解析html到solr?

如何使用nutch和索引特定标记解析html到solr?,solr,nutch,apache-tika,Solr,Nutch,Apache Tika,我已经安装了nutch和solr用于抓取网站并在其中搜索;正如你所知道的,我们可以用nutch的parse meta tags插件将网页的meta tags索引到solr中(http://wiki.apache.org/nutch/IndexMetatags)现在我想知道是否有任何方法可以将另一个非meta(插件或其他)的html标记爬网到solr,如下所示: <div id=something> me specific tag </div> me特定标签

我已经安装了nutch和solr用于抓取网站并在其中搜索;正如你所知道的,我们可以用nutch的parse meta tags插件将网页的meta tags索引到solr中(http://wiki.apache.org/nutch/IndexMetatags)现在我想知道是否有任何方法可以将另一个非meta(插件或其他)的html标记爬网到solr,如下所示:

<div id=something>
      me specific tag
</div>

me特定标签
实际上,我想在solr(某物)中添加一个字段,该字段在本页中的值为“me-specific-tag”


有什么想法吗?

您可能需要检查哪些应该允许您从网页中提取元素。

我为您想要的类似内容制作了自己的插件。 将NutchDocument映射到SolrDocument的配置文件位于$NUTCH_HOME/conf/solrindex mapping.xml中。在这里,您可以添加自己的标签。但你还是得在某个地方填上自己的标签

以下是一些插件的提示:

  • 阅读,在这里你可以找到如何使你的插件非常简单
  • 在插件中扩展解析过滤器和索引过滤器。
  • 在ParseFilter中,您可以使用NodeWalker查找特定的div
  • 您解析的信息会像这样放入页面元数据中

    page.puttomeadata(新的Utf8(“您的键”),ByteBuffer.wrap(YourByteArrayParsedFromMetaData))

  • 在YourIndexingFilter中,将元数据从页面(page.getMetadata)添加到NutchDocument

    doc.add(“您的特定标签”,值)

  • 最重要的

  • 您的\u特定\u标签放入以下文件:

    • Solr配置文件schema.xml(并重新启动Solr)
    field name=“您的特定标签”type=“string”stored=“true”index=“true”

    • Nutch配置文件schema.xml(不知道是否真的需要)
    • Nutch配置文件solrindex-mapping.xml
    field dest=“您的特定标签”source=“您的特定标签”

你只要试一下
教程中提到了img标记如何获取以及所有步骤是什么…

您可以使用其中一个自定义插件基于xpath(或css选择器)解析xml文件:


我也这样做了,但不知何故,一些元数据在过程中丢失了。我在IndexingFilter中查找它,getMetadata().get(“my_标记”)返回null