特定の Web サイトから有用なリソース (背景画像など) をクロールしたいと考えています。特にスクレイピーのようないくつかの素晴らしいプロジェクトの助けを借りて、それは難しい仕事ではありません.
ここでの問題は、このサイトを 1 回だけクロールしたいだけではないということです。また、クロールを長時間実行し続け、更新されたリソースをクロールしたいと考えています。Webクローラーが更新されたページを取得するための良い戦略はありますか?
これが私が考えた粗いアルゴリズムです。クロール プロセスをラウンドに分割しました。各ラウンド URL リポジトリは、クローラーにクロールする特定の数 (10000 など) の URL を提供します。そして次のラウンド。詳細な手順は次のとおりです。
- クローラーが開始 URL を URL リポジトリーに追加する
- クローラーは、クロールする最大 N 個の URL を URL リポジトリーに要求します
- クローラーは URL をフェッチし、ページ コンテンツ、フェッチ時間、コンテンツが変更されたかどうかなど、URL リポジトリ内の特定の情報を更新します。
- ステップ2に戻るだけです
それをさらに特定するには、次の質問を解決する必要があります: この Web ページが更新されている可能性を示す、Web ページの「更新度」を決定する方法は?
これは未解決の問題であるため、ここで実りある議論がもたらされることを願っています。