0

GoogleショッピングAPIを使用して価格追跡を行うスクリプトを書いています. この URL に curl または Web ブラウザーでアクセスすると、データが読み込まれます。

https://www.googleapis.com/shopping/search/v1/public/products?key=AIzaSyC24EXbQZ1X7KmaKLJ-Bd9SKgOx4x9ob-M&country=US&q=デジタル+カメラ

ただし、この ruby​​ スクリプトを使用すると

require "rubygems"
require "net/https"

@url = 'https://www.googleapis.com/shopping/search/v1/public/products?key=AIzaSyCGGKfldgrPQsXAJw5Dbn1M3QWZ9vqVyBQ&country=US&q=digital+camera'
uri = URI.parse @url
http = Net::HTTP.new(uri.host, 443)
http.use_ssl = true 
http.verify_mode = OpenSSL::SSL::VERIFY_PEER
http.ca_file = File.join(File.dirname(__FILE__), "./cacert.pem")
http.start { http.request_get(uri.path) {|res| print res.body } }

次のエラーが表示されます。

"error": {
  "errors": [
   {
    "domain": "usageLimits",
    "reason": "dailyLimitExceededUnreg",
    "message": "Daily Limit Exceeded. Please sign up",
    "extendedHelp": "https://code.google.com/apis/console"
   }
  ],
  "code": 403,
  "message": "Daily Limit Exceeded. Please sign up"
 }
}

私の理論では、Ruby コードが https を不適切に使用しているためにエラーが発生しているということです。cacert.pem は curl.haxx.se/ca/cacert.pem からのものです https 経由で API にアクセスするにはどうすればよいですか?

4

1 に答える 1

0

このエラーは、私にとっては一目瞭然です。1日の上限は?いくつのリクエストをしていますか?

于 2012-09-12T18:47:37.223 に答える