Bus/station

跳转到: 导航, 搜索

目录

bus/station

根据线路关键字或城市代码等进行搜索,返回公交站点信息

URL

http://api.t.sina.com.cn/location/bus/station.(json%7Cxml)

支持格式

XML/JSON

HTTP请求方式

GET

是否需要登录

true

请求数限制

true

请求参数

参数 必选 类型及范围 说明
source true string 申请应用时分配的AppKey,调用接口时候代表应用的唯一身份
q true string 搜索关键字
city false string 所在城市代码,默认为0010,(详见城市代码对照表
page false int 返回结果的页码(默认为1,最大为40)
count false int 单页返回的结果条数(默认为10,最大为50)

返回结果

XML示例

<?xml version="1.0" encoding="UTF-8" ?> 
<geoResult>
 <count>10</count> 
 <total>114</total> 
 <page>1</page> 
 <stations>
  <station>
   <name>西直门</name> 
   <station_info>地铁4号线(公益西桥--安河桥北)</station_info> 
   <longitude>116.355491</longitude> 
   <latitude>39.940484</latitude>
   <telephone /> 
   <district>110102</district> 
   </station>
   ...
  </stations>
</geoResult>

JSON示例

{
 "count":"10",
 "total":"114",
 "page":"1",
 "stations":
 [
  {
   "name":"\u897f\u76f4\u95e8",
"station_info":"\u5730\u94c14\u53f7\u7ebf(\u516c\u76ca\u897f\u6865--\u5b89\u6cb3\u6865\u5317)",
   "longitude":"116.355491",
   "latitude":"39.940484"
"telephone":"",
   "district":"110102",
  },
  ...
 ]
}

字段说明

count:返回的结果数
total:结果总数
page:返回的结果在总结果集中的页码
stations:返回的结果集
name:站点名称
station_info:经过的线路名称
longitude:经度
latitude:纬度
telephone:电话
district:区域代码

其它

PHP示例

需要开启PHP的cURL扩展

<?php
//改为你的微博账号,用户名和密码之间用:隔开
$userPwd = 'user@sina.com:pwd';
//改为你微博应用的appkey
$appkey = '0123456789';
//查询关键词
$q = urlencode("海淀南路");

$url = "http://api.t.sina.com.cn/location/bus/station.xml?city=0010&q=$q&source=$appkey";

$rst = curlSample($url,$userPwd);

echo $rst;

function curlSample($url,$userPwd,$postFields = '',$header = ''){
	$ch = curl_init() or die (curl_error()) ;
	curl_setopt($ch,CURLOPT_URL,$url);
	curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
	curl_setopt($ch,CURLOPT_TIMEOUT,30);
	if(!empty($userPwd)){
		curl_setopt($ch,CURLOPT_USERPWD,$userPwd);
	}
	if(!empty($postFields)){
		curl_setopt($ch,CURLOPT_POST,true);
		curl_setopt($ch,CURLOPT_POSTFIELDS,$postFields);
	}
	if(!empty($header)){
		curl_setopt($ch, CURLOPT_HTTPHEADER,$header);
	}
	$result = curl_exec($ch) or die (curl_error($ch));
	curl_close($ch);
	return $result;
}
?>