ウェブクローラーアーキテクチャ
(velog.io)-
これまでインターネットで数多く紹介されてきたウェブクローラーの多くは、実際には「スクレイパー」であり、クローラーと呼ぶには難しい
-
筆者はウェブクローラーを定義する論文を簡潔に紹介している
-
クローラーはインターネットの世界を BFS、DFS で探索するアプリケーションである。
-
ロボットルールは企業のイメージを左右するほど非常に重要な問題だが、それを知らないスタートアップも多い。
これまでインターネットで数多く紹介されてきたウェブクローラーの多くは、実際には「スクレイパー」であり、クローラーと呼ぶには難しい
筆者はウェブクローラーを定義する論文を簡潔に紹介している
クローラーはインターネットの世界を BFS、DFS で探索するアプリケーションである。
ロボットルールは企業のイメージを左右するほど非常に重要な問題だが、それを知らないスタートアップも多い。
4件のコメント
昨年もこの人の文章を読んで、どうしてそんなにひねくれて生きているのかと思いましたが、多少はましになったのかは分かりません。
現実的に言えば、文字どおり検索エンジンを運用している大企業の人たちでもない限り……
クローラーを使うとしても、テキストマイニング分野では英語でないなら前処理コストが大きいため、ああいう方式のクローラーでは質の高いデータを取り出すのも難しいですし、画像処理分野は質の高いデータセットもあふれているので、わざわざクローラーを運用する理由がありません。ああして良い理論がありながらスクレイパーが幅を利かせているのは伊達ではありません。苦労して得るだけの価値が低いからにすぎないのです。
その人が言う完全なクローラーというものは、理論は良いのかもしれませんが、結局はやや高い確率でデータを抽出するにすぎないので、最近の人工知能やこの手の分野で使うには扱いづらい存在です。維持コストが安いわけでもなく、抽出されたデータが完全でもなく、管理もしづらく、法的な問題も多いです。個人や企業がそうした問題まで考えるくらいなら、ただ大規模サイトにスクレイパーをいくつか走らせるほうが経済的です。きちんと分析して構築された大規模サイトのスクレイパー1つのほうが、役に立たない1万サイトを出入りするより何百倍、何千倍も経済的で楽です。クローラー1つを広範囲に「うまく」運用しようとすると、修士や博士が張り付いても難しいでしょう。クローラーを監視してロジック修正までやるとなれば、さらに悲惨でしょう。ログだけでも膨大になるはずですから、それすら分散処理しなければならないでしょうし。
もちろん、クローラーが中核であり重要だという点には当然同意しますが、そういう主張をわざわざ1年中スクレイパーと格付けしながら語る必要があったのだろうか、と思います。
今見ても、その人がScrapyをなぜ無視するのか理解できません。少なくともgocollyよりは、オプションにせよ拡張機能にせよ、ずっと多いはずなのですが。
まあ個人の見方によって違うでしょうが、私もビッグデータ収集チームで働く人間として、浅学な意見を残しておきます。
同感です。
まだ未完成の記事だからか、あるべき内容が抜けているように見える箇所がいくつかありますね。
途中の再訪問スケジューリングで言及されている [Lambda Crawl] というのは、Effective Page Refresh Policies For Web Crawlers の論文のことなのでしょうか? このキーワードで検索してみると、AWSのサーバーレスサービスであるLambdaでクロールする云々という話ばかり大量に出てくるんですよね。肝心の下の参考文献一覧にはこの論文が見当たらないようなのですが……
http://ilpubs.stanford.edu:8090/604/1/2003-44.pdf
Tractable near-optimal policies for crawling という論文に出てきますね