1987WEB视界-分享互联网热点话题和事件

您现在的位置是:首页 > 网络工具 > 正文

网络工具

一年一度春运时,几款12306抢票软件分享给大家,走心分享

1987web2024-01-05网络工具78
一年一度的春运大戏又要上演了,每年的抢票都是最让人头疼的,好在的是12306的技术在一直进步着,虽然缓慢,但是比让人看不到希望强,而且今年12306的官方还要上线「候补购票」的功能,也算是为广大人民群

一年一度的春运大戏又要上演了,每年的抢票都是最让人头疼的,好在的是12306的技术在一直进步着,虽然缓慢,但是比让人看不到希望强,而且今年12306的官方还要上线「候补购票」的功能,也算是为广大人民群众提供了一种新的购票遍历措施。简单的说一下什么是「候补购票」,就是说在春运期间,我们可以先在12306官方购票平台登记个人信息,提前支付自己要购买的车票,然后就会被列为「候补乘客」,当售票期间存有退票、余票时,系统会按照支付的顺序自动为「候补乘客」分配车票,emmmmm~~~~~赤裸裸的「官方抢票软件」嘛!孜孜~

2019年的春运从1月21日(腊月十六)开始,到2019年3月1日(正月廿五)结束,春运抢票第一天从1月23日开始,请收藏好下面的的抢票时间点:

12月23日,可以购买春运第一天(2019年1月21日)的火车票。2019年1月5日,可以购买2019年年二十九(2月3日)的火车票。2019年1月6日,可以购买2019年除夕(2月4日)的火车票。2019年1月7日,可以购买2019年春节(2月5日)的火车票。2019年1月12日,可以购买2019年正月初六(2月10日)的火车票。2019年1月30日,可以购买春运最后一天2019年3月1日的火车票。

说回抢票软件,老四普及一点可能大多数人不相信的认知。老四看到大多数人无论是春运还是平时购票,都喜欢用各种平台的抢票系统,多花那么几十块钱托管抢票,例如某程、某哪儿、某行、某猪等平台,然后拉帮结伙的在群里让人们帮助抢票。这些抢票平台有用吗?有用,用它们的确能买到火车票。但是老四也负责任的告诉你,这类平台在平时帮你购票或许还蛮好用,但是在春运期间简直就是鸡肋,如果你死心眼的只指望着它,都有可能回不去家。

有人说为什么?拿钱怎么可以不做事呢?其实不是人家不做事,只不过是随着12306的升级,官方的购票接口早就已经对第三方这些抢票购票平台有所限制了,至于那些国内的浏览器制作的抢票插件(说的就是某60、某豹、某狗等)您就当做当做是日常转发杨超越好了~~

关于抢票,老四再次负责任的说,开启售票的那一刻,如果你网速、手速够快,一定要优先使用12306官方手机客户端抢票,但是我们大多数都是抢不到的,「出来就没」一直以来是12306的调性。这个时候但愿你要有一台电脑,登陆12306官方网站进行选票购买,但同样也是没票,这个时候注意了我们使用订票帮手帮我们刷票,设置好自动提交并将音量调到最大声音以便收听抢票提示音,如图所示:

这是官方刷票最及时的入口点,这里会最先保证你能刷到余票和退票,像老四这种就做办公室工作的人群完全可以几乎时刻监听余票报警,然后购票,人工智能嘛!哈哈!当然,如果您不是像老四这样的行业,没有电脑等环境因素限制,可能就需要下面老四分享软件辅助你购票了,继续往下读吧。

前面说到各大第三方购票平台在春运期间是极其不靠谱的,原因就是这样,12306官方平台是先保证自己的平台的访问和下单需求达到所需之后才会将余票和退票信息开放给第三方,这是老四亲测过的,你可以不信,但是你可以自己亲自尝试,反正第三方平台抢不到票也不多要你的钱,但是老四对这些第三平台吹牛逼、拉人头的行径嗤之以鼻。就在去年,老四就是凭借「钢铁般的意志」使用官方平台的「订票帮手」成功买票回家的。

好了,接下来介绍一下这几款抢票软件,这几款抢票软件区别与第三方购票平台,说白了就是为这些无法时刻盯在电脑面前的人群准备的,技术思路就是实现「订票帮手」的自动化,让你无需一直盯着,负责帮你完成抢票,你只需要负责接收到通知之后完成付款就可以了,毕竟官方的「订票帮手」总是存在登陆信息失效,刷新时间长了自动停止等技术问题。

第一款:开源12306抢票辅助工具

软件来自民间大佬「@173386248」使用Pythom编写,打开工具后先进行查票操作,双击想要购买的车次然后进行登录操作,登陆成功之后会进行抢票的窗口,然后设置接收抢票成功的邮箱即可。源码如下:

-*- coding:utf-8 -*-importthreadingimportrequestsimporttimefromtkinterimport*fromtkinter.ttkimport*fromtkinter.messageboximport*classApplication_ui(Frame):这个类仅实现界面生成功能,具体事件处理代码在子类Application中。def__init__(self,master=None):Frame.__init__(self,master)self.master.title(12306查票系统)self.master.geometry(795x351)self.createWidgets()defcreateWidgets(self):self.top=self.winfo_toplevel()self.bum=self.winfo_toplevel()frame=Frame()frame.place(x=20,y=60,width=750,height=259)self.style=Style()self.style.configure(Label1.TLabel,anchor=w,font=(宋体,9,bold))self.Label1=Label(self.top,text=出发地:,style=Label1.TLabel)self.Label1.place(relx=0.03,rely=0.068,relwidth=0.072,relheight=0.048)self.Text1Var=StringVar(value=)self.Text1=Entry(self.top,textvariable=self.Text1Var,font=(宋体,9))self.Text1.place(relx=0.091,rely=0.046,relwidth=0.142,relheight=0.094)self.style.configure(Label1.TLabel,anchor=w,font=(宋体,9,bold))self.Label1=Label(self.top,text=目的地:,style=Label1.TLabel)self.Label1.place(relx=0.262,rely=0.068,relwidth=0.072,relheight=0.048)self.Text2Var=StringVar(value=)self.Text2=Entry(self.top,textvariable=self.Text2Var,font=(宋体,9))self.Text2.place(relx=0.322,rely=0.046,relwidth=0.142,relheight=0.094)self.style.configure(Command1.TButton,font=(宋体,9,bold))self.Command1=Button(self.top,text=查      询,command=self.Command2,style=Command1.TButton)self.Command1.place(relx=0.785,rely=0.046,relwidth=0.172,relheight=0.094)self.style.configure(Label1.TLabel,anchor=w,font=(宋体,9,bold))self.Label2=Label(self.top,text=出发日期:,style=Label2.TLabel)self.Label2.place(relx=0.493,rely=0.058,relwidth=0.092,relheight=0.048)self.number=StringVar()numberChosen=Combobox(self.top,textvariable=self.number)numberChosen.place(relx=0.574,rely=0.049,relwidth=0.142,relheight=0.074)numberChosen[values]=(1,2,4,42,100)设置下拉列表的值values=[]y=int(time.strftime("%Y",time.localtime()))m=int(time.strftime("%m",time.localtime()))d=int(time.strftime("%d",time.localtime()))i=0yy=ymm=mdd=dwhilei<30:30天数据ifmin(1,3,5,7,8,10,12):ifd+i>31:dd=d+i-31mm=m+1ifmm>12:yy=y+1mm=mm-12else:dd=d+ielifmin(4,6,9,11):ifd+i>30:dd=d+i-30mm=m+1ifmm>12:yy=y+1mm=mm-12else:dd=d+ielse:if(m%400==0)or((m%4==0)and(m%100!=0)):ifd+i>29:dd=d+i-29mm=m+1ifmm>12:yy=y+1mm=mm-12else:dd=d+ielse:ifd+i>28:dd=d+i-28mm=m+1ifmm>12:yy=y+1mm=mm-12else:dd=d+is=%d-%02d-%02d%(yy,mm,dd)values.append(s)i+=1numberChosen[values]=tuple(values)numberChosen.current(0)设置下拉列表默认显示的值,0为 numberChosen[values] 的下标值scrollBar=Scrollbar(frame)scrollBar.pack(side=RIGHT,fill=Y)self.tree=Treeview(frame,height=259,columns=("车次","出发站名","到达站名","出发时间","到达时间","一等座","二等座","硬卧","软卧","硬座","无座"),show="headings",yscrollcommand=scrollBar.set)scrollBar.configure(command=self.tree.yview)self.tree.column(车次,width=50,anchor=center)self.tree.column(出发站名,width=80,anchor=center)self.tree.column(到达站名,width=80,anchor=center)self.tree.column(出发时间,width=80,anchor=center)self.tree.column(到达时间,width=80,anchor=center)self.tree.column(一等座,width=60,anchor=center)self.tree.column(二等座,width=60,anchor=center)self.tree.column(硬卧,width=60,anchor=center)self.tree.column(软卧,width=60,anchor=center)self.tree.column(硬座,width=60,anchor=center)self.tree.column(无座,width=60,anchor=center)self.tree.heading(车次,text=车次)self.tree.heading(出发站名,text=出发站名)self.tree.heading(到达站名,text=到达站名)self.tree.heading(出发时间,text=出发时间)self.tree.heading(到达时间,text=到达时间)self.tree.heading(一等座,text=一等座)self.tree.heading(二等座,text=二等座)self.tree.heading(硬卧,text=硬卧)self.tree.heading(软卧,text=软卧)self.tree.heading(硬座,text=硬座)self.tree.heading(无座,text=无座)self.tree.pack()classApplication(Application_ui):这个类实现具体的事件处理回调函数。界面生成代码在Application_ui中。def__init__(self,master=None):Application_ui.__init__(self,master)header={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36",}获取各个城市的编号city_url="https://kyfw.12306.cn/otn/resources/js/framework/station_name.js?station_version=1.9077"rep=requests.get(city_url,headers=header)self.areatocode={}把内容以{城市名:对应的编号}存入字典foriinrep.content.decode().split("@")[1:]:ifi:tmp=i.split("|")self.areatocode[tmp[1]]=tmp[2]defCommand2(self):"""点击查询按钮触发的逻辑"""start1=self.Text1.get()to1=self.Text2.get()date=self.number.get()这里日期判断不够严格   自己可以附加now_data=time.strftime(%Y.%m.%d,time.localtime(time.time()))ifnotstart1:showerror(title=警告,message=出发地不能为空)elifstart1notinself.areatocode:showerror(title=警告,message=输入错误,没有找到该城市)elifnotto1:showerror(title=警告,message=目的地不能为空)elifto1notinself.areatocode:showerror(title=警告,message=输入错误,没有找到该城市)elifnotdate:showerror(title=警告,message=输入错误,没有找到该日期)elifint(date.replace(-,))<int(now_data.replace(.,)):showerror(title=警告,message=日期不能小于当期日期)elifstart1andto1anddate:ifself.Command1[text]==查      询:self.Command1[text]=正 在 查 询每次点击查询按钮后将按钮设置为不可用  防止多次发送请求self.Command1.config(state=DISABLED)启动一个线程防止程序在查询期间被卡主  出现未响应的情况t=threading.Thread(target=self.Command1_Cmd,args=(start1,to1,date))t.start()defCommand1_Cmd(self,start1,to1,date):try:start=self.areatocode[start1]to=self.areatocode[to1]这里有学生和成人之分   默认直接写成成人了student="ADULT"url="https://kyfw.12306.cn/otn/leftTicket/query?leftTicketDTO.train_date="+date+"&leftTicketDTO.from_station="+start+"&leftTicketDTO.to_station="+to+"&purpose_codes="+studentrep=requests.get(url,headers={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36"})patrst01="result":\[(.*?)\]正则提取查票的结果rst0=re.compile(patrst01).findall(rep.content.decode())checimap_pat="map":({.*?})checimap=eval(re.compile(checimap_pat).findall(rep.content.decode())[0])ifrst0[0]==:showinfo(title=警告,message=没有找到该车次的信息)rst01=rst0[0]allcheci=rst01.split(",")点击查询按钮 先把内容清空x=self.tree.get_children()foriteminx:self.tree.delete(item)foriinrange(0,len(allcheci)):thischeci=allcheci[i].split("|")code=thischeci[3]fromname=thischeci[6]fromname=checimap[fromname][7]---tonametoname=thischeci[7]toname=checimap[toname][8]---stimestime=thischeci[8][9]---atimeatime=thischeci[9][28]---一等座yz=thischeci[31]ifstr(thischeci[31])!=else"-"[29]---二等座wz=thischeci[30]ifstr(thischeci[30])!=else"-"[30]---硬座ze=thischeci[29]ifstr(thischeci[29])!=else"-"[31]---无座zy=thischeci[26]ifstr(thischeci[26])!=else"-"硬卧xx=thischeci[28]ifstr(thischeci[28])!=else"-"软卧yy=thischeci[23]ifstr(thischeci[23])!=else"-"将数据回显到软件中self.tree.insert(,i,values=(code,fromname,toname,stime,atime,str(yz),str(wz),str(xx),str(yy),str(ze),str(zy)))查询完毕将按钮变为正常self.Command1.config(state=NORMAL)self.Command1[text]=查      询except:self.Command1.config(state=NORMAL)self.Command1[text]=查      询if__name__=="__main__":top=Tk()top.resizable(width=False,height=False)Application(top).mainloop()try:top.destroy()except:pass

第二款:开源12306刷票辅助软件,源码也是来自「@173386248」,使用易语言编写,然后经过吾爱大佬「@君莫笑WXH」私人修改和修复,教程无需多言。

第三款:盛名已久的超屌分流抢票软件12306Bypass,软件来自大神「Cheney.小风」,并且完全免费还支持云打码,简直业界的良心不能再良心,从2013年初版一直维护到现在,支持qq、邮件、微信等各种方式通知提醒,使用教程也是无需多言,云打码自动识别验证码,多线程秒单、稳定捡漏,不管能不能抢到票,赞助作者20块钱都是理所应当的,鼓励一下这些坚持不懈的人们,因为有这群人在,世界也往往更好了一些。

顺便再说几点:

  1. 抢票软件涉及到提交订单时自动识别验证码,所以前两款软件说不定什么时候因为云打码失效而失效,毕竟都是作者个人维护的,有能力的请自己编译源码使用自己的云打码平台。
  2. 抢票软件从来都不保证帮你抢到票,即使你捐赠作者也不能保证,所以别百分之百的指望软件抢票。最直接的建议还是配合刷票辅助,然后尽量守在官方「订票助手」前刷票,这样几率很大。
  3. 现在个人信息很重要,即使老四分享了,保证了软件无毒不收录隐私,但是作为使用者也要有忧患意识,使用无论任何第三方的登录,使用之后都请修改一次密码,做到万无一失

最后祝出门在外的朋友,无论你是什么行业,在外混都不容易,一年辛苦到头,回家吃几顿热乎的饭,吹吹牛逼,享受几天,听父母唠叨唠叨,看看孩子等等,这些才是真正的生活。祝你们都能如愿抢到票,幸福安全到家!

以上相应三款软件可以点我自助获取。

关于VIP赞助和验证码识别问题:

分流抢票助手本身附带自己研发的验证码识别模块可以帮助用户快速完成验证码识别而不需要手动进行点选操作。

但验证码识别需要依靠服务器进行高强度计算所以并非免费功能,云验证码识别仅限分流抢票助手赞助用户使用。

若用户需要云验证码识别或者愿意赞助的话可以支付21元成为会员 , 但请注意赞助不等于收费不保证可以抢到票。

蓝点网实际测试发现除登录12306账号需要手动选择验证码外 , 其他地方如提交订单以及刷票等都不需要此功能。

所以是否进行赞助取决于用户是否认可开发者的工作,赞助只是支持开发者而非抢票,因此请在赞助前考虑清楚。

分流抢票助手安全说明:

分流抢票助手是国内非常知名的抢票类辅助工具,软件本身没有任何问题但部分功能会牵涉到财务因此需要说明。

例如现在分流抢票助手已经增加自动支付功能,防止抢到票但用户未及时支付导致支付超时而订单被系统取消等。

自动支付功能需要配置支付宝账号和支付密码 (非登录密码),当成功抢到票后系统就会模拟人工通过支付宝付款。

支付宝账号和支付密码均保存在本地不会同步到云端,但用户如果担心安全问题可以注册支付宝小号并进行充值。

例如注册支付宝小号然后不绑定任何银行卡,通过支付宝大号转入略大于实际票价的金额即可配置自动支付功能。

强烈推荐配置QQ/Server酱等通知功能:

毕竟还没放假要是不停地盯着抢票软件估计也影响工作,所以蓝点网强烈大家配置腾讯QQ的抢票通知功能。

配置上述功能后当成功抢票需要支付时或者完成自动支付时,系统都会自动推送通知到你的QQ等进行提醒,今年蓝点网更推荐大家使用第三方的Server酱通知

Server酱有一定的使用门槛,如果你愿意折腾的话那么继续看:点击这里使用 GitHub 登录Server酱并绑定薇信。

登录并成功绑定薇信后点击这里获取你的Server酱开发者密钥,然后将按照截图中的内容配置以下参数即可通知。

通知地址https://sc.ftqq.com/你的SCKEY.send通知参数text: 分流通知desp: bypassHeaders 留空不写 点击测试查看方糖是否收到通知,若收到则代表成功

配置支付宝自动支付功能(赞助功能):

如需配置支付宝自动支付功能需要点击分流抢票助手顶部的赞助与注册VIP , 然后支付宝支付成功后即可开通VIP。

配置此功能前需要在左下角自动支付内输入支付宝账号和六位数数字密码,接下来再勾选抢到票时自动支付选项。

最后还需要在左下角抢票设置中勾选可选设置中的抢到票自动支付,完成上述配置工作后即可实现抢票自动支付。

提示:支付宝自动支付是模拟人工操作的因此可能触发支付宝风控,这时候便无法自动支付需要用户手动去支付。

挂机全自动抢票软件12306分流助手,更专业的免费抢票软件

去年春运时蓝点网给大家推荐的是12306抢票助手(12306bypass),该工具可以完成全自动挂机并执行抢票动作。

  • 下一篇这样选域名才能赢在起跑线

    这样选域名才能赢在起跑线

    一个好的网站域名,是我们开始网络营销,独立站建设和运营,企业和产品品牌建设的第一步。好的域名能让你事半功倍,赢在起跑线上。而且一旦域名申请注册成功,