12

I want to crawl for specific things. Specifically events that are taking place like concerts, movies, art gallery openings, etc, etc. Anything that one might spend time going to.

How do I implement a crawler?

I have heard of Grub (grub.org -> Wikia) and Heritix (http://crawler.archive.org/)

Are there others?

What opinions does everyone have?

-Jason

4

10 に答える 10

8

Webbots、Spiders、および Screen Scrapers: A Guide to Developing Internet Agents with PHP/CURL と呼ばれる、私が推奨できる主題に関する優れた本があります。

于 2009-04-08T00:07:21.780 に答える
5

何をするにしても、善良な市民であり、robots.txtファイルに従ってください。フォーカスされたクローラーに関するウィキペディアのページで参照を確認することをお勧めします。Topic Web Crawlers: Evaluating Adaptive Algorithmsの著者の 1 人を知っていることに気付きました。小さな世界。

于 2009-04-08T02:49:04.590 に答える
4

Scrapyをチェックしてください。これは、Python で書かれたオープン ソースの Web クローリング フレームワークです (ページを提供する代わりにダウンロードする点を除いて、Django に似ていると聞きました)。それは簡単に拡張可能で、分散/並列であり、非常に有望に見えます。

そうすれば、スクレイピングされたコンテンツから正しいデータを抽出してデータベースに挿入する方法など、より些細なことのために自分の強みを節約できるため、Scrapy を使用します。

于 2009-06-09T21:08:36.050 に答える
3

ウェブクローラーの部分がタスクの中で最も簡単な部分になると思います。難しい部分は、訪問するサイトと、訪問したいサイトでイベントを発見する方法を決定することです. GoogleまたはYahoo APIを使用して必要なデータを取得する方法について知りたいと思うかもしれません。彼らはすでにインターネット上の多くのページをクロールする作業を行っています.とにかく、私の考えでは、探しているイベントを取得するためにデータをふるいにかけるという、より困難な問題に集中することができます.

于 2009-04-08T01:01:17.283 に答える
2

実際、スケール指向のクローラーを作成することは、非常に困難な作業です。私は仕事でそれを実装し、かなり長い間それを維持しました。書いて問題を解いてみないとわからない問題がたくさんあります。具体的には、CDN とサイトのフレンドリー クロールを扱います。適応アルゴリズムは非常に重要です。そうしないと、DOS フィルターが作動してしまいます。実際、あなたのクロールが十分に大きい場合、あなたはそれを知らずにとにかくそうするでしょう。

考慮事項:

  • 有能なスループット以外に何がありますか?
  • サイトの停止にどのように対処しますか?
  • ブロックされたらどうなりますか?
  • ステルス クロールを行いますか (議論の余地があり、実際に正しく行うのは非常に困難です)。

私は実際にいくつかのことを書きました.クローラーの構築については、人々が言うよりもはるかに難しいため、クローラーの構築についてオンラインで公開するかもしれません. オープンソースのクローラーのほとんどは、ほとんどの人にとって十分に機能するので、できればそのうちの 1 つを使用することをお勧めします。機能/プラットフォームの選択はどれですか。

于 2009-07-31T21:52:54.287 に答える
1

インターネットをクロールすることが仕事の始まりになっていることに気付いた場合は、RSS アグリゲーターを構築し、 craigslist やcoming.org などの人気イベント サイトの RSS フィードを購読することを検討してください。

これらの各サイトは、ローカライズされた検索可能なイベントを提供します。RSS は、Web を構成するすべての不正な形式の html を使用する代わりに、(いくつかの) 標準化された形式を提供します...

RSS フィードの使用に役立つROME (java)などのオープンソース ライブラリがあります。

于 2009-04-08T05:16:23.720 に答える
0

ナッチクローラー

于 2009-06-15T19:45:51.483 に答える
0

言語固有の要件はありますか?,

個人的な実験のために、しばらく前に Chilkat Spider Lib の for .net をいじってみました。

最後に確認したスパイダー Lib は、フリーウェアとしてライセンスされています (私の知る限り、オープン ソースではありません :( )

彼らはpython Libのtoを持っているようです。

http://www.example-code.com/python/pythonspider.asp #Python http://www.example-code.com/csharp/spider.asp #.Net

于 2009-04-08T02:07:24.517 に答える
0

RSS フィードに関するKevin の提案に従って、 Yahoo パイプをチェックしてみてください。まだ試していませんが、いくつかの RSS フィードを処理し、Web ページまたは複数の RSS フィードを生成できると思います。

于 2009-05-14T21:40:24.110 に答える