[5]火车票接口整理

11/10+ 摔,看去哪儿接口也很乱很多啊,聚合的接口又有免费次数。自己弄个接口吧吼吼吼~~~~,那就不用去哪儿API了。不过今天12306老用不了。官网服务器崩了么

 百度API:  去哪儿火车票   

这是百度API使用的最后一篇。之后就不打算继续研究百度API了(都一个样了,有好玩的再说)。

之前说过的12306接口。先放一张之前调用接口的半成品的半成品图片:

这里是12306的数据车站接口票价

1.车站名&车站表示代码 接口

先封装数据(就是这些地址),用第一个北京北举例来解释, 'bjb|北京北|VAP|beijingbei|bjb|0'      

上例北京北数据通过分割|的得到的六个字符串分别是:

bjb  不只是首拼:首拼/首拼重复的话再添加(zla|镇赉  zli|枣林)/首拼太长(deh|东二道河  byn|白音华南)得一直是三个字符
北京北 站中文名
VAP 站名代码(用此传参来代表站名)
beijingbei 拼音全拼
bjb 拼音首拼
0 ID序号



 

 

 

 

 

 

 

 

 

 

接口地址 :http://warcraft0.com/api/12306/station_name.php 地址

请求方法 :GET

请求参数(urlParam) :

参数名 类型 必填 参数位置 描述 默认值
 type int 否  GET参数  返回类型:1(简单)2(全部),见下例 

 

 

返回json数据。

type默认为1返回简单数据,list数组为:站名=>站表示代码

{
    "code":200,
    "msg":"success",
    "list":{
        "北京北":"VAP",
        "北京东":"BOP",
        "北京":"BJP",
        "北京南":"VNP",
        "北京西":"BXP",
        "广州南":"IZQ",
        "重庆北":"CUW",
        "重庆":"CQW",
        "重庆南":"CRW",
    ......

  }
}

type为2(或不为1的其他值)返回全部数据,list数组为:序号=>'bjb|北京北|VAP|beijingbei|bjb|0' 上面有解释到。

{
    "code":200,
    "msg":"success",
    "list":{
        "1":"bjb|北京北|VAP|beijingbei|bjb|0",
        "2":"bjd|北京东|BOP|beijingdong|bjd|1",
        "3":"bji|北京|BJP|beijing|bj|2",
        "4":"bjn|北京南|VNP|beijingnan|bjn|3",
        "5":"bjx|北京西|BXP|beijingxi|bjx|4",
        "6":"gzn|广州南|IZQ|guangzhounan|gzn|5",
        "7":"cqb|重庆北|CUW|chongqingbei|cqb|6",
        "8":"cqi|重庆|CQW|chongqing|cq|7",
        "9":"cqn|重庆南|CRW|chongqingnan|cqn|8",

     ......
  }
}

 其他错误格式为:

{
    "code":102,
    "msg":"error:字符解析错误"
}

2.12306车票查询 接口

接口地址 :http://warcraft0.com/api/12306/train.php 地址

请求方法 :GET

请求参数(urlParam) :

参数名 类型 必填 参数位置 描述 默认值
 start string 是  GET参数  出发地站,上面地址获取到的站码,举例:XAY 
end string 是  GET参数  目的地站,同上
date string 否  GET参数  日期,格式举例:2016-11-11  当日日期

 

 

 

代码示例:2016-11-12从北京到西安

{
    "code":200,
    "date":"2016年11月12号 周六",
    "msg":"success",
    "list":[
        {
            "station_train":"G655",         //车次
            "start_time":"09:43",           //出发时间
            "arrive_time":"15:30",          //到达时间
            "lishi":"05:47",                //历时
            "day":"0",                      //历时几天,0代表当日到达,1代表次日,2代表隔日...
            "start_station_name":"北京西",   //始发站
            "end_station_name":"西安北",     //终点站
            "remain":{
                "gr_num":"--",
                "qt_num":"--",
                "rw_num":"--",
                "rz_num":"--",
                "tz_num":"无",
                "wz_num":"--",
                "yw_num":"--",
                "yz_num":"--",
                "ze_num":"无",
                "zy_num":"无",
                "swz_num":"无"
            }
,

            ......

remain为剩余票(没有的为--),price为票价(没有的为0),说明:

 ["gr_num"]=>高级软卧

 ["qt_num"]=>其他

 ["rw_num"]=> 软卧

 ["rz_num"]=>软座

 ["tz_num"]=>特等座

 ["wz_num"]=>无座

 ["yw_num"]=>硬卧

 ["yz_num"]=>硬座

 ["ze_num"]=>二等座

 ["zy_num"]=> 一等座

 ["swz_num"]=> 商务座

 错误代码与上面类似。完。

代码

posted @ 2016-11-10 17:36  姜小豆  阅读(1388)  评论(0编辑  收藏  举报