Ich verwende das Geocoder-Paket in Python, um die Koordinaten für eine Reihe von Adressen (etwa 30k) zu erhalten. Ich erhalte den folgenden Fehler:Geokodierung in Python
Status code Unknown from https://maps.googleapis.com/maps/api/geocode/json : ERROR - HTTPSConnectionPool(host='maps.googleapis.com', port=443): Max retries exceeded with url: /maps/api/geocode/json?address=Rancho+Palos+Verdes%2CCA%2CUS&bounds=&components=®ion=&language= (Caused by ProxyError('Cannot connect to proxy.', timeout('timed out',)))
Die Anzahl der Male, die ich die Fehlermeldung reduziert, wenn ich die time.sleep(x)
Funktion hinzufügen, aber es erhöht deutlich die Zeit genommen, um den Code auszuführen. Gibt es eine effizientere Möglichkeit, den Code auszuführen?
Es folgt ein Ausschnitt aus dem Code:
for add in clean_address:
g=geocoder.google(add)
time.sleep(7)
if(g.ok==True):
lat.append(str(g.lat))
lon.append(str(g.lng))
if(g.ok==False):
lat.append("")
lon.append("")
Googles geocode API ist nur frei bis zu einem bestimmten Betrag, Sie mehr als wahrscheinlich, dass und ratenbegrenzte bekommen. Wenn Sie mehr möchten, müssen Sie sich registrieren und für Ihr Volumen bezahlen. – tzaman
Gibt es einen Grund, Google API zu verwenden? Du könntest arcgis api verwenden, die keine Beschränkung verwenden: g = geocoder.arcgis (add) – Lupanoide
@Lupanoide - Danke für die Empfehlung von mir ArcGIS. Es ist genauer und schneller die Koordinaten für meine 31k-Datensätze zu bekommen. –