項目地址: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