Python地理编码工具箱
项目描述
geopy是几个流行的地理编码Web服务的Python客户端。
geopy让Python开发者能够轻松地使用第三方地理编码器和其它数据源,在全球范围内定位地址、城市、国家和地标的位置坐标。
geopy 包含了针对 OpenStreetMap Nominatim、Google 地理编码 API (V3) 以及许多其他地理编码服务的地理编码类。完整列表可在 地理编码器文档部分 查找。地理编码类位于 geopy.geocoders。
geopy 已在 CPython(版本 3.7、3.8、3.9、3.10、3.11、3.12)和 PyPy3 上进行了测试。geopy 1.x 版本还支持 CPython 2.7、3.4 和 PyPy2。
© geopy 贡献者 2006-2018(见 AUTHORS)在 MIT 许可证 下。
安装
使用 pip 安装
pip install geopy
或者,从 PyPI 下载 wheel 或源存档。
地理编码
要将查询定位到地址和坐标
>>> from geopy.geocoders import Nominatim
>>> geolocator = Nominatim(user_agent="specify_your_app_name_here")
>>> location = geolocator.geocode("175 5th Avenue NYC")
>>> print(location.address)
Flatiron Building, 175, 5th Avenue, Flatiron, New York, NYC, New York, ...
>>> print((location.latitude, location.longitude))
(40.7410861, -73.9896297241625)
>>> print(location.raw)
{'place_id': '9167009604', 'type': 'attraction', ...}
要找到对应一组坐标的地址
>>> from geopy.geocoders import Nominatim
>>> geolocator = Nominatim(user_agent="specify_your_app_name_here")
>>> location = geolocator.reverse("52.509669, 13.376294")
>>> print(location.address)
Potsdamer Platz, Mitte, Berlin, 10117, Deutschland, European Union
>>> print((location.latitude, location.longitude))
(52.5094982, 13.3765983)
>>> print(location.raw)
{'place_id': '654513', 'osm_type': 'node', ...}
测量距离
Geopy 可以使用 大地线距离 或 大圆距离 计算两点之间的距离,默认为大地线距离,该距离可用作函数 geopy.distance.distance。
以下是大地线距离的示例用法,使用一对 (纬度, 经度)
元组
>>> from geopy.distance import geodesic
>>> newport_ri = (41.49008, -71.312796)
>>> cleveland_oh = (41.499498, -81.695391)
>>> print(geodesic(newport_ri, cleveland_oh).miles)
538.390445368
使用大圆距离,也使用一对 (纬度, 经度)
元组
>>> from geopy.distance import great_circle
>>> newport_ri = (41.49008, -71.312796)
>>> cleveland_oh = (41.499498, -81.695391)
>>> print(great_circle(newport_ri, cleveland_oh).miles)
536.997990696
文档
更多文档和示例可在 Read the Docs 上找到。
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。
源分发
geopy-2.4.1.tar.gz (117.6 kB 查看哈希值)
构建分发
geopy-2.4.1-py3-none-any.whl (125.4 kB 查看哈希值)
关闭
geopy-2.4.1.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 50283d8e7ad07d89be5cb027338c6365a32044df3ae2556ad3f52f4840b3d0d1 |
|
MD5 | bf770e94c179ceffdb63df7a6ed67fe8 |
|
BLAKE2b-256 | 0efdef6d53875ceab72c1fad22dbed5ec1ad04eb378c2251a6a8024bad890c3b |
关闭
geopy-2.4.1-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | ae8b4bc5c1131820f4d75fce9d4aaaca0c85189b3aa5d64c3dcaf5e3b7b882a7 |
|
MD5 | ca3f24b601cffcbf405db5c4952fe475 |
|
BLAKE2b-256 | e515cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539 |