[转]技术宅们的12306买票攻略一
12306.cn 可以网上购火车票了,但由于我镇的『国情』决定了春节时分它竟然比电话购票都不靠谱。但是,毕竟它是最方便的,所以在意识到其实这不仅是个技术活、更是一个体力活之后,终于决定博彩众家之长搞这么一个一条龙的轮子……现在放出来也许有点晚了,但是对于赶年前一两天以及回程票的同学还是有点用的,所以还是放出来吧 🙂
半原创,借鉴了不少别人的思想和思路,但代码基本上都是重写的。目前实现的功能有:
运行需求
您必须准备以下条件之一:
- Firefox,最好比较新的版本(6+),并安装 Scriptish 扩展;
- Chrome(4以上版本)
注意,如果您以前有安装过类似的脚本(如自动登录、自动查询等等),请先移除它们。
Firefox下的功能介绍
在登录页面,本脚本会加入密码记录功能和自动登录功能:
记录密码后,下次登录直接就会填入,并自动定位到验证码段。需要提醒的是,密码是明文记录在Cookies中的,所以如果不是你自己的电脑,建议不要记录。
填完后,你可以用传统方式登录。不过现在不是有了自动登录了吗?点击自动登录呗。在没有成功登录的情况下,系统会自动反复重试,重试的时候桌面右下角会有弹窗提示正在进行的操作:
登录成功后,也会有提示,并且页面会自动进入查询页面:
进入查询页面后,在查询下面有加一条选项,选项意思简单明了,不需要解释的吧 🙂
当没有查询到符合要求的车次时,会自动重试。由于系统按钮有5秒钟的限制,所以不允许设置在6秒内重试。
(上图木有查到,是因为过滤了“仅卧铺”)。
如果查到了,会停止刷新,高亮行,并在桌面右下角弹出提示:
Chrome下的功能介绍
在Chrome下的功能基本上是一致的,以下不再做详细描述。
不过Chrome的桌面提示是需要授权的,所以有提示的界面上会有按钮提示:
“请点击以启用通告”,点击后在浏览器上方点击“允许”,否则通告无法使用。
登录过程的界面提示,内容基本一致,不过就是换个样子:
登录成功后会一样进入:
呃,查询界面一样经典呐:
查询成功时会有声音提示(可以选择开启或关闭),并弹出提示:
小贴士请注意喔:
- Chrome下的桌面提示仅在浏览器正常模式下才起效(也就是说你要是把浏览器最小化了,提示看不到的),不知道是不是Chrome都是这样,但我测试的结果是这样……所以一定要注意声音啊
- Firefox下的桌面提示是可以在桌面上弹出来的。我这里用的是Scriptish,没有测试GreaseMonkey的兼容性……木有时间啊
- 很多人说又要用IE去付款,还不是要反复登录的体力活吗?建议用银联在线支付,关联银行卡后用手机即可在Firefox或Chrome下直接付款(值得注意的是,Firefox6以上的版本它的安全控件暂时不支持,可以用我制作的安全控件补丁,点击下载)。
感谢前人:
12306 Auto Query ,Jingqin Lynn
12306 Booking Assistant,Hidden
12306 Auto Login,Kevintop
下载
请选择您需要的版本(根据您的浏览器选择):
Chrome:http://www.u-tide.com/fish/Service.asmx/Download/44/45/12306_ticket_helper_for_chrome.user.js
Firefox:http://www.u-tide.com/fish/Service.asmx/Download/44/46/12306_ticket_helper_for_firefox.user.js
点击链接后在提示中点击安装或继续即可。