#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