脚本帮你从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

点击链接后在提示中点击安装或继续即可。

自动登录,遇到人过多或繁忙的时候自动重试,直到登录成功(有点儿抢线的味道);

自动记录查询信息,一次查询线路后下次再查询自动填入;

自动刷新查询,当没有需要的车次时,自动重新刷新;

支持 Firefox + Scriptish 或 Chrome。

在 Chrome下,查票和登录有右下角提示和声音提示;Firefox下暂不支持声音提示,但有桌面弹窗提示。

原文:http://www.cnbeta.com/articles/168627.htm

【编辑推荐】

  1. 牛人分享网上订火车票的小技巧:Firefox+Firebug
  2. 使用JavaScript和Canvas写一个游戏框架
  3. 编写高质量JavaScript代码的基本要点
  4. Google首页圣诞节音乐演奏Doodle源代码抢先下载
  5. 编码20年的老程序员分享所积累的20条编程经验
责任编辑:陈贻新 来源: cnbeta
相关推荐

2019-02-19 09:07:42

GAN生成对抗网络神经网络

2013-01-13 13:25:12

Firefox OS

2009-02-13 09:17:00

2018-12-29 16:24:58

Python12306火车票

2019-08-27 14:46:59

ElasticSearES数据库

2022-03-25 09:29:57

LinuxshellShellcheck

2022-03-18 12:39:57

UbuntuChrome

2021-03-23 10:25:05

Redis数据结构

2020-12-14 09:58:04

LinuxManuatldr

2020-03-26 10:25:26

工业互联网IT工业物联网

2020-03-27 15:49:17

工业物联网技术5G

2012-11-21 15:56:50

淘宝12306

2015-09-01 10:57:07

2020-03-26 10:33:36

工业互联网概念

2021-04-01 10:16:01

EmacsJavaScript elisp

2013-09-12 11:11:55

360猎豹12306

2022-05-03 23:46:25

芯片存储科技

2019-08-02 09:39:57

Python可视化技术脚本语言

2024-06-26 19:06:04

2019-07-25 09:05:30

编程语言PythonJava
点赞
收藏

51CTO技术栈公众号