本案通过切换地点和CDN,相对于识别验证码、开多浏览器,更能第一时间出票,从本质上解决刷票的问题。
由于是杀手锏,一旦大面积使用,容易TDB*。但考虑到很多人问起,暂时放出核心代码供大家一起研究:
由于是杀手锏,一旦大面积使用,容易TDB*。但考虑到很多人问起,暂时放出核心代码供大家一起研究:
- 源码下载:http://files.cnblogs.com/guozili/12306.rar
- 必备1:Firefox(V20以上有问题) + Greasemonkey + HostAdmin
- 必备2:本地架IIS .net 4.0网站切hosts
- 原理1:如果(广州,广州南,广州北) * (长沙,长沙南)*(202.197.64........设8个CDN)相当于3*2*8种组合,出票命中率大大提高
- 原理2:每刷一次票,就查询停止,然后ajax向 localhost:1111(自己做个本地的网站轮换切ip)发送个更换hosts ip的请求
- 原理2补充:如果写个桌面程序定时器切换,换CDN写hosts时候大概1秒钟会导致 浏览器的所有请求中断,所以很可能会导致后面提交订单的4个AJAX请求中断,基本上会错失良机。所以还是停止查询再发送通知去换CDN,换完后,再又开始查询
顺便补充下秒票经验:
1. Ping值快的不一定访问12306快; 2. 访问12306快的CDN不一定第一时间刷出票; 3. 我本是电信的宽带,但有几个联通的IP ping值慢,却在高峰期没什么人用,不会卡验证码和提交订单; 4. 还要看人品和运气,恰好切到了一个CDN,这个CDN刚好在整点过几秒就出票了,可能在下一次刷票中这个CDN就走平常路了; 5. 所以说6-10个VPN+3个切站,在1分钟里轮完一次,是最好的组合,我这样做的几率平均在整点过20秒就能出票,只要后面不卡在验证码和提交订单4个ajax的请求,秒票几率90%
1. Ping值快的不一定访问12306快; 2. 访问12306快的CDN不一定第一时间刷出票; 3. 我本是电信的宽带,但有几个联通的IP ping值慢,却在高峰期没什么人用,不会卡验证码和提交订单; 4. 还要看人品和运气,恰好切到了一个CDN,这个CDN刚好在整点过几秒就出票了,可能在下一次刷票中这个CDN就走平常路了; 5. 所以说6-10个VPN+3个切站,在1分钟里轮完一次,是最好的组合,我这样做的几率平均在整点过20秒就能出票,只要后面不卡在验证码和提交订单4个ajax的请求,秒票几率90%
以下是原文效果展示:
老衲研究12306多年,常年帮朋友抢票,积累了一些心得,特别是对新版12306的新思路和杀手锏,测试10余天,放票时秒票几率90%,特此分享给大家。
基本知识
请百度关键词:‘DNS‘,‘CDN‘,‘该Hosts‘,‘Firefox Chrome清DNS‘,‘HostAdmin‘,‘Greasemonkey‘
另外普及缓存知识-5层:12306出发站+终点站代号作为Key缓存, 互联网上的DNS缓存,CDN缓存,Windows DNS缓存,浏览器DNS缓存
实现效果
通过全自动切换地名,切换CDN解析的IP,一般能在第一时间整点后20秒钟左右刷出票来,不做这些一般1分钟以后才出来
自动切换地名
此为解决上面的12306key缓存,每隔一秒切一次,比如长沙南,长沙出来的结果一样,但剩票数量不会一样
该刷新时间
本来是5秒,改成1秒,提高刷新次数和几率,如果不配合上面的切地名,不然总是在死刷,出同样的结果,一致整点后1,2分钟才看到出票
杀手锏自动切换CDN
每1秒刷完后,马上换个CDN IP重来,达到最快刷出票,什么360猎豹自动填写验证码都是浮云
当然你也可以在Hosts里固定一个快的CDN,但是网速和Ping快不代表12306同步到CDN的剩票快,找CDN IP请到http://tool.chinaz.com/dns/
最后分享成果预览