Как получить широту и долготу с помощью python

Я пытаюсь получить долготу и широту физического адреса, используя приведенный ниже скрипт. Но я получаю ошибку. Я уже установил googlemaps. добро пожаловать

#!/usr/bin/env python import urllib,urllib2 """This Programs Fetch The Address""" from googlemaps import GoogleMaps address='Mahatma Gandhi Rd, Shivaji Nagar, Bangalore, KA 560001' add=GoogleMaps().address_to_latlng(address) print add 

Вывод:

 Traceback (most recent call last): File "Fetching.py", line 12, in <module> add=GoogleMaps().address_to_latlng(address) File "/usr/local/lib/python2.7/dist-packages/googlemaps.py", line 310, in address_to_latlng return tuple(self.geocode(address)['Placemark'][0]['Point']['coordinates'][1::-1]) File "/usr/local/lib/python2.7/dist-packages/googlemaps.py", line 259, in geocode url, response = fetch_json(self._GEOCODE_QUERY_URL, params=params) File "/usr/local/lib/python2.7/dist-packages/googlemaps.py", line 50, in fetch_json response = urllib2.urlopen(request) File "/usr/lib/python2.7/urllib2.py", line 127, in urlopen return _opener.open(url, data, timeout) File "/usr/lib/python2.7/urllib2.py", line 407, in open response = meth(req, response) File "/usr/lib/python2.7/urllib2.py", line 520, in http_response 'http', request, response, code, msg, hdrs) File "/usr/lib/python2.7/urllib2.py", line 445, in error return self._call_chain(*args) File "/usr/lib/python2.7/urllib2.py", line 379, in _call_chain result = func(*args) File "/usr/lib/python2.7/urllib2.py", line 528, in http_error_default raise HTTPError(req.get_full_url(), code, msg, hdrs, fp) urllib2.HTTPError: HTTP Error 403: Forbidden 

Используемый вами пакет googlemaps не является официальным и не использует API google maps v3, который является последним из Google.

Вы можете использовать google geocode REST api для извлечения координат из адреса. Вот пример.

 import requests response = requests.get('https://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA') resp_json_payload = response.json() print(resp_json_payload['results'][0]['geometry']['location']) 

Я не уверен, помогает ли это, но здесь есть сообщение http-error-403-with-api-id-in-access-google-maps , в котором есть ответ, ссылающийся на python-geocodage-geolocalisation .