Представим, что нам нужно получить координаты маршрута между Винницей и Одессой. Для этого воспользуемся Google Directions API и модулем googlemaps.
Установка
pip install -U googlemaps
Предварительно нужно получить API KEY для используемого проекта.
Запрос к Directions API для получения маршрута.
import googlemaps from datetime import datetime now = datetime.now() gmaps = googlemaps.Client(key='API_KEY') result = gmaps.directions("Vinnytsia, Ukraine", "Odessa, Ukraine", mode="transit", departure_time=now) raw = result[0]['overview_polyline']['points']
Но вот незадача, координы хранятся не в виде широты и долготы, а в виде следующей последовательности }wjiGtd. Нам поможет модуль polyline.
Установка
pip install -U polyline
Использование
import polyline points = polyline.decode(raw)
В points
список кортежей с координатами, который можем передать в Google Maps Static.
coordinates = "|".join(["{0},{1}".format(p[0], p[1]) for p in points]) url = "http://maps.googleapis.com/maps/api/staticmap?size=800x800&path={0}".format(coordinates)