12306网站爬取车次信息
本想着可以做一个类似于查询详细车次信息的小工具,但是不尽人意,12306网站爬取的车次信息加密了,研究了一个下午也没有研究出其中全部的信息解密:
爬取的信息如下(举一个例子):
“PCbPusP%2F%2FmzOWewCWL%2Fxp0o0JMnsipqj3%2Flua6c5WsF2DGxvD3T0wcV5xzrjKFFo9ho%2BQuBkzKrr%0A1qXr2gZ1yhNFFycYQlW9%2FtFKu4AJOgE0W8WogfBVzqupe9krUpt4G4ZpuCvfxE68M6IaxbStKTCE%0AVe6mty6uABMveTjShR6RiVAIohcC73%2B6pihFEWF2o3OAQAjwjZ4BLxRiRnPx0Jp%2Ffwq3gRApcfCN%0AE0mwkmoI1icify%2Fz8QSXQynTakVpwiIB7Q%3D%3D|预订|940000K59600|K596|ASR|HZH|XAY|HZH|21:09|20:32|23:23|Y|Cu%2Bp4eBPYbjH%2BDsBwHKgm49ANSRNRzAsDWcYtFH4e%2BX8UAj8wm7p04vROOo%3D|20180823|3|R1|25|43|0|0||||无|||有||无|无|||||10401030|1413|0”
一开始这种信息鬼知道是什么,但是研究了一个下午,数据对应什么算是清楚了,但是他们好像做了一个顺序打乱了。
好吧,不扯那么多,我把有用的信息进行了提取。效果图如下:
功能:输入起点城市,输入终点城市,输入日期进行查询车次信息
首先分析网站
对网站进行分析,浏览器 F12 调出检查
可以发现网站信息用的是 网址请求
其他有3个参数:
train_date
from_station
to_station
网址信息上传了这3个参数
获取所有城市列表信息
因为城市是简写,所有要获取12306上所有城市的信息
获取网址:
“https://kyfw.12306.cn/otn/resources/js/framework/station_name.js?station_vers