-1

我正在为 nutch 编写一个插件,它解析文本并根据文本创建一个新字段。为此,我正在编写的插件实现了 IndexingFilter。我正在按照此处的教程进行操作(类似于 nutch wiki 中的教程)。我完全按照提到的那样进行操作,并且能够成功构建插件。但是我没有看到正在添加的新索引。好吧,我是初学者,所以我不确定我是否在寻找正确的地方。

我使用命令进行了正常爬行

bin/nutch crawl urls -dir crawl -depth 3 -topN 5

然后我使用命令检查了 crawldb 和分段

bin/nutch readdb crawl/crawldb/ -dump crawlContent
bin/nutch readseg -dump crawl/segments/* segmentAllContent

我没有看到这里添加的新字段。我做对了吗?或者有什么我需要运行的命令。提前致谢。

代码:

我复制了 urlmeta 插件的目录结构并进行了一些更改。

插件.xml:

<?xml version="1.0" encoding="UTF-8"?>
   <plugin id="myPlugin" name="Add Field to Index"
      version="1.0.0" provider-name="your name">

    <runtime>
       <library name="myPlugin.jar">
     <export name="*"/>
       </library>
    </runtime>

    <extension id="org.apache.nutch.indexer.myPlugin"
       name="Add Field to Index"
       point="org.apache.nutch.indexer.IndexingFilter">
      <implementation id="myPlugin"
        class="org.apache.nutch.indexer.AddField"/>
    </extension>
  </plugin>

构建.xml:

<?xml version="1.0" encoding="UTF-8"?>
  <project name="myPlugin" default="jar">
     <import file="../build-plugin.xml"/>
  </project>

其他代码与提到的链接相同。

4

1 回答 1

2

检查 nutch-default.xml 中 plugin.includes 的值是否包含 myPlugin,如下所示:

myPlugin|protocol-http|urlfilter-regex|parse-(text|html|js)|index-basic|query-(basic|site|url)|summary-basic|scoring-opic|urlnormalizer-(pass|regex|basic )

PS:如果您有解决方案,您可以并且应该回答您自己的问题,只需在此之后添加一些评论。

于 2013-12-03T15:20:11.543 回答