To doprowadza mnie do szału. Usunąłem ten klucz do tej pory 1000 razy. Wczoraj to działało jak czar, nie dzisiaj już Oto kod Python:GoogleMaps API -adres do współrzędnych (szerokość i długość geograficzna)
from googlemaps import GoogleMaps
gmaps = GoogleMaps("AIzaSyBIdSyB_td3PE-ur-ISjwFUtBf2O0Uo0Jo")
exactaddress ="1 Toronto Street Toronto"
lat, lng = gmaps.address_to_latlng(exactaddress)
print lat, lng
GoogleMapsError: Error 610: G_GEO_BAD_KEY
Obecnie powrocie powyższy błąd na nie z oczywistych powodów. Nie sądzę, że osiągnąłem limit żądania lub maksymalną stawkę. Aby pozostać na bezpiecznej stronie, wprowadziłem nawet opóźnienia (1sek) ... wystąpił ten sam błąd
Czy ktoś ma pojęcie, jak mogę rozwiązać to? Praca z innym modułem python jest w porządku, jeśli możesz wskazać alternatywę dla tego, którego aktualnie używam.
dzięki C
PS: klucz jest ważny, jest to kluczowy klient i została ona włączona automatycznie, gdy włączona GoogleMap API3 w konsoli App. Brak ograniczeń dla domen lub adresów IP
EDIT: Więc tutaj jest to, co skończyło się używając
def decodeAddressToCoordinates(address):
urlParams = {
'address': address,
'sensor': 'false',
}
url = 'http://maps.google.com/maps/api/geocode/json?' + urllib.urlencode(urlParams)
response = urllib2.urlopen(url)
responseBody = response.read()
body = StringIO.StringIO(responseBody)
result = json.load(body)
if 'status' not in result or result['status'] != 'OK':
return None
else:
return {
'lat': result['results'][0]['geometry']['location']['lat'],
'lng': result['results'][0]['geometry']['location']['lng']
}
Bibliotece że Jason wskazał mi się to również interesująca, ale ponieważ mój kod miał coś naprawić (jeden czas użycia) Nie próbowałem jego rozwiązania. Zdecydowanie uważam, że jeśli znowu będę pisać kod :-)
Nie jestem pewien, czy implementacja Pythona jest podobna, ale ludzie używający geokodowania v2 cierpieli z powodu problemów z końcem życia v2. Przejście na v3 zdawało się leczyć pewne problemy. Czy istnieje różnica wersji dla Pythona? – Rafe
Począwszy od 10 marca 2013, obsługa v2 uległa zmniejszeniu, a o ile mi wiadomo, pakiet googlemaps wydaje się używać v2, który ma różne adresy zapytania, teoretycznie zmiana adresu zapytania powinna wystarczyć (w pakiecie googlemaps). –