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

选自《量子位》

作者:车栗子

来源:凹非寺

一年一度的“全球罕见的人口流动现象” — 春运”即将到来,也许各位小伙伴可能会苦于买不到回家的票。

抢不到票?

不存在的,我有 Python 抢票工具

Github 上有个项目名为 “12306”,标星超过 8.4k,来自名叫文贤平的程序员。

这很可能是全 GitHub  最德高望重的购票小助手了,功能一直在更新,且现已支持 Python 3.6 以上版本。

有些后起之秀,也是在它的基础上开发出来,然后广受欢迎:

标星 4k 的“py12306”便是其中之一,它支持分布式抢票。

如果你不想陷入买不到票的烦恼中,试一下这些 Python 工具吧。

热榜第一的抢票神器

文贤平/文先森 (testerSunshine) 的抢票小助手“12306”,虽然诞生在 2018 年初,但最近一次提交代码,是在今年 9 月 5 日,现在还十分新鲜。

这只得力的小助手,思路清晰又紧凑:

从查询余票开始,到付款完成,最后获取订单号。一气呵成,不怕人类手速太慢。

有了它,文先森去年就丝滑地抢到了回家的票。而后,便努力帮助抢票助手继续进化。

到目前为止,文先森与一众贡献者,已经在项目里提交了 361 次代码,实现的功能有这些:

从更新日志看来,最近加入的重要功能是候补订单

所谓候补,就是在票卖完的情况下预先付款,等其他人退票之后自动补上,是我国 2019 年春运才出现的新机制。

但文先森也还不清楚,这项功能在抢票助手里的需求是怎样的,所以正在密集地尝试和调整:

在实现新功能的同时,已有的功能也在不断优化。

这个抢票工具越来越强大,GitHub 标星数量比起年初的 4k,也已经翻了一番。

随着项目的成长,文先森在 8 月 31 日宣布了一件重要的事:

放弃支持Python 2.7,只支持 3.6 以上版本。

具体的食用方法,可以从传送门前往项目页观察。

如果,你在食用过程中遇到了障碍,使用帮助目录里也没找到解答,除了发起Issue,还可以进群讨论:

把失败的 log 发到群里,大佬说不定能帮你调出来。

不过,有了抢票助手,也不是一定买得到票。

所以,多试几种工具也是好的,尤其是可以同时进行多个任务的那种:

分布式抢票助手

一位名叫 pjialin 的程序员,借鉴了文先森的部分代码实现,开发了一个分布式工具,名叫 py12306 购票助手

就是说,一台机器抢不到,可以让许多硬件一起跑。

它还支持多任务 (多班列车) 、多日期多账号一起查。

另一个机智的功能是,同时观察多个始发站到达站的组合。

比如,北京出发的票没有了,就跑去下一站上车;或者家门口买不到,就直接买到终点:愿意妥协但限于手速的小伙伴,也能交给工具自动查看了。

项目作者说,试过文先森的算法和 bypass12306,未果,这才做出了自己的抢票工具。

用上这个新工具,他一下子抢到了好几张票。

同样是支持 Python 3.6 以上版本,这个项目现在也有 4k 标星了。

薪火承传

2010 年初,官方上线 12306。从那时起,程序员就开始用自己的方法查询余票了:

 来自李凡希

后来,越来越多的程序员加入这个队伍,他们的力量也越发强大,大到能让 GitHub 垮掉。

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

就是它,在 1 月  15  日小高峰来临的时候,引发了著名的“12306 订票助手拖垮 GitHub”事件。

原因是插件的早期版本,用 GitHub 的 Raw File 服务作  CDN,且如果返回 403 错误,就 5 秒重试一次,永久重试。

iFish 大佬应该不会想到,巨大的访问量导致 Github 受到 DDOS 攻击,速度扑街。GitHub 甚至想到找人联系 12306 官方,去除那个引用。

虽然,当年的事件过去了,但程序员对回家的渴望还在那里,就会不断孕育出新的抢票工具,拯救自己,拯救世界。

最后,祝小伙伴们都能顺利买到回家的票。

12306 项目传送门:
https://github.com/testerSunshine/12306

py12306 项目传送门:
https://github.com/pjialin/py12306/

推荐阅读

1

Python 中更优雅的日志记录方案

2

别再造假数据了,来试试 Faker 这个库吧!

3

200 行代码实现一个滑动验证码

4‍‍

如何用一条命令将网页转成电脑 App

好文和朋友一起看~

全网最牛掰的 12306 抢票神器,助力抢到春节回家的票相关推荐

  1. 标星1.3W!GitHub热榜第一,全网最牛掰的12306抢票神器

    点击上方蓝色字体,选择"标星公众号" 优质文章,第一时间送达 车栗子 发自 凹非 量子位 报道 | 公众号 QbitAI 整理自java后端久一 想要十一回家的小伙伴们,大概刚刚经 ...

  2. python github 12306 文贤平_全网最牛掰的12306抢票神器,助力抢到春节回家的票

    ↑↑↑点击上方"蓝字",关注"极客猴" 如果你喜欢极客猴,可以把我置顶或加为星标 选自<量子位> 作者:车栗子 来源:凹非寺 阅读文本大概需要 3 ...

  3. 全网最牛的12306抢票神器,助力抢到春节回家的票

    " 阅读本文大概需要 5 分钟. " 你们心心念念的抢票攻略来了! 选自<量子位> 作者:车栗子 来源:凹非寺 一年一度的"全球罕见的人口流动现象" ...

  4. Python版实现12306抢票功能,真的能帮你抢到春运回家的票吗?

    背景 每逢佳节倍思亲,年关将近,思乡的情绪是不是愈发强烈了,筒子们是不是又要准备开始抢票了,还是在找黄牛吗?但是,今年在考虑是否能抢到票以外,还需要考虑是否能回得去,没错,因为疫情,需要全国人民同心协 ...

  5. 真香...全网最牛12306抢票神器,GitHub热榜第一,标星1.3W!

    文/北妈 阅读本文需要 2.0分钟 这是北妈第 225篇 原创文章 一 先说一句我们的口号:周五不加班,周五不加班!(虽说最近北妈总加班) 周五,我们老规矩,唠唠嗑.说几件事 最近zhu肉涨价,北妈我 ...

  6. 全网最牛12306抢票神器!!!

    最近很多人和公司都在加班,疯狂996,所有项目组全部要求996工作制,还是那句话:为何把工作任务和排期都归到年底了呢? 而且有一个现象,闲的闲死,忙的忙死,但闲着的人,为了不脱节,也要让自己看起来超级 ...

  7. GitHub 上的 12306 抢票神器,助力回家过年

    又到周末了,不过本周末有些略微的特殊. 距离每年一次的全球最大规模的人类大迁徙活动已经只剩下一个多月了,各位在外工作一年的小伙伴大多数人又要和小编一样摩拳擦掌的对待史上最难抢的抢票活动. 然鹅,身为一 ...

  8. 有“肌肉”有“血管”!波兰团队耗时5年研发超逼真仿生机械臂,网友:很怪异也很牛掰...

    来源:大数据文摘 本文约1800字,建议阅读5分钟 本文为你介绍波兰团队研发的真仿生机械臂. 1970年,日本机器人专家森政弘提出,一个看上去和人类无异的实体可能会让人们产生一种寒冷和怪异的感觉. 那 ...

  9. 想非常牛掰的在WORD中调中多级符号吗

    今天从同事那学了一招,简单.快捷还牛掰! 方法是:1.你要先调出一个一级符号,然后在把光标指向这个一级符号上并单击选定 2.华丽的按下"TAB"键. 3.完工了! 你会发现第二级符 ...

最新文章

  1. R语言ggplot2可视化分面图(facet_wrap)、使用size参数自定义设置分面图标签栏(灰色标签栏)中的标签文本的字体大小
  2. Javascript编程基础1
  3. 蓝桥杯-打印十字图-java
  4. java 反射 参数名_JAVA 8 反射获取参数名
  5. 2021年 第13届 全国大学生数学竞赛 初赛(非数学类)试题详细解答
  6. 初识Mysql(part13)--我需要知道的7条Mysql语句之更新和删除数据
  7. 100个网络基础知识,赶紧收藏吧!
  8. 考虑用静态工厂方法代替构造器
  9. R语言相关关系可视化函数梳理
  10. 服务器pe装系统教程,U盘pe如何重装系统_U盘pe系统安装教程
  11. 深度学习算法面试问题整理
  12. SAR图像聚焦质量评价插件
  13. 【第五课】UAV倾斜摄影测量三维建模之空三计算问题
  14. PHP GD库文字生成图片及图片拼接
  15. (附源码)springboot社区快递代取服务系统 毕业设计051434
  16. 搭建maven私服发布项目并从私服下载jar包
  17. 刘克亚励志演讲(清晨/夜晚)
  18. linux用vim修改字符串,阳光沙滩博客-Linux下 vi/vim的使用
  19. 如何赢得消费者信任?
  20. SMB实现共享文件(上传、下载)

热门文章

  1. BMG5100千兆5G智能杆网关
  2. 【英语词组】恋恋不忘Day5-2
  3. Jetson nano 卡刷教程
  4. Android 屏保实现
  5. ORA-1653: unable to extend table GGS.GGS_DDL_HIST
  6. 项目一 认识Linux 操作系统
  7. house price
  8. MSDN查阅库函数(c语言)
  9. 新思科技凭借Coverity Scan帮助NGINX确保代码质量和安全
  10. 自然语言处理NLP——情感分析(Sentiment Analysis)简述