テキストを解析し、テキストに応じて新しいフィールドを作成する 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 プラグインのディレクトリ構造をコピーし、いくつかの変更を加えました。
plugin.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>
build.xml:
<?xml version="1.0" encoding="UTF-8"?>
<project name="myPlugin" default="jar">
<import file="../build-plugin.xml"/>
</project>
他のコードは、言及されたリンクと同じです。