Hack12306

原文链接:https://mengyangyang.org/2019/01/11/hack12306/

识别逆天的验证码,刷票,等待,下单,订票失败。。。。。。,如此,陷入死循环
为解决12306订票这些痛点问题,决定自己撸一个抢票助手。

12306订票流程

抓包分析12306的订票流程,拆分后,主要包含以下4个阶段:

  1. 用户认证
  2. 查询余票
  3. 提交订单
  4. 支付订单

用户认证流程

以二维码登录为例:

查询余票流程

余票查询比较简单,主要返回结果的分析。

提交订单流程

支付订单流程

代码实现

路线图:

  1. 根据12306抓包分析结果,构建12306的 Python SDK,hack12306 Python SDK 源码实现
  2. 基于hack12306 Python SDK 构建订票助手(命令行版本),12306 booking 源码实现
  3. 在hack12306 Python SDK,12306订票助手基础上,构建查询、订票、支付的Web服务
  4. 基于 Web 服务,实现微信订票小程序,DuerOS余票查询等技能
  5. ... ...

hack12306 Python SDK

参考GitHub项目 hack12306

12306booking订票助手工具

参考GitHub项目 12306-booking

抢票

pip install 12306-booking;
123060-booking --train-date 2020-01-01 --train-name K571 --seat-types 硬卧 --from-station 北京 --to-station 麻城 --pay-channel 微信 --passengers 任正非,王石

最后预祝大家抢票成功。

资源

posted @ 2019-01-12 14:36  hotbaby  阅读(236)  评论(0编辑  收藏  举报