ЗАПРОС геокодера Python ОТКЛОНЕН даже с ключом API?

#python #geocoding #google-geocoder #google-geocoding-api

#python #геокодирование #google-геокодер #google-geocoding-api

Вопрос:

Я зарегистрировался на получение ключа API Google для геокодирования адресов. Я пытаюсь использовать геокодер Python.

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

Тем не менее, это все еще дает мне:

 <[REQUEST_DENIED] Google - Geocode [empty]>
  

Кто-нибудь может объяснить мне, что происходит? Заранее спасибо.

Ответ №1:

Из сообщения об ошибке я подумал, что API геокодирования может быть не включен в консоли API для проекта, получившего ключ API. Пожалуйста, подтвердите это. Когда скрипт запускается после включения API геокодирования, возвращается следующий ответ.

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

Примечание:

  • Если вы знаете идентификатор проекта, вы можете открыть страницу для включения API по адресу
    • https://console.cloud.google.com/apis/library/geocoding-backend.googleapis.com?project=project-id-#####
  • О ценах, пожалуйста, уточните https://cloud.google.com/maps-platform/pricing /.

Ссылки:

Если это не было полезно для вашей ситуации, я прошу прощения.

Ответ №2:

Вы можете получить дополнительную информацию об ошибке, попытавшись загрузить свой запрос в браузере. Вы можете получить URL с помощью g.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, CAamp;bounds=amp;components=amp;region=amp;language=amp;key=puting my key here'
  

Когда я скопировал этот результат в окно браузера, это было ясно:

 {
   "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 (https://console.cloud.google.com/project/_/billing/enable).

Ответ №3:

API geodecode требует оплаты. Укажите свою платежную информацию, после чего вы сможете ее использовать.

Комментарии:

1. пожалуйста, преобразуйте этот ответ в комментарий, поскольку он не предлагает полного решения, просто направление.

2. Когда вы создаете проект, у вас есть раздел под названием «выставление счетов». Там вы можете создать ссылку или либо создать, если у вас уже нет связанной платежной информации.

Ответ №4:

Предыдущие ответы были правильными. Вам нужно было включить выставление счетов, чтобы отправлять запросы. Вы можете перейти на этот веб-сайт и включить выставление счетов. Я думаю, что это единственный способ, которым вы могли бы отправлять запросы. https://console.cloud.google.com/project/_/billing/enable