Nutch 2.1 で 1 つの URL をクロールしましたが、更新後にページを再クロールしたいと考えています。これどうやってするの?ページが更新されたことを知るにはどうすればよいですか?
3 に答える
単にできません。ページが更新されたかどうかを制御するには、ページを再クロールする必要があります。そのため、必要に応じて、ページ/ドメインに優先順位を付け、一定期間内に再クロールしてください。そのためには、 Quartzなどのジョブ スケジューラが必要です。
ページを比較する関数を作成する必要があります。ただし、Nutch はもともとページをインデックス ファイルとして保存します。つまり、Nutch は HTML を保存するために新しいバイナリ ファイルを生成します。Nutch はすべてのクロール結果を 1 つのファイルにまとめているため、バイナリ ファイルを比較することはできないと思います。比較するために生の HTML 形式でページを保存する場合は、この質問に対する私の回答を参照してください。
ジョブを実行するには、ジョブをスケジュールする必要があり
ます。ただし、Nutch AdaptiveFetchSchedule を使用すると、ページをクロールしてインデックスを作成し、ページが新規か更新かを検出できるため、手動で行う必要はありません。
記事では、同じことを詳しく説明しています。
http://pascaldimassimo.com/2010/06/11/how-to-re-crawl-with-nutch/はどうですか
これについては、次のトピックで説明しています。ナットを再クロールする方法
上記の解決策が実際に機能するかどうか疑問に思っています。私たちが話している間、私は努力しています。私はニュースサイトをクロールし、フロントページを頻繁に更新するので、インデックス/フロントページを頻繁に再クロールして、新しく発見されたリンクを取得する必要があります.