既にクロールされているものに新しいクロールを発行しようとすると問題が発生しますが、いくつかの新しい URL があります。
だから最初に私が持っている
urls/urls.txt -> www.somewebsite.com
次に、コマンドを発行します
bin/nutch crawl urls -dir crawl -depth 60 -threads 50
次に、urls/urls.txt を更新します -> www.somewebsite.com を削除します -> www.anotherwebsite.com を追加します
私はコマンドを発行します
bin/nutch inject crawl urls
bin/nutch crawl urls -dir crawl -depth 60 -threads 50
ここで私が期待するのは、www.anotherwebsite.com が既存の「クロール」データベースに挿入され、クロールが再度発行されたときに、www.anotherwebsite.com を追加した新しい Web サイトのみをクロールすることです (元の Web サイトの再フェッチとして)。は 30 日に設定されています)
私が経験したことは、
1.) クロールされたウェブサイトはありません
2.) 元の Web サイトのみがクロールされる
「ときどき」数時間放置すると、機能し始め、新しい Web サイトを取得し、古い Web サイトと新しい Web サイトの両方をクロールします (再取得時間が 30 日に設定されていても)
その非常に奇妙で予測不可能な動作。
私の regex-urlfilter ファイルが正しく設定されていること、そして私の nutch-site / nutch-default がすべてデフォルトでセットアップされていることを確信しています (十分に近い)。
質問:
各クロール中に何が起こっているのか、既存のクロール データベースを新しい URL で更新する方法を (コマンドを使用して) 誰でも簡単に説明できますか?
クロールデータベースで「すべての」URLの再クロールを強制する方法を(コマンドで)誰か説明できますか? - readdb を発行して再フェッチ時間を確認しましたが、ほとんどが 1 か月に設定されていますが、もっと早く再フェッチしたい場合はどうすればよいですか?