Geopy を使用しています。コードで次のエラーが発生します。
https://code.google.com/p/geopy/wiki/ReverseGeocoding aと同じコードを使用しています>
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)
印刷ポイントまで正常に動作します。 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
何か提案がありますか?
コメント
回答
前述のように、開発ブランチをインストールしましたか?提供したリンクにありますか?
逆ジオコーディング機能は 現在実験中ですが、安定した開発ブランチ 、ここでチェックアウトできます:
svn checkout http://geopy.googlecode.com/svn/branches/reverse-geocode geopy
cd geopy / sudo
python setup.py install
古いgeopyインストールを削除します。
回答
geopy0.97で利用可能な逆ジオコーディング。 https://github.com/geopy/geopy から新しいバージョンのgeopyをダウンロードしてインストールするか、gitリポジトリのクローンを作成できます。
git clone https://github.com/geopy/geopy.git cd geopy sudo python setup.py install
Windows用にダウンロードしてインストールする場合は、 https://github.com/geopy/geopy /archive/release-0.97.zip
解凍して
cd geopy-release-0.97 python setup.py install
クエリをアドレスと座標:
>>> 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
一連の座標に対応するアドレスを検索するには:
>>> 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
–
https://stackoverflow.com/a/20991832/2509803
g.reverse(point)
でNotImplementedError
を取得します。 div>も同様です。 'これは多分まだ開発からトランクに到達していないと思いますか?' geopyメンテナと一緒に行きたいかもしれません。