用python中的requests库通过

访问12306接口,来获取查询的所有车次信息

先看效果

用python查询12306车票,一件获取所有车次信息_for循环


公众号回复 12306 获取源代码


首先打开网站啊

然后随便输入地点时间,点击查询

用python查询12306车票,一件获取所有车次信息_json_02


然后出现查询好的车票

打开开发者模式

点击xhr,里面有一个文件

这个文件就是用来存放车次信息的

用python查询12306车票,一件获取所有车次信息_json_03


点击预览看看返回的内容

用python查询12306车票,一件获取所有车次信息_公众号_04

这些就是车次信息

查看url和方法

url中有三个参数需要自己填写

一个是时间,一个是出发站,一个是目的站

但是用的都是字母代码代替的

用python查询12306车票,一件获取所有车次信息_公众号_05

我在文件中写了一个字典,存放着名称和对应的代码

用python查询12306车票,一件获取所有车次信息_for循环_06

开始写代码,开始访问

键盘输入三个参数

用python查询12306车票,一件获取所有车次信息_for循环_07

用.json()来获取信息
response = requests.get(url=url,headers=header).json()

然后再用for循环每一条车次的信息

for i in response['data']['result']:
    index = i.split('|')
    dit_info = {}
    dit_info['车次'] = index[3]         #车次
    dit_info['发车时间'] = index[8]   #发车时间
    dit_info['到达时间'] = index[9]      #到达时间
    dit_info['耗时'] = index[10]     #耗时
    dit_info['特等座'] = index[32]       #特等座
    dit_info['一等座'] = index[31]     #一等座
    dit_info['二等座'] = index[30]    #二等座
    dit_info['硬卧'] = index[28]    #硬卧
    dit_info['硬座'] = index[29]       #硬座
    dit_info['无座'] = index[26]         #无座
    dit_info['软卧'] = index[25]     #软卧
    print(dit_info)

最后打印出来看效果

用python查询12306车票,一件获取所有车次信息_for循环_08

公众号回复 12306 获取源代码

感谢观看,欢迎分享