如何通过Ruby中的API从关键字中检索十大Google搜索



我对检索特定搜索/关键字的10个Google结果的最佳方法有些困惑。我只需要标题和URL(描述不是必不可少的)。

我正在使用Ruby,显然有一种很好的方法可以用Googleajax宝石进行。我已经能够使它起作用,但我担心它是一种不弃用的API,可以随时分阶段。另外,一次获得超过4个结果的解决方法不是很干净。

我认为Google自定义搜索可能是一个选择,但是每天100个查询的限制正在限制。我希望不刮擦Google,因为这违反了他们的条款。

我还必须做出哪些其他选择?任何JSON/RUBY/RAILS选项都对我有用。谢谢!

我们结束了相同的问题,我们用自己的后端建造了自己的宝石。使用非常简单:

query = GoogleSearchResults.new q: "coffee"
hash_results = query.get_hash

https://github.com/serpapi/google-search-results-ruby

您对自己愿意进行交易的问题并不是很明确,但是您可能想更多地考虑一下:

I think the Google Custom Search might be an option but the daily limit of 100 queries is restricting. I would prefer to not scrape Google as it's a violation of their terms.

我已经使用了Google自定义搜索,这很容易,但是限制已经到位。如果您担心不违反Google的TO,这是唯一的选择。您需要决定是否愿意违反TOS,如果不是,则只需使用Google自定义搜索。

我建议使用'rest-lient'gem。

RestClient.get 'google_api_url' 

它首先发生在我身上,示例:

require 'open-uri'
require 'nokogiri'
require 'restclient'
words = ["Foo", "Bar", "Baz"]
staff = [].tap do |acc|
  words.each do |word|
    link = "https://www.google.com/search?q=#{word}"
    page = Nokogiri::HTML(RestClient.get(link))
    page.css('a')[27].text
    .....................# <- and parse data what you need
  end
end

如果您的需求在一天中超过100个查询,而不是每日/规律的问题,并且如果不是Google结果,则可以考虑使用Bing Search API。

Bing搜索API允许每月5000个查询,您可以选择在一天本身中使用。同样,如果您的需求不是每日/普通的,您可以超越Google。

,这将解决您的问题。

其他,付款是您唯一的出路。

相关内容

  • 没有找到相关文章

最新更新