2012-01-21 16 views
2

Rails 3 - gem/libraryのスクリーンスクレイピングオプションは何ですか?私は過去にNokogiriを使用しましたが、Rails 3でより良いオプションがあるかどうかを知りたかっただけです。Rails 3のスクリーンスクレイピング3

+1

IMOノコギリは、どの言語でも利用可能な最高のスクレイピングライブラリです。たぶん、あなたが望んでいないことを教えてください。 – pguardiario

+0

@pguardiario:ノコギリが最高です、私は同意します。 –

答えて

1

Railsはスクリーンスクレイピングを行いません。あなたはその機能を追加するRubyコードを自由に使用できますが、それ自体はページの生成を行います。

Nokogiriを内部的に使用するMechanizeは良い選択です。それ以外の場合は常にNokogiriとOpenURIを使用して自分自身をロールバックします。

0

幻想的なRubyToolsウェブサイトには、Ruby libraries to parsing HTMLがいくつか見つかります。まだノコギリが一番人気です。これは一回限りのタスクがあるか、あなたのターゲット・データ・セットは、(ページの百の下で)比較的小さい場合、MechanizeがまたはAnemone((&擦り傷を参照)を使用する場合

2

Mechanizeのは+いくつかの追加クロール固有のオプションをして何でもありません)。

このコレクションを自動化する必要がある場合や、大きなデータセットを扱う場合は、Webサービスの使用を検討してください。 Bobikはこのバケットでは良い選択です。

0

また、Scrapifier gemを使用して、文字列内のURIからメタデータを取得することもできます。それは非常に使いやすいです:

'Wow! What an awesome site: http://adtangerine.com!'.scrapify 

#=> { 
# title:  "AdTangerine | Advertising Platform for Social Media", 
# description: "AdTangerine is an advertising platform that uses the tangerine as a virtual currency for advertisers and publishers in order to share content on social networks.", 
# images:  ["http://adtangerine.com/assets/logo_adt_og.png", "http://adtangerine.com/assets/logo_adt_og.png", "http://s3-us-west-2.amazonaws.com/adtangerine-prod/users/avatars/000/000/834/thumb/275747_1118382211_1929809351_n.jpg", "http://adtangerine.com/assets/foobar.gif"], 
# uri:   "http://adtangerine.com" 
# }