Google的没用过,百度的用过,挺简单的。你可以使用我的开发者代码去体验一下。
import urllib2
import json
address = u'沈阳市和平区三好街'
key = u'RG3NWsfviWGCbRbWEXeY78BP'
url = u'
http://api.map.baidu.com/geocoder/v2/?address=%s&output=json&ak=%s' % (address, key)
url = url.encode('utf-8')
response = urllib2.urlopen(url)
response_text = response.read()
#获取指定位置的经纬度
x = json.loads(response_text)[u'result'][u'location'][u'lng']
y = json.loads(response_text)[u'result'][u'location'][u'lat']
上面那个例子是后台获取坐标的
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<style type="text/css">
body, html{width: 100%;height: 100%;margin:0;font-family:"微软雅黑";}
#l-map{height:70%;width:100%;}
#r-result {width:100%; font-size:14px;line-height:20px;}
</style>
<script type="text/javascript" src="
http://api.map.baidu.com/api?v=2.0&ak=RG3NWsfviWGCbRbWEXeY78BP"></script> <title>获取公交换乘的数据接口</title>
</head>
<body>
<div id="l-map"></div>
<div id="r-result"></div>
</body>
</html>
<script type="text/javascript">
// 百度地图API功能
var map = new BMap.Map("l-map");
map.centerAndZoom(new BMap.Point(124.23, 40.07), 13);
map.enableScrollWheelZoom();
var transit = new BMap.TransitRoute(map, {renderOptions: {map: map},onSearchComplete: function(result){
if (transit.getStatus() == BMAP_STATUS_SUCCESS){
var firstPlan = result.getPlan(0);
// 绘制步行线路
for (var i = 0; i < firstPlan.getNumRoutes(); i++){
var walk = firstPlan.getRoute(i);
if (walk.getDistance(false) > 0){
// 步行线路有可能为0
map.addOverlay(new BMap.Polyline(walk.getPath(), {lineColor: "green"}));
}
}
// 绘制公交线路
for (i = 0; i < firstPlan.getNumLines(); i++){
var line = firstPlan.getLine(i);
map.addOverlay(new BMap.Polyline(line.getPath()));
}
// 输出方案信息
var s = [];
for (i = 0; i < result.getNumPlans(); i++){
s.push((i + 1) + ". " + result.getPlan(i).getDescription());
}
document.getElementById("r-result").innerHTML = s.join("<br/>");
}
}
});
//transit.search("沈阳市和平区三好街", "北行");
</script>
这个例子是后台获取坐标后送到前台,然后调用公交接口,
这两个例子都是可以单独运行的,你自己是一下吧。