Использовать Python? Хотите что-то геокодировать? Ищете направления? Может быть, матрицы направлений? Эта библиотека добавляет веб-службы платформы Google Maps в ваше приложение Python.
Клиент Python для служб Карт Google — это клиентская библиотека Python для следующих API Карт Google:
Имейте в виду, что к использованию API при доступе к ним через эту библиотеку применяются те же условия.
Эта библиотека поддерживается сообществом. Нас достаточно устраивает стабильность и возможности библиотеки, поэтому мы хотим, чтобы вы создавали на ее основе реальные производственные приложения. Мы постараемся поддерживать общедоступную и защищенную поверхность библиотеки через Stack Overflow и поддерживать обратную совместимость в будущем; однако, пока библиотека находится в версии 0.x, мы оставляем за собой право вносить обратно несовместимые изменения. Если мы удалим некоторую функциональность (обычно потому, что существует лучшая функциональность или если эта функция окажется неосуществимой), наше намерение состоит в том, чтобы объявить ее устаревшей и дать разработчикам год на обновление своего кода.
Если вы обнаружили ошибку или у вас есть предложение по функции, зарегистрируйте проблему. Если вы хотите внести свой вклад, пожалуйста, прочитайте «Внести вклад».
Для каждого запроса веб-службы Google Maps требуется ключ API или идентификатор клиента. Ключи API генерируются на странице «Учетные данные» на вкладке «API и сервисы» консоли Google Cloud.
Дополнительную информацию о начале работы с платформой Google Maps и создании/ограничении ключа API см. в разделе «Начало работы с платформой Google Maps» в нашей документации.
Важно: этот ключ должен храниться в секрете на вашем сервере.
$ pip install -U googlemaps
Обратите внимание, что вам потребуются запросы 2.4.0 или выше, если вы хотите указать таймауты подключения/чтения.
В этом примере используются API геокодирования и API направлений с ключом API:
import googlemaps
from datetime import datetime
gmaps = googlemaps . Client ( key = 'Add Your Key here' )
# Geocoding an address
geocode_result = gmaps . geocode ( '1600 Amphitheatre Parkway, Mountain View, CA' )
# Look up an address with reverse geocoding
reverse_geocode_result = gmaps . reverse_geocode (( 40.714224 , - 73.961452 ))
# Request directions via public transit
now = datetime . now ()
directions_result = gmaps . directions ( "Sydney Town Hall" ,
"Parramatta, NSW" ,
mode = "transit" ,
departure_time = now )
# Validate an address with address validation
addressvalidation_result = gmaps . addressvalidation ([ '1600 Amphitheatre Pk' ],
regionCode = 'US' ,
locality = 'Mountain View' ,
enableUspsCass = True )
# Get an Address Descriptor of a location in the reverse geocoding response
address_descriptor_result = gmaps . reverse_geocode (( 40.714224 , - 73.961452 ), enable_address_descriptor = True )
Дополнительные примеры использования см. в тестах.
Автоматически повторяйте попытку при возникновении периодических сбоев. То есть, когда из API возвращается любая повторяемая ошибка 5xx.
# Installing nox
$ pip install nox
# Running tests
$ nox
# Generating documentation
$ nox -e docs
# Copy docs to gh-pages
$ nox -e docs && mv docs/_build/html generated_docs && git clean -Xdi && git checkout gh-pages
Документация для библиотеки google-maps-services-python