我一直在寻找一种使用RoR检索Google搜索结果的方法。 我可以看到,不久之前它只是通过抓取HTML页面(Scruby,Nokogiri,Mecheanize ......)来完成的。我首先想知道,如果它是合法的,第二,我真的不喜欢你怎么能依赖另一个网站的HTML和CSS - 如果它在第二天被改变会发生什么......也许我错过了那里的东西? 然后我看到谷歌提供了一个API,但我找不到任何处理它的Rails插件。
有人知道吗?
谢谢:-)。
答案 0 :(得分:3)
有googleajax gem,但最多只能返回100个结果。
GoogleAjax::Search.web('ruby')[:results].each do |result|
puts result.inspect
end
除此之外,是的,你可以抓取谷歌搜索结果,不会反对他们ToS(见5.3),是的,你仍然可以做一点,没有人会注意到或采取行动。
顺便说一下,网站通常不会经常更改HTML标记,谷歌可能会比平均更少。屏幕刮擦足够稳定,实际上非常有用。