go-home源码分析----一款针对12306的火车票订票软件
csnewdn · · 7646 次点击 · · 开始浏览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
作者:洞庭散人
出处:http://phinecos.cnblogs.com/
posted on 2012年12月28日 21:35 Phinecos(洞庭散人) 阅读(2055) 评论(0) 编辑 收藏
· 1号店与中国邮政储蓄银行合作进军互联网金融
· 面临洗钱风险 日本仍未决定监管比特币
· OKCoin声称融资千万美元
· 和百度的一前辈吃饭,被问陌陌服务器的idle,有无30%?我只能.....
· 马航失联航班为何无人向外拨打电话?
» 更多新闻...
» 更多知识库文章...
有疑问加站长微信联系(非本文作者)
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
关注微信- 请尽量让自己的回复能够对别人有帮助
- 支持 Markdown 格式, **粗体**、~~删除线~~、
`单行代码` - 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
- 图片支持拖拽、截图粘贴等方式上传
收入到我管理的专栏 新建专栏
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
作者:洞庭散人
出处:http://phinecos.cnblogs.com/
posted on 2012年12月28日 21:35 Phinecos(洞庭散人) 阅读(2055) 评论(0) 编辑 收藏
· 1号店与中国邮政储蓄银行合作进军互联网金融
· 面临洗钱风险 日本仍未决定监管比特币
· OKCoin声称融资千万美元
· 和百度的一前辈吃饭,被问陌陌服务器的idle,有无30%?我只能.....
· 马航失联航班为何无人向外拨打电话?
» 更多新闻...
» 更多知识库文章...