浏览器版本低!无法浏览完整内容,建议升级或更换浏览器。

WEB 服务API

百度地图Web服务API为开发者提供http/https接口,即开发者通过http/https形式发起检索请求,获取返回json或xml格式的检索数据。用户可以基于此开发JavaScript、C#、C++、Java等语言的地图应用。

服务介绍
服务文档
使用指南
常见问题
更新日志
资源下载
地理编码服务

地理编码服务(又名Geocoder)是一类Web API接口服务;
正地理编码服务提供将结构化地址数据(如:北京市海淀区上地十街十号)转换为对应坐标点(经纬度)功能;
地理编码服务当前未推出国际化服务,解析地址仅限国内;

功能介绍
地理编码服务

用户可通过该功能,将结构化地址(省/市/区/街道/门牌号)解析为对应的位置坐标。地址结构越完整,地址内容越准确,解析的坐标精度越高。

GC.png


接口功能介绍
地理编码
http://api.map.baidu.com/geocoder/v2/?address=北京市海淀区上地十街10号&output=json&ak=您的ak&callback=showLocation //GET请求
请求参数
参数名 参数含义 类型 举例 默认值 是否必须
address 待解析的地址。最多支持84个字节。
可以输入两种样式的值,分别是: 
1、标准的结构化地址信息,如北京市海淀区上地十街十号 【推荐,地址结构越完整,解析精度越高】
2、支持“*路与*路交叉口”描述方式,如北一环路和阜阳路的交叉路口
第二种方式并不总是有返回结果,只有当地址库中存在该地址描述时才有返回。
string 北京市海淀区上地十街10号
city 地址所在的城市名。用于指定上述地址所在的城市,当多个城市都有上述地址时,该参数起到过滤作用,但不限制坐标召回城市。 string 北京市

ret_coordtype 可选参数,添加后返回国测局经纬度坐标或百度米制坐标 坐标系说明 string gcj02ll(国测局坐标)、bd09mc(百度墨卡托坐标) bd09ll(百度经纬度坐标)
ak 用户申请注册的key,自v2开始参数修改为“ak”,之前版本参数为“key” 申请ak string

sn 若用户所用ak的校验方式为sn校验时该参数必须 
sn生成
string

output 输出格式为json或者xml string json或xml xml
callback 将json格式的返回值通过callback函数返回以实现jsonp功能 string callback=showLocation(JavaScript函数名)
返回结果参数
名称
含义 类型
status
返回结果状态值, 成功返回0,其他值请查看下方返回码状态表。 int
location
经纬度坐标 object

lat 纬度值 float

lng 经度值 float
precise
位置的附加信息,是否精确查找。1为精确查找,即准确打点;0为不精确,即模糊打点。 int
confidence
可信度,描述打点准确度,大于80表示误差小于100m。该字段仅作参考,返回结果准确度主要参考precise参数。 int
comprehension 地址理解程度。分值范围0-100,分值越大,服务对地址理解程度越高(建议以该字段作为解析结果判断标准)
当comprehension值为以下值时,对应的准确率如下:
comprehension=100,解析误差100m内概率为91%,误差500m内概率为96%;
comprehension≥90,解析误差100m内概率为89%,误差500m内概率为96%;
comprehension≥80,解析误差100m内概率为88%,误差500m内概率为95%;
comprehension≥70,解析误差100m内概率为84%,误差500m内概率为93%;
comprehension≥60,解析误差100m内概率为81%,误差500m内概率为91%;
comprehension≥50,解析误差100m内概率为79%,误差500m内概率为90%;
//解析误差:地理编码服务解析地址得到的坐标位置,与地址对应的真实位置间的距离。
int
level
能精确理解的地址类型,包含:UNKNOWN、国家、省、城市、区县、乡镇、村庄、道路、地产小区、商务大厦、政府机构、交叉路口、商圈、生活服务、休闲娱乐、餐饮、宾馆、购物、金融、教育、医疗 、工业园区 、旅游景点 、汽车服务、火车站、长途汽车站、桥 、停车场/停车区、港口/码头、收费区/收费站、飞机场 、机场 、收费处/收费站 、加油站、绿地、门址 string

服务状态码
返回码 英文描述 定义 常见原因
0 ok 正常 服务请求正常召回
1
服务器内部错误

2 Parameter Invalid 请求参数非法 必要参数拼写错误或漏传(如query和tag请求中均未传入)
3 Verify Failure 权限校验失败
4 Quota Failure 配额校验失败 服务当日调用次数已超限,请前往API控制台提升(请优先进行开发者认证
5 AK Failure ak不存在或者非法 未传入ak参数;ak已被删除(可前往回收站恢复);
101

服务禁用

102

不通过白名单或者安全码不对

2xx

无权限

3xx

配额错误

使用方法
编码说明

API请求中需要用到中文或一些特殊字符的参数,如query、region等,为了避免提交到后台乱码,需要对这几个参数值进行编码处理,转换成UTF-8字符的二字符十六进制值,凡是不在下表中的字符都需要进行编码。

字符集合 字符
URL非保留字
a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 - _ . ~
URL保留字
 ! * ' ( ) ; : @ & = + $ , / ? % # [ ]

如果中文参数中使用URL保留字字符的字面意思,例如:region关键字取值为"?北京",检索关键字包含一个问号,此问号也必须进行编码。

附注:

javascript中一般采用encodeURIComponent函数对特殊字符进行编码。

Java中可以使用函数URLEncoder.encode对特殊字符进行编码。

C#中可以使用函数HttpUtility.UrlEncode对特殊字符进行编码。

php中可以使用函数urlencode对特殊字符进行编码。


坐标系说明

WGS84:为一种大地坐标系,也是目前广泛使用的GPS全球卫星定位系统使用的坐标系。

GCJ02:是由中国国家测绘局制订的地理信息系统的坐标系统。由WGS84坐标系经加密后的坐标系。

BD09:为百度坐标系,在GCJ02坐标系基础上再次加密。其中bd09ll表示百度经纬度坐标,bd09mc表示百度墨卡托米制坐标

正/逆地理编码服务默认输入输出坐标类型为百度坐标(BD09),同时可通过参数("coord_type","ret_coordtype")控制输入输出坐标类型。输入坐标支持以上三种坐标系,输出坐标支持-国测局坐标(GCJ02)和百度坐标(BD09)

注意:不同类型坐标如需转换,请使用百度地图开放平台提供的标准坐标转换接口。请勿使用其他渠道提供的坐标转换方法,以免影响坐标转换精度。

服务使用限制

服务相关配额及并发请求限制请访问开发者权益页面查看。

服务常见问题
1、为什么地理编码服务解析的地址坐标与真实位置有偏差?

对地理编码影响最大的是请求中地址的完整度和准确度。请求地址结构越完整(包含省、市、区县、乡镇、街道、门牌),各级地址越准确,最后解析的坐标就越精准。
如请求中的地址质量已经很高,仍无法解析到准确坐标,则可能是百度门址库暂未覆盖该地址,我们会持续提升数据覆盖。
这类解析结果,一般precise=0,建议通过该字段,过滤非精确解析结果。

2、同一个地址,为什么使用百度地图客户端能准确检索对应坐标,而正向地理编码服务确解析错误?

百度地图客户端针对poi的address数据进行检索,而正向地理编码则针对专业的「门址」数据进行解析,两份数据不同。
问题已知,我们将在之后的服务版本中排期修复。

2012年5月23日

V1.0

2013年4月7日

V2.0


产品发布
全新Geocoding API产品上线
新增功能
地理编码服务
增加回调函数,解决js使用ajax不能跨域请求数据问题。

服务资源下载
百度地图POI行业分类(tag)

您可以通过此链接获知百度地图POI(兴趣点)的tag引导体系,辅助您检索POI。 如检索query为百度地图的tag“生活服务”,返回的检索结果即包含关键字为“生活服务”的POI、也包含tag为“生活服务”的POI,从而聚焦检索结果。