[Python] 纯文本查看 复制代码'''

文件名:L17.py

作者:小饭团

创建时间:2019年1月11日15:17:03

文件描述:调用Web服务API接口,百度地图路线规划 正/逆地理编码

'''

#-*- coding:utf-8 -*-

import urllib.parse

import urllib.request

import json

key='62PM27fx1Fbhq1pOWdpRlWt2o9B8tL9O'

#自定义类型

'''

属性名1:x 用于存储经度 类型 float

属性名2:y 用于存储纬度 类型 float

'''

class locationXY:

def __init__(self,x,y):

self.x=x

self.y=y

#正/逆地理编码

'''

函数名:getLocation

参数一:address 地名 类型 str 内部字符串类型

返回自定义类型数据 locationXY

'''

def getLocation(address):

data = urllib.parse.urlencode({'address': address, 'output': 'json','ak':key})

response = urllib.request.urlopen('http://api.map.baidu.com/geocoder/v2/?%s' % data)

html = response.read()

data = html.decode('utf-8')

result=json.loads(data)

lng=(result['result']['location']['lng'])

lat=(result['result']['location']['lat'])

l=locationXY(lng,lat)

return l

#百度地图路线规划服务

'''

函数名:计算所有路线

参数一:origin 起点位置 自定义类型locationXY

参数二:destionation 终点位置 自定义类型locationXY

无返回值

'''

def 计算所有路线(origin,destionation):

'''

tactics_incity 市内公交换乘策略

可选,默认为0

可选值:

0 推荐

1 少换乘

2 少步行

3 不坐地铁

4 时间短

5 地铁优先

'''

tactics_incity=0

data = urllib.parse.urlencode({'origin':'%s,%s'%(origin.y,origin.x),'destination':'%s,%s'%(destionation.y,destionation.x),'tactics_incity':tactics_incity,'ak':key})

response = urllib.request.urlopen('http://api.map.baidu.com/direction/v2/transit?%s' % data)

html = response.read()

data = html.decode('utf-8')

result = json.loads(data)

#print(data)

路线总数 = result['result']['total']

if (result['status']==0):

for x in range(路线总数):

if (result['status']==0):

distance=result['result']['routes'][x]['distance']

duration=result['result']['routes'][x]['duration']

print('路线:%s,距离%s米,花费%s分钟'%(x,distance,duration/60))

else:

print('error : %d'%result['status'])

'''

status 备注

0:成功

1:服务器内部错误

2:参数无效

1001:没有公交方案

1002:没有匹配的POI

'''

def main():

l1 = locationXY(113.464838,23.111949)#大沙东地铁站的坐标

l2 = getLocation('御富科贸园b2座205-20')

#print("%s\n%s"%(l1.x,l1.y))

计算所有路线(l1,l2)

#l2 =

if __name__ == '__main__':

main()

python调用百度地图画轨迹图_[python]百度地图API,正/逆地理编码,路线规划接口的调用,实现输出出行的距离和......相关推荐

  1. python调用百度地图画轨迹图_[宜配屋]听图阁

    如题,先上效果图: 主要分为两大步骤 使用python语句,通过百度地图API,对已知的地名抓取经纬度 使用百度地图API官网的html例程,修改数据部分,实现呈现效果 一.使用python语句,通过 ...

  2. 百度地图Web服务API——正/逆地理编码服务

    正/逆地理编码服务(又名Geocoding API)是一类Web API接口服务: 正向地理编码服务提供将结构化地址数据(如:北京市海淀区上地十街十号)转换为对应坐标点(经纬度)功能: 逆向地理编码服 ...

  3. python调用百度地图画轨迹图_百度地图 API 绘制路线

    后台拿到数据返回给了jsp页面,并且显示到了地图上 . 现在要根据两个位点.绘制出他们之间的路线. 有实现过这个功能的大神,给指点一下,如果有实例,那当热是最好了. 下面是 : 我显示坐标的代码: v ...

  4. python调用百度地图实现导航pc_[python]百度地图API,正/逆地理编码,路线规划接口的调用,实现输出出行的距离和......

    [Python] 纯文本查看 复制代码''' 文件名:L17.py 作者:小饭团 创建时间:2019年1月11日15:17:03 文件描述:调用Web服务API接口,百度地图路线规划 正/逆地理编码 ...

  5. 百度地图WEB服务-逆地理编码使用心得

    百度地图WEB服务-逆地理编码使用心得 逆地理编码接口 Postman接口请求测试 POI信息召回 Postman接口请求测试 上一篇博文写了我开发项目中最长用的正地理编码接口的博文,这次想总结一下逆 ...

  6. python百度地图api经纬度_详解用Python调用百度地图正/逆地理编码API

    一.背景 (正)地理编码指的是:将地理位置名称转换成经纬度: 逆地理编码指的是:将经纬度转换成地理位置信息,如地名.所在的省份或城市等 百度地图提供了相应的API,可以方便调用.相应的说明文档如下: ...

  7. 20211226业务总结--python实现坐标转换和正逆地理编码

    本文参考了github开源爬虫项目map-easygo,GitHub - liujiao111/map-easygo: 使用python爬取微信宜出行人流量数据 首先是导入相关的库和计算要用到的参数: ...

  8. 百度地图api-全球逆地理编码

    全球逆地理编码服务 (又名Geocoder)是一类Web API接口服务: 逆地理编码服务提供将坐标点(经纬度)转换为对应位置信息(如所在行政区划,周边地标点分布)功能. 服务同时支持全球行政区划位置 ...

  9. Java经纬度画轨迹图_利用百度地图JavaScript API绘制运动轨迹

    写在前面 欢迎访问我的博客 如果需要使用百度地图javasript api,需先进行开发者认证,balalalala写上一堆理由之后认证就行,然后创建浏览器端的应用,得到可用的Ak,详情见百度地图开放 ...

最新文章

  1. ruby中取反的问题
  2. Java自然语言处理
  3. 复制迁移数据库表数据程序
  4. 备份表到存在的表或者自动新建表
  5. 学习在网页中应用大图片背景的20个精美案例
  6. C++Primer模板
  7. vue动画transition(笔记)
  8. Discuz 7.2 /faq.php SQL注入漏洞
  9. 给所有的input设置 autocomplete=off
  10. 一行Python代码能干什么?惊了!
  11. JQueryDOM之修改节点
  12. 河南联通中兴B860AV1.2_S905M-B_线刷刷机固件及教程
  13. 一个毕业设计手机病毒软件查杀
  14. nginx 配置外网域名跳转到内网地址加端口的教程
  15. 物联网应用技术有哪些?
  16. PlayYou 捉弄人软件(手机控制电脑)
  17. jar启动出错:Failed to get nested archive for entry BOOT-INF/lib/activiti-core-common-dependencies-7.1.0
  18. laravel从入门到精通之 php excel设置单元格边框只显示竖条
  19. 如何获取淘宝/天猫店铺的所有商品 API数据
  20. linux iso挂载报错,linux下文件系统、iso挂载

热门文章

  1. linux管理用户组,技术|如何在 Linux 系统中通过用户组来管理用户
  2. mongo mysql 聚合性能_Mongodb和Mysql的性能分析
  3. 如何定义中文转语音的语气
  4. mac邮件过滤器SpamSieve,支持任意类型的任意数量的电子邮件帐户
  5. Kubernetes StatefulSet源码分析
  6. Android Paint应用之自定义View实现进度条控件
  7. 终于等到你:CYQ.Data V5系列 (ORM数据层)最新版本开源了
  8. 金碧辉煌!皇城定制5月22日正式对外运营开业!
  9. 中继器中继后怎么进入后台重新设置
  10. 长期使用中型Access数据库的一点经验