Jutilise Geopy . Jobtiens lerreur suivante pour le code.
Jai utilisé le même code que sur https://code.google.com/p/geopy/wiki/ReverseGeocoding
à partir des géocodeurs dimportation de géopies
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)
Fonctionne bien jusquau point dimpression. Une erreur se produit avec 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
Des suggestions?
Commentaires
Réponse
Avez-vous installé la branche de développement, comme il la mentionné dans le lien que vous avez fourni?
La fonction de géocodage inversé est actuellement dans un test mais branche de développement stable , que vous pouvez vérifier ici:
svn checkout http://geopy.googlecode.com/svn/branches/reverse-geocode geopy
cd geopy / sudo
python setup.py install
Vous avez peut-être pour supprimer votre ancienne installation Geopy.
Réponse
Géocodage inversé disponible sur geopy 0.97. Vous pouvez télécharger et installer une nouvelle version de geopy à partir de https://github.com/geopy/geopy ou cloner le dépôt git.
git clone https://github.com/geopy/geopy.git cd geopy sudo python setup.py install
Si vous souhaitez télécharger et installer pour Windows, vous pouvez obtenir une dernière version depuis https://github.com/geopy/geopy /archive/release-0.97.zip
Décompressez et
cd geopy-release-0.97 python setup.py install
Pour géolocaliser une requête vers un adresse et coordonnées:
>>> 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
Pour trouver ladresse correspondant à un ensemble de coordonnées :
>>> 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
–
Réponse à https://stackoverflow.com/a/20991832/2509803
NotImplementedError
surg.reverse(point)
ainsi. Je ' je pense que peut-être n’a pas ' être encore passé du développement au tronc? Vous voudrez peut-être obtenir avec le mainteneur de geopy.