0


0

nutch regex-normalize.xmlの構成

JavaベースのNutch Web検索ソフトウェアを使用しています。 検索クエリ結果に重複した(URL)結果が返されるのを防ぐために、削除しようとしています(a.k.a. Nutchクローラーを実行してイントラネットのインデックスを作成するときに、インデックスが作成されるURLの「jsessionid」の表現を正規化します。 ただし、$ NUTCH_HOME / conf / regex-normalize.xmlへの変更(クロールを実行する前)は効果がないようです。

  1. regex-normalize.xml構成がどのようになっていることを確認できますか クロールに従事している? and,

  2. どの正規表現が式を正常に削除/正規化するか クロール/インデックス作成中のURLからの「jsessionid」の

以下は、現在のregex-normalize.xmlの内容です。

 (.*);jsessionid=(.*)$
 $1


 (.*);jsessionid=(.*)(\&|\&)
 $1$3


 ;jsessionid=(.*)

以下は、(テスト) 'クロール’を実行するために発行しているコマンドです。

bin/nutch crawl urls -dir /tmp/test/crawl_test -depth 3 -topN 500

1 Answer


3


どのバージョンのNutchを使用していますか? 私はNutchに詳しくはありませんが、Nutch 1.0のデフォルトのダウンロードには、この問題を処理していると思われる_regex-normalize.xml_のルールがすでに含まれています。

  ([;_]?((?i)l|j|bv_)?((?i)sid|phpsessid|sessionid)=.*?)(\?|&|#|$)
  $4

Btw. _regex-urlfilter.txt_にも関連するものが含まれているようです

# skip URLs containing certain characters as probable queries, etc.
-[?*[email protected]=]

次に、_nutch-default.xml_にいくつかの設定がありますので、チェックアウトすることをお勧めします

urlnormalizer.order
urlnormalizer.regex.file
plugin.includes

それがすべて役に立たない場合は、http://wiki.apache.org/nutch/FAQ#How_can_I_force_fetcher_to_use_custom_nutch-config.3F [フェッチャーにカスタムnutch-configを使用させるにはどうすればよいですか?]