python通过百度地图API获取某地址的经纬度详解


Posted in Python onJanuary 28, 2018

前言

这几天比较空闲,就接触了下百度地图的API(开发者中心链接地址:http://developer.baidu.com),发现调用还是挺方便的,本文将给大家详细的介绍关于python通过百度地图API获取某地址的经纬度的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

申请百度API

1、打开网页 http://lbsyun.baidu.com/index.php?title=首页

选择功能与服务中的地图,点击左边的获取密匙,然后按照要求申请即可,需要手机和百度账号及邮箱认证。

python通过百度地图API获取某地址的经纬度详解

python通过百度地图API获取某地址的经纬度详解

激活后可看到后台页面,现在可以开始创建应用了,这里请求校验方式有两种,一种是白名单IP,另一种是SN校验(旁边有计算的说明),我选择SN校验:

python通过百度地图API获取某地址的经纬度详解

成功后会获得自己的AK和SK,接下来说明如何计算sn

计算SN(python3.x) 

from urllib import parse
import hashlib 
def get_urt(addtress): 
 # 以get请求为例http://api.map.baidu.com/geocoder/v2/?address=百度大厦&output=json&ak=你的ak
 queryStr = '/geocoder/v2/?address=%s&output=json&ak=你的ak' % addtress 
 # 对queryStr进行转码,safe内的保留字符不转换
 encodedStr = parse.quote(queryStr, safe="/:=&?#+!$,;'@()*[]") 
 # 在最后直接追加上yoursk
 rawStr = encodedStr + '你的sk' 
 #计算sn
 sn = (hashlib.md5(parse.quote_plus(rawStr).encode("utf8")).hexdigest())  
 #由于URL里面含有中文,所以需要用parse.quote进行处理,然后返回最终可调用的url
 url = parse.quote("http://api.map.baidu.com"+queryStr+"&sn="+sn, safe="/:=&?#+!$,;'@()*[]")  
 return url

该url可直接进行进行访问,返回的是json格式,如下

{"status":0,"result":{"location":{"lng":116.50104690641698,"lat":39.79092147361288},"precise":1,"confidence":80,"level":"地产小区"}}

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
python绘图库Matplotlib的安装
Jul 03 Python
在windows系统中实现python3安装lxml
Mar 23 Python
python查看模块安装位置的方法
Oct 16 Python
Python读取Pickle文件信息并计算与当前时间间隔的方法分析
Jan 30 Python
Python实现操纵控制windows注册表的方法分析
May 24 Python
centos7之Python3.74安装教程
Aug 15 Python
python创建学生成绩管理系统
Nov 22 Python
Macbook安装Python最新版本、GUI开发环境、图像处理、视频处理环境详解
Feb 17 Python
jupyter notebook 恢复误删单元格或者历史代码的实现
Apr 17 Python
Python正则表达式如何匹配中文
May 27 Python
python爬虫调度器用法及实例代码
Nov 30 Python
python中的None与NULL用法说明
May 25 Python
python中的随机函数小结
Jan 27 #Python
python中的随机函数random的用法示例
Jan 27 #Python
Python闭包之返回函数的函数用法示例
Jan 27 #Python
详解如何利用Cython为Python代码加速
Jan 27 #Python
详解Python 实现元胞自动机中的生命游戏(Game of life)
Jan 27 #Python
Python实现的栈(Stack)
Jan 26 #Python
使用python实现链表操作
Jan 26 #Python
You might like
在PHP中养成7个面向对象的好习惯
2010/07/17 PHP
php递归创建和删除文件夹的代码小结
2012/04/13 PHP
php+ajax实现无刷新的新闻留言系统
2020/12/21 PHP
PHP中strpos、strstr和stripos、stristr函数分析
2016/06/11 PHP
ThinkPHP打水印及设置水印位置的方法
2016/10/14 PHP
YII中Ueditor富文本编辑器文件和图片上传的配置图文教程
2017/03/15 PHP
JS面向对象编程 for Cookie
2010/09/19 Javascript
ASP.NET中基于JQUERY的高性能的TreeView补充
2011/02/23 Javascript
js获取URL的参数的方法(getQueryString)示例
2013/09/29 Javascript
三种动态加载js的jquery实例代码另附去除js方法
2014/04/30 Javascript
javascript的document.referrer浏览器支持、失效情况总结
2014/07/18 Javascript
小米公司JavaScript面试题
2014/12/29 Javascript
js实现无缝循环滚动
2020/06/23 Javascript
微信小程序 选择器(时间,日期,地区)实例详解
2016/11/16 Javascript
基于vue实现多引擎搜索及关键字提示
2017/03/16 Javascript
微信小程序实现点击按钮修改view标签背景颜色功能示例【附demo源码下载】
2017/12/06 Javascript
angular.js和vue.js中实现函数去抖示例(debounce)
2018/01/18 Javascript
Vue项目中使用Vux的安装过程
2018/05/01 Javascript
微信小程序使用setData修改数组中单个对象的方法分析
2018/12/30 Javascript
mui js控制开关状态、修改switch开关的值方法
2019/09/03 Javascript
vuex根据不同的用户权限展示不同的路由列表功能
2019/09/20 Javascript
uniapp 仿微信的右边下拉选择弹出框的实现代码
2020/07/12 Javascript
JS实现页面鼠标点击出现图片特效
2020/08/19 Javascript
vue3自定义dialog、modal组件的方法
2021/01/04 Vue.js
python 捕获shell脚本的输出结果实例
2017/01/04 Python
python使用原始套接字发送二层包(链路层帧)的方法
2019/07/22 Python
python实现简单飞行棋
2020/02/06 Python
Python3加密解密库Crypto的RSA加解密和签名/验签实现方法实例
2020/02/11 Python
美国著名的婴儿学步鞋老品牌:Robeez
2016/08/20 全球购物
J2EE包括哪些技术
2016/11/25 面试题
一个大学生十年的职业规划
2014/01/17 职场文书
软件毕业生个人鉴定
2014/03/03 职场文书
员工年终自我评价
2014/09/14 职场文书
关于成绩下滑的自我检讨书
2014/09/20 职场文书
新教师个人总结
2015/02/06 职场文书
2015年七一建党节活动方案
2015/05/05 职场文书