Easy geocoding, reverse geocoding, driving directions, and local search in Python via Google.
An easy-to-use Python wrapper for the Google Maps and Local Search APIs.
Geocoding: convert a postal address to latitude and longitude>>> from googlemaps import GoogleMaps >>> gmaps = GoogleMaps() >>> address = '10th St. & Constitution Ave. NW, Washington, D.C. 20560' >>> lat, lng = gmaps.address_to_latlng(address) >>> print lat, lng 38.892087 -77.025989
Reverse Geocoding: find the nearest address to (lat, lng)>>> destination = gmaps.latlng_to_address(38.887563, -77.019929) >>> print destination 200 6th St SW, Washington, DC 20024, USA
Local Search: find places matching a query near a given location>>> local = gmaps.local_search('dinner ' + destination) >>> print local['responseData']['results']['title'] Cosmo Cafe
Directions: turn-by-turn directions, distance, time, etc. from point A to point B>>> directions = gmaps.directions(address, destination) >>> print directions['Directions']['Distance']['meters'] 1026 >>> print directions['Directions']['Duration']['seconds'] 115 >>> for step in directions['Directions']['Routes']['Steps']: ... print step['descriptionHtml'] Head <b>east</b> on <b>Constitution Ave NW</b> toward <b>9th St NW</b> Turn <b>right</b> at <b>7th St NW</b> Turn <b>left</b> at <b>Independence Ave SW</b>
This software is in no way associated with or endorsed by Google Inc. Use of the Google Maps API is governed by its Terms of Service: http://code.google.com/apis/maps/terms.html. Note in particular that you will need your own Google Maps API key to use this service, and that there are rate limits to the number of requests you can make.