python调用百度地图api定位_Python调用百度地图API(路线规划、POI检索)

#-*- coding:utf-8 -*-#获取最短路径及时间

importrequestsimportxlrdfrom urllib2 importurlopen, quoteimportjsonimportsysimporttimeimportmath

reload(sys)

sys.setdefaultencoding("utf-8")classderection:#这个函数是求两个坐标点的直线距离

#参考http://blog.csdn.net/qq_29933359/article/details/53516440

defgetDistance(self,origin,destination):

start_lat=origin.split(',')[0]

start_lng=origin.split(',')[1]

end_lat= destination.split(',')[0]

end_lng= destination.split(',')[1]

lat1= (math.pi / 180) *float(start_lat)

lat2= (math.pi / 180) *float(end_lat)

lon1= (math.pi / 180) *float(start_lng)

lon2= (math.pi / 180) *float(end_lng)#print start_lat,start_lng,end_lat,end_lng

#地球半径

R = 6371distance= math.acos(math.sin(lat1) * math.sin(lat2) + math.cos(lat1) * math.cos(lat2) * math.cos(abs(lon2 - lon1))) * R*1000

#print distance

returndistance#直线距离少于2公里就选择步行

defgetwalkduration(self,origin,destination):#url='http://api.map.baidu.com/direction/v2/riding?'

url='http://api.map.baidu.com/direction/v1?mode=walking&region=武汉'output= 'json'ak= '···'uri= url + '&origin=

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值