python实现抢票github_Python抢票回家!GitHub标星超2万的项目帮你抢票回家过年!...

wAAACwAAAAAAQABAEACAkQBADs=

在开始前 我先介绍一下我自己,我自己是一名从事了多年开发的python老程序员,目前辞职在做自己的python私人定制课程,今年年初我花了一个月整理了一份最适合2019年学习的python学习干货,各种框架都有整理,送给每一位python小伙伴,想要获取的可以添加我的python学习裙:8218-71075

阅读文本大概需要 6 分钟。

盼望着,盼望着,

春节的脚步近了,

然而,每年到这个时候,

最难的,

莫过于一张回家的火车票。

wAAACwAAAAAAQABAEACAkQBADs=

据悉,

今年春运期间,

全国铁路发送旅客人次同比将增长8.0%。

达到4.4亿人次,

2020年铁路春运自1月10日开始,

2月18日结束,共40天,

节前15天,节后25天,

今年的12月12日起日1月10日火车票正式发售。

wAAACwAAAAAAQABAEACAkQBADs=

即使再难,家还是要回的,票还是要抢的,所以这一周,GitHub上用python抢票的项目又重回top榜单。

wAAACwAAAAAAQABAEACAkQBADs=

这个抢票小助手诞生于2017年,作者是文贤平/文先森 (testerSunshine) ,目前这个项目标星已经超过 20000,可想而知程序员们回家的愿望是多么的迫切!

史上最强抢票助手,紧随12306更新

从项目的更新日志可以看到,这个项目的第一次更新是在2017.5.13,之后一共进行了32次更新,其中大部分是作者本人,也有一些开发者提供了支持。

这个项目基本上是紧随着12306网站的功能更新而更新的,比如去年春运增加的候补功能,在票卖完的情况下预先付款,等其他人退票之后自动补上。该项目也在今年加入了这个功能。

wAAACwAAAAAAQABAEACAkQBADs=

目前这个抢票小助手基本支持12306的所有主要功能,包括相当邮件通知、智能候补等。

wAAACwAAAAAAQABAEACAkQBADs=

这个抢票小助手堪称史上最强的抢票小助手了,作者在项目后面提供了交流群,9个群如今已经有7个满了,可想而知这是多么强大的力量。

句句代码,只为抢一张回家的票

作者为了这个项目还是费了不少心血的,首先我们来看一下作者的思路。

wAAACwAAAAAAQABAEACAkQBADs=

思路并不复杂而且相当紧凑。

首先需要下载一个机器学习模型完成对12306验证码的自动识别,该模型需放于项目根目录中。

1. 模型下载链接:

https://pan.baidu.com/s/1rS155VjweWVWIJogakechA

密码:bmlm

2. git仓库下载:

https://github.com/testerSunshine/12306model.git

(1)cd 12306/

(2)git clone

https://github.com/testerSunshine/12306model.git

wAAACwAAAAAAQABAEACAkQBADs=

模型的安装需要一些依赖,具体如下:

wAAACwAAAAAAQABAEACAkQBADs=

满足了依赖之后可以进行安装:

root用户(避免多python环境产生问题):

pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt

非root用户(避免安装和运行时使用了不同环境):

pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt

许多windows的用户装不了tensorflow的话,可以适当降低版本或者升高版本都是可以的。

注意,在过程中如果报错为缺少上面列表中的依赖,只需单独使用pip3安装相应依赖包即可。

wAAACwAAAAAAQABAEACAkQBADs=

wAAACwAAAAAAQABAEACAkQBADs=

wAAACwAAAAAAQABAEACAkQBADs=

随后,越来越多的程序员开始了“面向回家编程”,出的最大的新闻是差点搞垮GitHub。

2012年,一位叫做iFish的大佬开发的插件,被很多浏览器的春节版本纷纷搭载,连12306官方也引用了里面的一个资源。

wAAACwAAAAAAQABAEACAkQBADs=

这个插件引发了著名的「12306 订票助手拖垮 GitHub」事件。

简单来说,就是这款“订票助手”使用的文件并不是普通的静态文件(例如 gist),而是一个repo 的raw data。这就意味着,每次有人请求这个文件,github都要去访问这个repo,查找要求的数据。

并且,如果一次数据请求失败,那么这个指令就会就每五秒请求一次,直到成功。于是在春节前十几天的抢票高峰时,巨大的访问量导致Github受到DDOS攻击,不堪负载。

事后作者本人也表示:慌得一批。

wAAACwAAAAAAQABAEACAkQBADs=

之后随着各种App付费抢票的出现,很多人不会选择码一堆代码只为抢一张票,但是程序员心中的执念还是始终不会熄灭,“面向回家编程”,再艰难也是值得的!

最后祝愿各位小伙伴们:在今年的春运中成功抢票,顺利回家!

还有就是给大家分享一波python资料,需要的按下方步骤获

https://www.jianshu.com/p/c02777c86e14

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值