开发者社区> examplecode> 正文

Python地理位置信息库geopy的使用(一):基本使用

简介: geopy是Python关于地理位置的一个第三方库,用这个库来进行地址位置信息的查询和转换非常方便,本文介绍关于geopy的常用的几种用法 geopy的安装 pip install geopy 根据地址查询坐标及详细信息 >>> import json, logging >>> from geopy.
+关注继续查看

geopy是Python关于地理位置的一个第三方库,用这个库来进行地址位置信息的查询和转换非常方便,本文介绍关于geopy的常用的几种用法

geopy的安装

pip install geopy

根据地址查询坐标及详细信息

>>> import json, logging
>>> from geopy.geocoders import Nominatim
>>> geolocator = Nominatim()
>>> location = geolocator.geocode("北京天安门")
>>> print location.address
天安门, 1, 西长安街, 崇文, 北京市, 东城区, 北京市, 100010, 中国
>>> print (location.latitude, location.longitude)
(39.90733345, 116.391244079988)
>>> print json.dumps(location.raw, indent=4, ensure_ascii=False, encoding='utf8')
{
    "display_name": "天安门, 1, 西长安街, 崇文, 北京市, 东城区, 北京市, 100010, 中国", 
    "importance": 0.00025, 
    "place_id": "74005413", 
    "lon": "116.391244079988", 
    "lat": "39.90733345", 
    "osm_type": "way", 
    "licence": "Data © OpenStreetMap contributors, ODbL 1.0. https://osm.org/copyright", 
    "osm_id": "25097203", 
    "boundingbox": [
        "39.9072273", 
        "39.9075343", 
        "116.3906566", 
        "116.3918428"
    ], 
    "type": "yes", 
    "class": "building"
}

根据坐标信息查询地址

>>> import json, logging
>>> from geopy.geocoders import Nominatim
>>> geolocator = Nominatim()
>>> location = geolocator.reverse("39.90733345,116.391244079988")
>>> print location.address
天安门, 1, 西长安街, 崇文, 北京市, 东城区, 北京市, 100010, 中国
>>> print json.dumps(location.raw, indent=4, ensure_ascii=False, encoding='utf8')
{
    "display_name": "天安门, 1, 西长安街, 崇文, 北京市, 东城区, 北京市, 100010, 中国", 
    "place_id": "74005413", 
    "lon": "116.391244079988", 
    "boundingbox": [
        "39.9072273", 
        "39.9075343", 
        "116.3906566", 
        "116.3918428"
    ], 
    "osm_type": "way", 
    "licence": "Data © OpenStreetMap contributors, ODbL 1.0. https://osm.org/copyright", 
    "osm_id": "25097203", 
    "lat": "39.90733345", 
    "address": {
        "building": "天安门", 
        "city": "北京市", 
        "house_number": "1", 
        "country": "中国", 
        "suburb": "东城区", 
        "state": "北京市", 
        "postcode": "100010", 
        "country_code": "cn", 
        "road": "西长安街"
    }
}

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Python WMI获取Windows系统信息 监控系统
1 #!/usr/bin/env python 2 # -*- coding: utf-8 -*- 3 #http://www.cnblogs.com/liu-ke/ 4 import wmi 5 import os 6 import sys 7 import...
1114 0
Python 图像处理篇-利用opencv库展示本地图片实例演示
Python 图像处理篇-利用opencv库展示本地图片实例演示
49 0
iphone的系统信息使用[UIDevice currentDevice]
<p style="line-height:28px; margin-top:0px; margin-bottom:0px; padding-top:0px; padding-bottom:0px; color:rgb(51,51,51); font-family:宋体; font-size:16px; border-width:0px; list-style:none"> 获取ipho
1240 0
使用javascript获取wx.config内部字段解决微信分享
背景 在微信分享开发的时候我们通常的流程是 微信分享 wx.config({ appId: '', timestamp...
1024 0
Redis-GEO地理位置
Redis-GEO地理位置
618 0
Geoffrey Hinton讲座回顾:使用快速权重来存储临时记忆
这个讲座谈了快速权重(fast weight)的思想及其实现。这种快速权重可以被用于存储最近的临时记忆,并且它们提供了一种实现这种类型的对过去的注意(attention)的神经上可行的方法——近期它已被证明在序列到序列模型上是非常有帮助的。通过使用快速权重,我们可以不再需要存储神经活动模式的副本。
64 0
HTML5 地理位置定位(HTML5 Geolocation)原理及应用
  地理位置(Geolocation)是 HTML5 的重要特性之一,提供了确定用户位置的功能,借助这个特性能够开发基于位置信息的应用。今天这篇文章向大家介绍一下 HTML5 地理位置定位的基本原理及各个浏览器的数据精度情况。
993 0
+关注
examplecode
资深全栈开发工程师,拥有十余年软件开发工作经验。曾效力于大型上市互联网公司,担任高级开发职务,目前致力于使用技术创造更大的价值。
41
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
JS零基础入门教程(上册)
立即下载
性能优化方法论
立即下载
手把手学习日志服务SLS,云启实验室实战指南
立即下载