Bus/line

跳转到: 导航, 搜索
(请求参数)
 
(未显示2个用户的11个中间版本)
第1行: 第1行:
== '''公交线路搜索''' ==
+
== '''bus/line''' ==
 
根据线路关键字或城市代码等进行搜索,返回公交线路信息
 
根据线路关键字或城市代码等进行搜索,返回公交线路信息
  
 
== '''URL''' ==
 
== '''URL''' ==
http://api.t.sina.com.cn/bus/line.(json|xml)
+
http://api.t.sina.com.cn/location/bus/line.(json|xml)
  
 
== '''支持格式''' ==
 
== '''支持格式''' ==
第12行: 第12行:
  
 
== '''是否需要登录''' ==
 
== '''是否需要登录''' ==
'''false'''  
+
'''true'''  
 
== '''请求数限制''' ==
 
== '''请求数限制''' ==
 
'''true'''  
 
'''true'''  
第40行: 第40行:
 
| style="text-align:center;" |false
 
| style="text-align:center;" |false
 
| style="text-align:center;" |int
 
| style="text-align:center;" |int
| 返回结果的页码(默认为1)
+
| 返回结果的页码(默认为1,最大为40)
 
|-
 
|-
 
| style="text-align:center;" |count
 
| style="text-align:center;" |count
 
| style="text-align:center;" |false
 
| style="text-align:center;" |false
 
| style="text-align:center;" |int
 
| style="text-align:center;" |int
| 单页返回的结果条数(默认为10,最大为40)
+
| 单页返回的结果条数(默认为10,最大为50)
 
|}
 
|}
  
第52行: 第52行:
 
===  '''XML示例''' ===
 
===  '''XML示例''' ===
 
<pre>
 
<pre>
<?xml version="1.0" encoding="utf-8" ?>  
+
<?xml version="1.0" encoding="UTF-8" ?>  
<xml>
+
<geoResult>
  <count>1</count>  
+
  <count>4</count>  
  <status>1</status>  
+
  <page>1</page>  
  <list>
+
  <lines>
<item>
+
   <line>
   <result_id>1</result_id>  
+
   <q>320路区间</q>  
  <city>0010</city>
+
   <city>0010</city>
  <station_info>;保福寺桥西,116.331676 39.98622,bao fu si qiao xi,310100,1;
+
  <name>320路区间(保福寺桥西--北京西站北广场)</name>  
   中关村一街,116.323349 39.9859,zhong guan cun yijie,310100,2;......</station_info>
+
  <front_name>保福寺桥西</front_name>  
  <q>320路区间</q>  
+
  <front_spell>bao fu si qiao xi</front_spell>  
  <rid>136</rid>    
+
  <terminal_name>北京西站北广场</terminal_name>  
  <coordinates>116.331676;39.986227;116.327258;39.986015;......</coordinates>  
+
  <terminal_spell>bei jing xi zhan bei guang chang</terminal_spell>  
  <name>320路区间(保福寺桥西--北京西站北广场)</name>  
+
  <start_time>05:00</start_time>  
  <front_name>保福寺桥西</front_name>  
+
  <end_time>23:00</end_time>  
  <front_spell>bao fu si qiao xi</front_spell>  
+
  <service_period />  
  <terminal_name>北京西站北广场</terminal_name>  
+
  <time_desc />  
  <terminal_spell>bei jing xi zhan bei guang chang</terminal_spell>  
+
  <company>北京公交集团第六客运分公司</company>  
  <start_time>05:30</start_time>  
+
  <length>13.2563</length>  
  <end_time>23:00</end_time>  
+
  <basic_price>1</basic_price>  
  <service_period />  
+
  <total_price>1</total_price>  
  <time_desc />  
+
  <air>0</air>  
  <company>北京公交集团第六客运分公司</company>  
+
  <commutation_ticket>0</commutation_ticket>  
  <length>13.2563</length>  
+
  <status>1</status>  
  <basic_price>1</basic_price>  
+
  <auto>1</auto>  
  <total_price>1</total_price>  
+
  <ic_card>1</ic_card>  
  <air>0</air>  
+
  <express_way>0</express_way>  
  <commutation_ticket>0</commutation_ticket>  
+
  <double_deck>0</double_deck>  
  <status>1</status>  
+
  <description>北京公交集团第六客运分公司</description>  
  <auto>1</auto>  
+
  <type>1</type>
  <ic_card>1</ic_card>  
+
  <coordinates>116.331676;39.986227;......</coordinates>
  <express_way>0</express_way>  
+
  <stations>
  <double_deck>0</double_deck>  
+
    <station>
  <description>北京公交集团第六客运分公司</description>  
+
    <name>保福寺桥西</name>
  <type>1</type>  
+
    <longitude>116.331676</longitude>
</item>
+
    <latitude>39.98622</latitude>
  </list>
+
    <district>310100</district>
</xml>
+
    <station_info />
 +
    <telephone />
 +
    <address />
 +
    </station>
 +
    ...
 +
  </stations>
 +
  </line>
 +
  ...
 +
  </lines>
 +
</geoResult>
 +
 
 
</pre>
 
</pre>
  
第95行: 第105行:
 
<pre>
 
<pre>
 
{
 
{
  "count":"1",
+
  "count":"4",
  "status":"1",
+
  "page":"1",
  "list":[{
+
  "lines":
        "result_id":"1",
+
[
        "city":"0010",
+
  {
        "station_info":";\u4fdd\u798f\u5bfa\u6865\u897f,116.331676 39.98622,bao fu si qiao xi,310100,1;
+
  "q":"320\u8def\u533a\u95f4",
        \u4e2d\u5173\u6751\u4e00  \u8857,116.323349 39.9859,zhong guan cun yi jie,310100,2;",
+
  "city":"0010",
        "q":"320\u8def\u533a\u95f4",
+
  "name":"320\u8def\u533a\u95f4(\u4fdd\u798f\u5bfa\u6865\u897f--\u5317\u4eac\u897f\u7ad9\u5317\u5e7f\u573a)",
        "rid":"136",
+
  "front_name":"\u4fdd\u798f\u5bfa\u6865\u897f",
        "coordinates":"116.331676;39.986227;......",
+
  "front_spell":"bao fu si qiao xi",
        "name":"320\u8def\u533a\u95f4(\u4fdd\u798f\u5bfa\u6865\u897f--\u5317\u4eac\u897f\u7ad9\u5317\u5e7f\u573a)",
+
  "terminal_name":"\u5317\u4eac\u897f\u7ad9\u5317\u5e7f\u573a",
        "front_name":"\u4fdd\u798f\u5bfa\u6865\u897f",
+
  "terminal_spell":"bei jing xi zhan bei guang chang",
        "front_spell":"bao fu si qiao xi",
+
  "start_time":"05:",
        "terminal_name":"\u5317\u4eac\u897f\u7ad9\u5317\u5e7f\u573a",
+
  "end_time":"23:",
        "terminal_spell":"bei jing xi zhan bei guang chang",
+
  "service_period":"",
        "start_time":"05:30",
+
  "time_desc":"",
        "end_time":"23:00",
+
  "company":"\u5317\u4eac\u516c\u4ea4\u96c6\u56e2\u7b2c\u516d\u5ba2\u8fd0\u5206\u516c\u53f8",
        "service_period":"",
+
  "length":"13.2563",
        "time_desc":"",
+
  "basic_price":"1",
        "company":"\u5317\u4eac\u516c\u4ea4\u96c6\u56e2\u7b2c\u516d\u5ba2\u8fd0\u5206\u516c\u53f8",
+
  "total_price":"1",
        "length":"13.2563",
+
  "air":"0",
        "basic_price":"1",
+
  "commutation_ticket":"0",
        "total_price":"1",
+
  "status":"1",
        "air":"0",
+
  "auto":"1",
        "commutation_ticket":"0",
+
  "ic_card":"1",
        "status":"1",
+
  "express_way":"0",
        "auto":"1",
+
  "double_deck":"0",
        "ic_card":"1",
+
  "description":"\u5317\u4eac\u516c\u4ea4\u96c6\u56e2\u7b2c\u516d\u5ba2\u8fd0\u5206\u516c\u53f8",
        "express_way":"0",
+
  "type":"1",
        "double_deck":"0",
+
  "coordinates":"116.331676;39.986227;...",
        "description":"\u5317\u4eac\u516c\u4ea4\u96c6\u56e2\u7b2c\u516d\u5ba2\u8fd0\u5206\u516c\u53f8",
+
  "stations":
        "type":"1"}]
+
  [
 +
    {
 +
    "name":"\u4fdd\u798f\u5bfa\u6865\u897f",
 +
    "longitude":"116.331676",
 +
    "latitude":"39.98622",
 +
    "district":"310100",
 +
    "station_info":"",
 +
    "telephone":"",
 +
    "address":""
 +
    },
 +
    ...
 +
  ]
 +
  },
 +
  ...
 +
]
 
}
 
}
 +
 
</pre>
 
</pre>
  
 
===  '''字段说明 ''' ===
 
===  '''字段说明 ''' ===
:count:返回的结果数
+
:count:当前返回的结果数
:status:标识结果;如该值为0,则没有找到相关的路线信息
+
:page:当前返回的结果在总结果集中的页数
:list:返回的结果集
+
:lines:当前返回的结果集
::result_id:结果id
+
::rid:线路数据id
+
::name:线路名称
+
::city:城市代码
+
 
::q:线路关键字
 
::q:线路关键字
 +
::city:城市代码
 +
::name:线路名称
 
::front_name:起点名称
 
::front_name:起点名称
 
::front_spell:起点拼音
 
::front_spell:起点拼音
第160行: 第183行:
 
::description:线路描述
 
::description:线路描述
 
::type:类型
 
::type:类型
::station_info:途径站点信息(格式:‘;’分隔,站名,经度 纬度,拼音,区域id,站点在本线路的序号)
 
 
::coordinates:线路坐标串(格式:’;’分隔,经度;纬度;经度;纬度;)
 
::coordinates:线路坐标串(格式:’;’分隔,经度;纬度;经度;纬度;)
 +
::stations:途径站点集
 +
:::name:站名
 +
:::longitude:站点经度
 +
:::latitude:站点纬度
 +
:::district:区
 +
:::station_info:站点详情
 +
:::telephone:电话
 +
:::address:地址
  
== '''使用示例''' ==
+
== '''其它''' ==
 +
 
 +
===  '''PHP示例''' ===
 +
需要开启PHP的cURL扩展
 
<pre>
 
<pre>
xml:
+
<?php
http://api.t.sina.com.cn/bus/line.xml?q=320&source=appkey
+
//改为你的微博账号,用户名和密码之间用:隔开
 +
$userPwd = 'user@sina.com:pwd';
 +
//改为你微博应用的appkey
 +
$appkey = '0123456789';
 +
//查询关键词
 +
$q = urlencode("320");
  
json:
+
$url = "http://api.t.sina.com.cn/location/bus/line.xml?q=$q&city=0010&source=$appkey";
http://api.t.sina.com.cn/bus/line.json?q=320&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;
 +
}
 +
?>
 
</pre>
 
</pre>

2012年9月24日 (一) 11:51的最后版本

目录

bus/line

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

URL

http://api.t.sina.com.cn/location/bus/line.(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>4</count> 
 <page>1</page> 
 <lines>
  <line>
   <q>320路区间</q> 
   <city>0010</city>  
   <name>320路区间(保福寺桥西--北京西站北广场)</name> 
   <front_name>保福寺桥西</front_name> 
   <front_spell>bao fu si qiao xi</front_spell> 
   <terminal_name>北京西站北广场</terminal_name> 
   <terminal_spell>bei jing xi zhan bei guang chang</terminal_spell> 
   <start_time>05:00</start_time> 
   <end_time>23:00</end_time> 
   <service_period /> 
   <time_desc /> 
   <company>北京公交集团第六客运分公司</company> 
   <length>13.2563</length> 
   <basic_price>1</basic_price> 
   <total_price>1</total_price> 
   <air>0</air> 
   <commutation_ticket>0</commutation_ticket> 
   <status>1</status> 
   <auto>1</auto> 
   <ic_card>1</ic_card> 
   <express_way>0</express_way> 
   <double_deck>0</double_deck> 
   <description>北京公交集团第六客运分公司</description> 
   <type>1</type>
   <coordinates>116.331676;39.986227;......</coordinates>
   <stations>
    <station>
    <name>保福寺桥西</name> 
    <longitude>116.331676</longitude> 
    <latitude>39.98622</latitude> 
    <district>310100</district> 
    <station_info /> 
    <telephone /> 
    <address /> 
    </station>
    ...
   </stations>
  </line>
  ...
 </lines>
</geoResult>

JSON示例

{
 "count":"4",
 "page":"1",
 "lines":
 [
  {
   "q":"320\u8def\u533a\u95f4",
   "city":"0010",
   "name":"320\u8def\u533a\u95f4(\u4fdd\u798f\u5bfa\u6865\u897f--\u5317\u4eac\u897f\u7ad9\u5317\u5e7f\u573a)",
   "front_name":"\u4fdd\u798f\u5bfa\u6865\u897f",
   "front_spell":"bao fu si qiao xi",
   "terminal_name":"\u5317\u4eac\u897f\u7ad9\u5317\u5e7f\u573a",
   "terminal_spell":"bei jing xi zhan bei guang chang",
   "start_time":"05:",
   "end_time":"23:",
   "service_period":"",
   "time_desc":"",
   "company":"\u5317\u4eac\u516c\u4ea4\u96c6\u56e2\u7b2c\u516d\u5ba2\u8fd0\u5206\u516c\u53f8",
   "length":"13.2563",
   "basic_price":"1",
   "total_price":"1",
   "air":"0",
   "commutation_ticket":"0",
   "status":"1",
   "auto":"1",
   "ic_card":"1",
   "express_way":"0",
   "double_deck":"0",
   "description":"\u5317\u4eac\u516c\u4ea4\u96c6\u56e2\u7b2c\u516d\u5ba2\u8fd0\u5206\u516c\u53f8",
   "type":"1",
   "coordinates":"116.331676;39.986227;...",
   "stations":
   [
    {
     "name":"\u4fdd\u798f\u5bfa\u6865\u897f",
     "longitude":"116.331676",
     "latitude":"39.98622",
     "district":"310100",
     "station_info":"",
     "telephone":"",
     "address":""
    },
    ...
   ]
  },
  ...
 ]
}

字段说明

count:当前返回的结果数
page:当前返回的结果在总结果集中的页数
lines:当前返回的结果集
q:线路关键字
city:城市代码
name:线路名称
front_name:起点名称
front_spell:起点拼音
terminal_name:终点名称
terminal_name:终点拼音
start_time:首班车时间
end_time:末班时间
service_period:区间
time_desc:时间说明
company:运营公司
length:总长度
basic_price:起步价
total_price:全程票价
air:是否有空调
commutation_ticket:是否能使用月票
status:状态
auto:无人售票
ic_card:是否能刷IC卡
express_way:是否快车
double_deck:是否双层车
description:线路描述
type:类型
coordinates:线路坐标串(格式:’;’分隔,经度;纬度;经度;纬度;)
stations:途径站点集
name:站名
longitude:站点经度
latitude:站点纬度
district:区
station_info:站点详情
telephone:电话
address:地址

其它

PHP示例

需要开启PHP的cURL扩展

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

$url = "http://api.t.sina.com.cn/location/bus/line.xml?q=$q&city=0010&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;
}
?>
文档更新时间: 2012-09-24