2012-01-21 43 views
2

Rails 3中的屏幕抓取选项是什么 - gem/library?我过去使用过Nokogiri,但只是想知道Rails 3中是否有更好的选择。Rails 3屏幕抓取3

+1

IMO Nokogiri是适用于任何语言的最好的抓取库。也许你应该告诉我们它没有你想要的东西。 – pguardiario

+0

@pguardiario:Nokogiri是最好的,我同意。 –

回答

1

Rails不会执行屏幕抓取。您可以自由使用可以添加该功能的Ruby代码,但是它本身可以生成页面。

机械化,内部使用Nokogiri,是一个不错的选择,否则我总是使用Nokogiri和OpenURI推出自己的产品。

2

如果这是一个一次性的任务,或者如果你的目标数据集相对较小(下页百),使用Mechanize(浏览&刮)或Anemone(为所欲为机械化确实+其他一些特定的爬行选项)。

如果您需要自动执行此集合,或者您正在处理大型数据集,请考虑使用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" 
# }