RailGo 后端爬虫主代码。
本程序不是抢票的!不是抢票的!不是抢票的!
抢票的代码 Github 有的是,这个项目是采集列车信息用的,过去、现在、将来也不具备任何跟票务有关的功能!
请不要乱发issue!抢票有关issue一律close处理。
诚招更多有能力的铁路爱好者小伙伴参与开发。
railgo.parser
- 车次信息
- 车次担当信息
- 车次交路分析
- 车站信息(拼音码、电报码、TMIS)
安装依赖: pip install -r requirements.txt
启动核心: python main.py
运行后会自动在export
目录生成railgo.json
数据文件,其中:
trains
列车时刻表核心数据,包括每列车的信息。station
车站信息辅助数据。- [WIP]
map
铁路线路辅助数据。
其中,_index_
开头字段是方便APP查询用,主键为trains
列车车次号,station
车站电报码。
可参照railgo.parser.db.MongoJsonExporter
自己写接口以导入到MySQL等数据库中。
日志默认打印到控制台且存储在latest.log
中。
-
信息不全
请保证网络畅通,否则列车列表可能出现成片缺失。
本程序非常垃圾,几乎没有错误处理,请保证一切条件正常再报issue!
-
ConnectionError: mPaaS Request Failed: XXX
可能12306接口改了或者是密钥动了,请发issue。
如果代码是
1000
,则问题不在这里,请看看traceback,有可能是用mPaaS
请求的其他地方出现了问题。注意: 可能存在限速/封IP(根据过往经验多发于节假日等抢票高峰期),若出现
43003
,请适当增加延时。 -
大量
车次XXXX出现空数据
异常12306 存在一定数目的错误车次(如数据测试用的D083、兼容地方铁路的Y1等),这些车次是无法获得具体信息的。待修。
- 12306 ( 核心数据 )
- 国铁吉讯 ( 核心数据 )
- 95306 ( 车站补充信息 )
昆铁货运 ( 车站补充信息 )
本程序采集的所有数据都是公开数据。
欢迎PR。
核心开发人员:
- ChenMo
- TKP30
- mstouk57g
其余提供帮助的人士:
- XieXiLin