トップ 新規 編集 差分 一覧 ソース プレゼンテーション 検索 ヘルプ PDF RSS ログイン

Nutch

Nutch

 Nutchとは

  • Jakarta Luceneをベースにクローラーや検索エンジンとしてインターフェースも含めたパッケージとしたもの
  • 大規模なウェブページ集合に対応する
  • 公式サイトの日本語の説明

 慶應のパソコン教室での利用

Cygwin環境のインストール

  1. NutchはもともとUnix環境で動作するような設定がされているため、疑似Unix環境であるCygwinをインストールする→Cygwin
    • 仮想マシンでUnix環境を構築してもよい

Nutchのダウンロードとインストール

  • 公式サイトからNutchの最新版(2008年1月現在0.9)をダウンロードする
    • すでに行っているので省略
  • NUTCH_HOMEの設定
    • CygwinのコマンドラインからNutchを解凍したフォルダを"export NUTCH_HOME=<解凍したフォルダ>"として登録する
    • "$NUTCH_HOME/bin/nutch"としたときにヘルプが表示されるかを確かめる

ファイルが存在しません。

 クローリング

  • クローリングを行うURLの準備
    • URLリストをurlsというディレクトリに準備する
      • エクスプローラでc:\cygwin\home\<ユーザ名>を開き、新規フォルダとしてurlsを作成する
    • URLリストのテキストファイルを作成する
      • 作成したフォルダに新規テキストを作成し、任意の名前に変更したのち、巡回したいサイトのURLを張り付ける。

  • $NUTCH_HOME/conf/crawl-urlfilter.txtのMY.DOMAIN.NAMEの部分をクロールしたいサイトに変更する
# accept hosts in MY.DOMAIN.NAME
+^http://([a-z0-9]*\.)*MY.DOMAIN.NAME/
  • $NUTCH_HOME/conf/nutch-default.xmlを$NUTCH_HOME/conf/nutch-site.xmlにコピーし、$NUTCH_HOME/conf/nutch-site.xmlのhttp.agent.nameが空の部分にUserAgent名を設定する
  • 以下のコマンドを実行する
$NUTCH_HOME/bin/nutch crawl urls -dir crawl -depth 2 -topN 30
    • nutchはコマンドラインインターフェースであり、さまざまなコマンドがあるがその中でクローリングを一括して実行するコマンドが"crawl"となっている。

 クローリングしたファイルの検索

  • Tomcatのwebappsフォルダにnutch-0.9.warをコピーする
  • しばらくするとwarファイルが展開されるので、webapps\nutch-0.9\WEB-INF\classesにあるnutch-site.xmlに設定されている検索対象ディレクトリを以下のように設定する。
<configuration>
</configuration>
↓
<configuration>
 <property>
   <name>searcher.dir</name>
   <value>@クローリングしたデータのディレクトリ@</value>
 </property>
</configuration>
  • ブラウザでローカルホストのTomcatにアクセスすれば検索ができる
    • しかしながら、このままでは日本語は正しく扱うことはできない

 日本語で検索可能にする

  • 日本語ロケールの指定でjaではなくjpとなっているため、日本語を正しく扱うことができない。

Nutch-0.9の再ビルド

@どうもCygwin環境で再ビルドするとパスがおかしくなってしまい動作しないものができあがってしまう?@

  • build.xmlを変更する
    • build.xmlの61行目から63行目までをコメントアウトする
<!--
   <touch datetime="01/25/1971 2:00 pm">
     <fileset dir="${conf.dir}" includes="**/*.template"/>
   </touch>
-->
    • 日本語ロケールの指定の部分を変更する
<param name="doc.locale" value="jp"/>
↓
<param name="doc.locale" value="ja"/>
  • $NUTCH_HOMEに移動し、jpとなっている部分をjaに変える
mv docs/jp docs/ja
mv src/web/include/jp src/web/include/ja
mv src/web/pages/jp src/web/pages/ja

  • Antのインストールと設定
    • Debian系のLinuxの場合には、antとant-optionalパッケージを導入しておく

 SVNからのチェックアウト

svn checkout http://svn.apache.org/repos/asf/lucene/nutch/trunk/ nutch
    • どうも2008年01月12日時点で最新版はCygwinで動かないみたい

 とりあえずメモ

export JAVA_HOME="/cygdrive/c/Program Files/Java/jdk1.5.0_12"
export NUTCH_HOME="nutch-0.9"
$NUTCH_HOME/bin/nutch crawl urls -dir crawl -depth 2 -topN 30

 参考サイト

Nutch00.JPG

最終更新時間:2008年01月12日 15時18分10秒