春节抢票正在如火如荼的进行,过年回家那肯定需要抢票,每年的抢票大战,都是一场硬战,没有一个好工具,怎么能上战场呢。你还在用12306,飞猪,携程抢票吗,你已经out了,程序员现在都用自己的抢票方式。
今天分享一个Python抢票工具,现在到了GitHub趋势榜第一:
项目名很干脆,就是“12306”,标星超过2.3W,来自名叫文贤平的程序员。这很可能是全GitHub最德高望重的购票小助手了,功能一直在更新,且现已支持Python 3.6以上版本。虽然诞生在2018年初,但最近一次提交代码,是在今年9月5日,现在还十分新鲜。
如果你还没抢到回程的票,试一下这个Python工具吧,已经有许多人类亲测成功了。
这只得力的小助手,思路清晰又紧凑:
从查询余票开始,到付款完成,最后获取订单号。一气呵成,不怕人类手速太慢。
有了它,就不怕抢不到了回家的票。
到目前为止,文贤平与一众贡献者,已经在项目里提交了361次代码,实现的功能有这些:
废话少说,下面来看一下怎么用吧。
一 下载# testerSunshine的12306源码
可以通过git clone或者下载源码解压的方式。
源码下载下来如图所示。
二 自托管云打码服务器搭建:12306_code_server,项目地址https://github.com/YinAoXiong/12306_code_server
建议安装Docker。使用docker可以使用如下命令快速部署:
docker run -d -p 8080:80 --name 12306 yinaoxiong/12306_code_server
三 下载项目依赖 requirements.txt
切换到第一步下载的源码根目录下,执行
pip install -r requirements.txt
这一步会安装所有依赖。
四 抢票配置
前提条件:
- 请确认你安装的docker版本为18.09及以上: docker -v
- 请确认你安装的docker-compose版本为1.23.2及以上: docker-compose -v
- 请根据自己需要修改好配置文件:TickerConfig.py
-
请修改配置文件TickerConfig.py中的变量AUTO_CODE_TYPE和HOST,AUTO_CODE_TYPE改为3, HOST改为"captcha:80"(这里很重要,这是本地打码服务器的配置)
下面具体说说TickerConfig.py的配置,此文件在第一步下载的源码的根目录下。
五 开始抢票
运行命令:
- 开始抢票:docker-compose up --build -d
- 停止抢票:docker-compose down
- 查看抢票log: docker logs --follow ticket
测试了一下,我抢票成功,再也不用担心回不去家了。我还配置了微信推送和邮箱提醒。