Sto utilizzando Geopy . Ottengo il seguente errore per il codice.

Sto utilizzando lo stesso codice di https://code.google.com/p/geopy/wiki/ReverseGeocoding

da geocodificatori di importazione geopy

g = geocoders.GeoNames() (place, point) = g.geocode("Palo Alto, CA 94306") print place >> "Palo Alto, US 94306" print point >> (37.418008999999998, -122.127375) (new_place,new_point) = g.reverse(point) print new_place >> 3998 Ventura Ct, Palo Alto, US 94306 print new_point >> (37.417850000000001, -122.12793000000001) 

Funziona bene fino al punto di stampa. Si verifica un errore con g.reverse(point)

Traceback (most recent call last): File "<interactive input>", line 1, in <module> File "C:\Python27\lib\site-packages\geopy\geocoders\base.py", line 9, in reverse raise NotImplementedError NotImplementedError 

Suggerimenti?

Commenti

  • Hmmm, su OSX con la versione 0.95.1 di geopy in virtualenv ottengo un NotImplementedError su g.reverse(point) pure. ' penso che forse non ' non sia ancora arrivato da dev a trunk? Potrei parlare con il manutentore di geopy.

Risposta

Hai installato il ramo di sviluppo, come menzionato nel link che hai fornito?

La funzione di geocodifica inversa è attualmente in una versione sperimentale ma ramo di sviluppo stabile , che puoi ritirare qui:

svn checkout http://geopy.googlecode.com/svn/branches/reverse-geocode geopy

cd geopy / sudo

python setup.py install

Potresti avere per eliminare la vecchia installazione di geopy.

Risposta

Geocodifica inversa disponibile su geopy 0.97. Puoi scaricare e installare la nuova versione di geopy da https://github.com/geopy/geopy o clonare il repository git.

git clone https://github.com/geopy/geopy.git cd geopy sudo python setup.py install 

Se desideri scaricare e installare per Windows, puoi ottenere una versione più recente da https://github.com/geopy/geopy /archive/release-0.97.zip

Decomprimere e

cd geopy-release-0.97 python setup.py install 

per geolocalizzare una query in un indirizzo e coordinate:

 >>> from geopy.geocoders import GoogleV3 >>> geolocator = GoogleV3() >>> address, (latitude, longitude) = geolocator.geocode("175 5th Avenue NYC") >>> print(address, latitude, longitude) 175 5th Avenue, New York, NY 10010, USA 40.7410262 -73.9897806  

Per trovare lindirizzo corrispondente a un insieme di coordinate :

 >>> from geopy.geocoders import GoogleV3 >>> geolocator = GoogleV3() >>> address, (latitude, longitude) = geolocator.reverse("40.752067, -73.977578") >>> print(address, latitude, longitude) 77 East 42nd Street, New York, NY 10017, USA 40.7520802 -73.9775683  


Risposta a https://stackoverflow.com/a/20991832/2509803

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *