大事记背景

我相信很多远游他乡的朋友每逢佳节都会遇到一个难题,就是购票难,这个难题有多难呢?经常在12306官网购票的小伙伴应该知道每个地方的放票时间是不一样的,但是逢年过节的那几天即使你在放票几分钟前一直盯着电脑屏幕或者APP刷新等放票,你会发现放票开始后的几秒钟对于大部分人来说就是貌似还没有开始放票就已经结束了,因为一般都是放票几秒钟后就没有余票了,一直刷新都是“无票”状态,或者是显示有票状态,但是点击提交订单会一直出现“该车次已无无余票”或者是“出票失败”等提示,这种情况的结局多半只有一种,就是你购票失败了。2018年春节同样经历了这样遭遇的我让我萌发了写一款抢票软件的想法。春节前夕购票高峰期,满载希望,我要回家,也是人生中第一次“抢”高铁票,自己当时使用了市面上很多评价不错的软件进行抢购回家的车票,包括飞&猪这种大企的云抢票工具每天早上就在电脑前盯着余票列表,按着我那枚连漆都掉没了的“F5”键疯狂的刷新着,只为我的回家的车票啊,这种操作一天轮循好几次啊,每天放票的那几个点都在进行同样的操作,就这样操作了好几天一直没有抢到票,这种时候让我心灰意冷了,想着今年回家可能要坐大巴或滴滴了,毕竟时不我待啊,离春节放假时间仅仅只有三四天了,我不能一直把希望放在这一棵树上,到时连大巴都没票了,这个时候我同事找到了黄牛朋友,说买不到就算了,咱找黄牛买吧,实在买不到再说吧,就这样找了黄牛购票,然后黄牛“实力”摆在那里,第二天票就出来了,每一张票黄牛都要从中收取一百块钱的劳务费,这种情况虽说一百块钱有点不值,但是能有回家的票了也不考虑值不值得了,这种心情我想每一位异乡客都能体会到。经历了这一次的购票“难”让我萌发了写一款抢票软件的想法,毕竟自己也是程序员出身, 与其羡慕别人不如自己动手开发一款为自己量身定做的抢票软件,希望这款软件能帮助和我一样“独在异乡为异客,每逢佳节求票难”的朋友。

软件官网以及下载地址

官方网站:www.12306gt.com

下载地址:点我下载 or  腾讯云盘下载

软件功能简介

12306GT购票助手支持选择多乘客、多日期、多车次、 多席别、多坐位等多种备选抢票条件。支持全自动化抢票,选择车次信息,选择乘客以及席别后支持自动多线程检索余票并提交订单锁车票,支持自动识别验证码,支持多种验证码识别引擎,无需人工值守抢票,减少了人力并提高购票成功率。 全面监控服务,不让你错过任何通知提醒、支持抢票成功、账户出现待付款订单、12306账号登录异常、程序异常等多种监控状态进行微信、邮箱、QQ、短信等实时提醒。 支持节点分流抢票,减少缓存,提高抢票成功率,并支持自定义选择延迟最低、最优质的服务器进行检索余票并抢票,让你抢票步骤精简,效率不缩水.

运行环境准备

本软件基于Microsoft .NET Framework 4 平台开发,Windows7系统库自带环境,下载后可直接运行,若无法运行或其他系统版本无法运行或者打开报错,请安装环境后在尝试:Microsoft. NET Framework 4.0。下载地址:https://www.microsoft.com/zh-cn/download/details.aspx?id=17718  传送门

软件界面

1、登录界面

登录主界面 打开程序自动线程获取登录验证码,验证码图片框中有一个刷新按钮,布局与12306官网相似,右下角有一个设置按钮,该按钮可以显示登录设置窗口,窗口当前最新版(1.0.0.3)支持选择登录节点服务器,默认每次登录都会随机选择一个节点登录服务器进行登录,其可用的节点登录服务器都是由程序后台验证可用性并提供至前台登录的。

2、购票程序主界面

2.1主抢票界面

主界面功能还是比较完善和强大的,布局明了简单,右上角可手动点击按钮“查询余票”进行查询余票信息。

查询余票过滤>

可自由过滤车次信息,比如我只需要显示高铁票信息那仅选择[G-高铁]复选框即可,如需过滤席别信息操作同上。还可过滤车次时间,如我预备下午一点钟出发,则可选择发车时间12:00-18:00这个选项,这个时候显示的车次信息则只会包含12:00-18:00之间发车的车次数据。在[出发],[目的]输入框中可以输入出发地、目的地的名称,支持输入首字母缩写自动匹配(默认是邵阳~深圳,自动保存搜索记录,下次打开程序自动填充),日期默认为当前日期,如有主动选择日期将会自动填充所选日期,自动验证购票日期,不能选择小于当前日期&&大于售票截止日期,如需要购多个日期的票可选择开启[启用备选日期]最多支持选择三天备选日期。

顶部菜单解析>

[12306GT官网]按钮点击后将使用默认浏览器打开12306GT官网,可在平台中登录账号进行查询账号订单消费记录以及充值等,具体功能请打开www.12306gt.com进行登录体验。

[校准时间]为保证本地计算机的时间于北京时间误差最小,这里可自动同步服务器的线上时间,校准时间可避免本地时间与12306官方时间误差导致购票失败,已经定时自动抢票监控不准确

[免登录打开12306]可快速没二次登录直接打开12306官网(自动登录状态,仅支持IE),如手动在其他浏览器或异地登录可能会影响到本程序的12306登录状态导致抢票出票失败,如需要打开12306的话请使用本按钮进行免登录打开

[抢票网络设置]改按钮可打开本程序自带的一个网络监控窗口,窗口中支持自定义选择节点分流抢票(分流抢票好处请点传送门:),已经设置代理抢票等操作,

余票列表右键菜单>

通过鼠标右键点击余票列表可显示菜单,菜单支持一键添加所有车次至抢票车次容器中,预订所选车次(支持批量选择),取消所选车次(支持批量选择),取消所有已添加到待抢票容器的车次。考虑部分城市车次过多,可通过功能[车次编号筛选]通过筛选指定车次达到快速选择车次并添加抢票列表,还有一个非常Nice的功能,就是[查询途径站点],有时我们出行到陌生的城市去的时候发现到A站的票没有余票了,可以尝试抢下途径站然后选择离自己需要去的城市最近的一个站点并修改出发、目的地在抢票,大大提高抢票成功率。

余票列表左键按钮>

鼠标左键单击余票数据可显示改票价格信息

监控中心>

当前最新版本1.0.0.3支持监控服务 邮件提醒(支持任意邮件服务,自行选择对应邮件服务器即可,例如使用QQ邮件的话服务器则选择[smtp.qq.com])、微信消息提醒(需要扫码登录,登录成功会冲下网页版微信/PC客户端微信)、手机短信提醒(短信监控仅支持抢票成功提醒,不支持其它状态监控,需自行充值余额进行短信提醒,每次短信消费都可在12306gt.com官网中个人中心>我的订单查询发送记录),监控中心设置可自由配置监控状态以及发送类型,目前支持的监控状态含有 12306登录状态异常、抢票成功、含待支付/待完成订单、抢票程序异常等多种监控状态。 以下就是整理当前支持的监控服务收信截图

1.邮件监控服务

1.1 抢票成功

1.2 登录账号异常

1.3 账户含有待付款/未完成订单

2.微信监控服务

2.短信监控服务

验证码识别>

这个功能可谓是神助啊,不少人用过很多本地客户端抢票程序,发现本地化抢票需要人工值守看着程序,比较费事,不比云抢票方便,而验证码就是一个高级门槛,需要时刻注意是否有验证码,而云抢票就不需要人工值守,但是云抢票的成功率相对来说不比本地化抢票,既然这里谈到了本地化抢票,那我们就多嘴谈下云抢票和本地化抢票的区别和各优劣势。首先要清楚的就是什么是本地化抢票和云抢票,云抢票我相信已经有不少人用过了,就比如飞天上的猪,这种抢票工具呢,就是你下载一个APP然后在手机上提交一个请求至APP后台服务器,然后让他们调度进行抢票,这种抢票的确非常简单和便捷,委托APP服务器帮我们检索余票并抢票,完全脱离人工值守,无需自己一直盯着抢票界面看是否抢票成功,也不用关注验证码,但是这种抢票有一个非常大的缺点就是,排队检索,因为像这种运营APP肯定不可能针对你一个人服务的,他属于免费的,大家都能直接使用,所以使用的人了一多了,那么服务器的委托任务一多可能为你分配到的抢票调度就几率非常少了,当然也有一些收费的云抢票工具,就是购买加速包,像节假日这样的高峰期的时候本身在12306购票就需要排队出票了,然而你使用这种云抢票就需要排队两次了(当然云抢票的请求分配规则这个我是不清楚的,这里只是简单描述云抢票和本地化抢票的执行过程),一次是在云抢票服务器进行排队检索余票,如果检索到了余票才会帮你发起请求至12306官网排队等出票,所以这样一折腾每次放票的时候云抢票都没反应,要么有反应的时候就出现出票失败了,不过这种情况也不是绝对的,抢票始终是看运气的。而本地化抢票呢  这个就很好理解了。我们的12306GT就是这样的购票流程,其实本地化抢票就是不经过服务器委托抢票,所有的检索余票请求和抢票请求都是由本地计算机直接发起至12306服务器,不用担心用的人多,导致你抢票还要经过二轮排队检索。可通过以下流程图简单看下执行过程就能对比出来了,但是云抢票的优势也是很明显的,适合那种没有时间一直用电脑挂着软件的用户使用。

验证码识别这里简单展示下就好了,具体体验请打开程序使用吧,以下就是当前支持的三种识图引擎的效果。

1.12306GT云识别

2.若快打码识别

3.云打码识别

网络管理>

通过点击主界面的[抢票网络设置]可以使用网络管理,其中包含CDN节点加速管理,IP代理设置等功能

1.全国CDN节点加速分流抢票

以下两张图分别是开启CDN节点加速分流抢票和未启用节点分流抢票的效果图,可以发现开启节点分流抢票后每次请求的响应结果前缀都加了一个[]括号,其中[]括号中的内容就是本次请求使用的服务器编号,并且发现很明显的区别就是每一台服务器的耗时都有明显的差距,而未使用节点分流抢票的请求响应时间差距极小,这是因为使用分流抢票可以避免服务器缓存,所以每次请求的过程都是新的数据,而不是服务器缓存数据,而未使用节点分流查询出来的数据前几次可能是新数据,而后几次频繁的查询的时候返回的都是之前的旧数据,车次数据状态就不及时了,这种情况最容易坏事,举个例子 不少的朋友在使用12306官方站订票的时候会发现明明到了放票时间了,但是一直查询余票的时候始终是无票,而刷了好长时间任然是无票,而等好不容易出现有票状态了去提交订单却出现“出票失败,余票不足”这种情况多半就是缓存票导致的,也就是所谓的影子票,而节点分流加速抢票就能最大限度了解决了这个问题,当然不是根本解决,只是在一定程度上优化了这个问题。

2.代理模式抢票

由于本软件采用的抢票机制的本地化监控的,不是云端抢票。所以同一个网络环境(外网IP)中如同时出现高并发&爆破式的请求至12306服务器时可能会被服务器认定为服务器攻击或黄牛恶意刷票。一旦被认定将会对发起请求的外网IP进行封禁12,24小时不等。 所以如果同一个网络环境中出现较多人的人使用本软件或其他本地化抢票软件时建议使用代理抢票,以免造成被封禁错过最佳抢票时机。 如当前抢票的网络外网IP被封禁了请不要担心,一般封禁是24小时左右,可以耐心等待,如不想等待又或者封禁时间不确定可以使用“代理模式”来解决被封禁的问题。

3、抢票体验

具体体验效果就是这样,更多体验效果大家可以下载软件进行试用,反正软件为免费软件,试试又不会怀孕。

12306GT多线程、分流免费抢票工具使用心德的更多相关文章

  1. 马后炮之12306抢票工具(四)--抢票Demo,2014年1月9日终结版

    时隔一年多,终于朋友的忽悠下吧抢票Demo的最后一步完善了,与2014年1月9日成功生成车票. Demo仅经过自己测试,并未在高峰期进行测试,代码质量很差,因为赶工,套用去年模板并未使用设计模式. 代 ...

  2. java多线程下模拟抢票

    我们设置三个对象分别同时抢20张票,利用多线程实现. public class Web123506 implements Runnable{ private int ticteksNums=20;// ...

  3. Mybatis使用心德

    什么是Mybatis? Mybatis是一个半ORM(对象关系映射)框架,它内部封装了JDBC,开发时只需要关注SQL语句本身,不需要花费精力去处理加载驱动.创建连接.创建statement等繁杂的过 ...

  4. [Head First设计模式]抢票中的设计模式——代理模式

    系列文章 [Head First设计模式]山西面馆中的设计模式——装饰者模式 [Head First设计模式]山西面馆中的设计模式——观察者模式 [Head First设计模式]山西面馆中的设计模式— ...

  5. 归心似箭,IT达人分享抢票攻略

    [51CTO专稿]随着春节一天天临近,“购票难”的问题也愈发凸显,猎豹.火狐.360等“春运抢票神器”占领了各大网站的重要版面,“技术抢票”成为炙手可热的话题,看看身为程序员的邓以克是如何抢到回家的票 ...

  6. .net分流抢票助手

    官方网站: http://www.12306bypass.com/作者:Cheney.小风分流抢票基于.Net4.0框架开发,在Windows7之后的操作系统可直接打开.其他操作系统如打不开或者打开报 ...

  7. 智行火车票免费加速到VIP最高速抢票(不用朋友积攒或者购买加速包)

    更新: 2018.11.07, 昨天我买火车票,已经不行了,这个bug已经没有了,被修复了, 望大家知悉!!! 智行火车票免费加速到VIP最高速抢票(不用朋友积攒或者购买加速包) 1)下过单后选择抢到 ...

  8. 12306抢票带来的启示:看我如何用Go实现百万QPS的秒杀系统

    本文为开源实验性工程:“github.com/GuoZhaoran/spikeSystem”的配套文章,原作者:“绘你一世倾城”,现为:猎豹移动php开发工程师,感谢原作者的技术分享. 1.引言 Go ...

  9. 关于12306Bypass-分流抢票

    12306Bypass-分流抢票-2013-15年          官网:http://www.12306bypass.com 分流抢票是一款完全免费的抢票软件,请抵制淘宝贩卖等诈骗行为 作者不会授 ...

随机推荐

  1. cinder-backup详细介绍

    首先介绍Snapshot snapshot可以为volume创建快照,快照中保存了volume当前的状态,此后可以通过snapshot回溯 主要采用了Copy On Write算法.进行快照时,不牵涉 ...

  2. Deep Learning 阅读笔记:Convolutional Auto-Encoders 卷积神经网络的自编码表达

    需要搭建一个比较复杂的CNN网络,希望通过预训练来提高CNN的表现. 上网找了一下,关于CAE(Convolutional Auto-Encoders)的文章还真是少,勉强只能找到一篇瑞士的文章. S ...

  3. Java--神奇的hashcode

    一.Object的HashCode定义 public native int hashCode(); Object类的hashCode方式使用了native修饰也就意味着真正的实现调用的其他语言编写的方 ...

  4. 安装mongodb时报错 configure: error: Cannot find OpenSSL's libraries

    请安装这些包以便继续: apt-get install build-essential libexpat1-dev libgeoip-dev libpng-dev libpcre3-dev libss ...

  5. Linux下Mysql数据库互为主从的配置过程

    配置准备: 两台机器:A(193.168.10.101)  B(193.168.10.102) mysql大版本需要一致,小版本可忽略 配置过程: A(193.168.10.101) 机器配置: 执行 ...

  6. Spring学习笔记(四)--MVC概述

    一. 飞机 最近马来西亚航空370号班机事故闹得沸沸扬扬,情节整的扑朔迷离,连我在钻研springMVC平和的心情都间接的受到了影响.正当我在想这个MVC的处理过程可以怎样得到更好的理解呢?灰机,灰机 ...

  7. MAXOS 进程管理

    ps -ef|grep +程序名 注意进程名区分大小写 linux上进程有5种状态:1. 运行(正在运行或在运行队列中等待)2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号)3. 不可中 ...

  8. 从HiveQL到MapReduce job过程简析

    一.简述 HiveQL是一种声明式语言,用户提交查询,而Hive会将其转换成MapReduce job,如下图.一般来说大部分时间可以无视这个执行过程的内部逻辑,但是如果能了解这些底层实现细节,在调优 ...

  9. Lucas–Kanade光流算法学习

    Lucas–Kanade光流算法是一种两帧差分的光流估计算法.它由Bruce D. Lucas 和 Takeo Kanade提出.         光流(Optical flow or optic f ...

  10. js运算浮点数

    在js中做小数:9.3+0.3会发现,得到的结果并不是9.6,而是9.600000000000001.这是为什么? Javascript采用了IEEE-745浮点数表示法,这是一种二进制表示法,可以精 ...