go-home(一款针对12306的火车票订票软件)源码分析

项目地址:http://code.google.com/p/go-home/,源代码svn地址: http://go-home.googlecode.com/svn/trunk/

去年出的一款比较老的订票软件,现在可能已经失效了,只是拿来学习下基本的订票流程,方便对其他订票脚本的研究。

基本流程图:


1,获取图片验证码

提交请求给https://dynamic.12306.cn/otsweb/passCodeAction.do?rand=sjrand,


2,获取登陆时使用的随机数,

提交请求给https://dynamic.12306.cn/otsweb/loginAction.do?method=loginAysnSuggest,


3,用户登陆,提交请求给https://dynamic.12306.cn/otsweb/loginAction.do,若登陆成功,在登陆的cookie中,会有JSESSIONID和BIGipServerotsweb这两个信息,这两个变量值可以保存下来。

cookie:JSESSIONID=6009B4610F436D8023126256FB598BDD;BIGipServerotsweb=2413035786.48160.0000


4,查询符合条件的车次信息,

提交请求给https://dynamic.12306.cn/otsweb/order/querySingleAction.do,


5,对查询到的车次信息进行判断,找到合适的车次,看是否有合适的席别,


6,预定车票,提交请求给

https://dynamic.12306.cn/otsweb/order/querySingleAction.do?method=submutOrderRequest,


7,获取令牌,提交请求给

https://dynamic.12306.cn/otsweb/order/querySingleAction.do?method=init


8,拿上获取到的令牌,提交订单,提交请求给

https://dynamic.12306.cn/otsweb/order/confirmPassengerAction.do?method=confirmPassengerInfoSingle


9,查询订单状态。提交请求给

https://dynamic.12306.cn/otsweb/order/myOrderAction.do?method=queryMyOrderNotComplete

你可能感兴趣的:(程序人生)