即使使用API​​密钥,Python Geocoder是否也被拒绝?

时间:2019-04-06 16:47:49

标签: python geocoding google-geocoder google-geocoding-api

我注册了Google API密钥以对地址进行地址解析。我正在尝试使用Python的地址解析器。

g = geocoder.google('Mountain View, CA', key='puting my key here')

但是,它仍然给我:

<[REQUEST_DENIED] Google - Geocode [empty]>

有人可以向我解释发生了什么吗?预先感谢。

4 个答案:

答案 0 :(得分:0)

从错误消息中,我认为可能无法在API控制台上为项目检索到的API密钥启用地理编码API。请确认。在启用Geocoding API后运行脚本时,将返回以下响应。

<[OK] Google - Geocode [###]>

注意:

  • 如果您知道项目ID,则可以打开以下页面以启用API
    • https://console.cloud.google.com/apis/library/geocoding-backend.googleapis.com?project=project-id-#####
  • 关于定价,请检查https://cloud.google.com/maps-platform/pricing/

参考文献:

如果这对您的情况没有帮助,我深表歉意。

答案 1 :(得分:0)

通过尝试在浏览器中加载请求,可以获得有关该错误的更多信息。在下面的示例中,您可以使用g.url来获取URL:

>>> import geocoder
>>> g = geocoder.google('Mountain View, CA', key='puting my key here')
>>> g.ok
False
>>> g
<[REQUEST_DENIED] Google - Geocode [empty]>
>>> g.url
'https://maps.googleapis.com/maps/api/geocode/json?address=Mountain+View%2C+CA&bounds=&components=&region=&language=&key=puting%20my%20key%20here'

当我将结果复制到浏览器窗口中时,很明显:

{
   "error_message" : "You must enable Billing on the Google Cloud Project at https://console.cloud.google.com/project/_/billing/enable Learn more at https://developers.google.com/maps/gmp-get-started",
   "results" : [],
   "status" : "REQUEST_DENIED"
}

对于我来说,@ Tanaike是正确的:即使我记得启用了新的API密钥,也没有在我的Google Cloud Project(https://console.cloud.google.com/project/_/billing/enable)上启用“计费”。

答案 2 :(得分:0)

geodecode API需要付费。输入您的帐单信息即可使用。

答案 3 :(得分:-1)

之前的回答是对的。您需要启用计费才能发出请求。您可以访问此网站并启用计费。我认为这是您能够提出请求的唯一方式。 https://console.cloud.google.com/project/_/billing/enable