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

又到了一年一度的抢票大战,本来就辛苦劳累了一年,想着可以早点订到票跟家里人团聚。所以有挺多的人,宁愿多花些钱去找黄牛买票。但今年各种抢票软件的横行,还有官方出的加速包,导致连黄牛都不敢保证能买到票。你无奈的只能一起加入抢票大军。

从不花钱的低速,到中速、高速、极速、光速、VIP,6 种抢票速度,越快当然抢到的几率也就更高,但每升一极都需要你花 10 个加速包才能实现。

而加速包的获取方式有两种:1 直接花钱买,1 元 1 个价格,全套下来大概 50 元左右。2 是好友助力,每邀请一个好友帮你助力就能获取 2 ~ 5 不等的加速包。

大部分人都是不愿意花钱买加速的,所以你开始群发好友,轰炸微信群,朋友圈吆喝,挂 N 个抢票软件,各种你能想到的手段,都尝试一遍,但无一都失败了。

今天我就给大家介绍一个开源的 Python 抢票程序,亲测有效!我身边已经有很多好友,通过这个程序抢到车票了。不仅免费开源,还非常有用。

12306 购票小助手

项目已经在 GitHub 上开源了,地址:

作者也很用心的把程序的思路给画了出来,我们可以简单的看一下。整个思路其实就是模拟一个正常人购票的方式,首先查询下车票剩余的票数,如果有座位提交订单,出现验证码这识别验证码,随后就循环点击提交按钮,这里作者就做了很多的条件判断,比如出现异常则重新查询,提交订单失败也重新查询,直至获取订单成功。订票成功之后还有一个通知机制,即发送到你的邮箱里。

项目使用到的 Python 库

接下来我们查看这个项目都用到哪些 Python 库。打开 requirements.txt 文件,这里面把项目所用到的库大致都写了出来。

网络请求用到了经典的 requests 库,而页面解析用到了 bs4 和 beautifulsoup4。有人可能会问这两个解析库有什么区别?bs4 是用在 python3 版本上的,而 beautifulsoup4 是用在 python2 版本上。我最开始学 beautifulsoup 的时候就被这个坑过。

Pillow:Pillow 是很经典的 Python 图像处理库,可以大致猜测作者用这个库来解决简单验证码的问题。

PyYAML:YAML 是一种直观的能够被电脑识别的的数据序列化格式,容易被人类阅读,并且容易和脚本语言交互。YAML 类似于 XML,但是语法比 XML 简单得多。PyYAML 是 YAML 的 Python 实现,可以用于参数化 Pytho n对象,用来当做配置文件。

Six:众所周知 Python 2 和 Python 3 版本的分裂给 Python 开发者们带来了很大的烦恼,为了使代码同时兼容两个版本,往往要增加大量的代码。 于是 Six 出现了。正如它的介绍所说,它是一个专门用来兼容 Python 2 和 Python 3 的库。它解决了诸如 urllib 的部分方法不兼容, str 和 bytes 类型不兼容等“知名”问题。

到这里就可以看出作者这个程序是考虑到 Python 不同版本之间的兼容性问题的,简直业界良心。

wrapacache:一个基于 Python 装饰器 Decorators 的方法缓存系统,用于缓存 Python 方法的输出值,可以支持复杂数据类型,可以缓存到 Redis 中、Python dict、LUR 算法存储中。

ntplib:这个库是用来在 window 上同步校准当地时间的。

安装使用

上图在 GitHub 仓库中都有写到。我这里就简单的讲下,首先你需要注册「若快」的打码平台,为了可以让程序自动打码。随后安装程序依赖包,安装方法上面已经写到了。

最后程序有一个很重要的文件叫「ticket_config.yaml」

所有购买车票的信息都是在这个文件里配置的,比如车票时间,12306 账号密码,乘车人信息,通知邮箱等等,作者在文件中都有详细的注释。

把这个配置文件按你的需求填写完毕之后,大家就可以开始运行了。

运行 run.py 文件即可,亲测有效!

在公众号「痴海」中,回复「1024」即可 2019 最新编程资料获取!

python抢票代码运行内存越来越大_50 个加速包都抢不到车票,还不如这个 Python 抢票神器...相关推荐

  1. python抢票_50 个加速包都抢不到车票,还不如这个 Python 抢票神器!

    又到了一年一度的抢票大战,本来就辛苦劳累了一年,想着可以早点订到票跟家里人团聚.所以有挺多的人,宁愿多花些钱去找黄牛买票.但今年各种抢票软件的横行,还有官方出的加速包,导致连黄牛都不敢保证能买到票.你 ...

  2. 智行火车票免费加速到VIP最高速抢票(不用朋友积攒或者购买加速包)

    更新: 2018.11.07, 昨天我买火车票,已经不行了,这个bug已经没有了,被修复了, 望大家知悉!!! 智行火车票免费加速到VIP最高速抢票(不用朋友积攒或者购买加速包) 1)下过单后选择抢到 ...

  3. python学习:12306火车票抢票代码公开揭秘

    火车票抢票代码公开揭秘 市场上很多火车票抢票软件大家应该非常熟悉,但很少有人研究具体是怎么实现的,所以觉得很神秘,其实很简单.下面使用Python模拟抢票程序,给大家揭秘抢票到底是怎么回事. 该代码仅 ...

  4. python抢票代码_GitHub标星超12K,抢票神器大更新,支持候补

    掐指一算,距离国庆黄金周还有半个月的时间!你出行的车票都抢到了吗? 图片来自 pexels 根据国务院办公厅发布的关于 2019 年部分节假日安排的通知,国庆放假安排是:10 月 1 日至 7 日. ...

  5. python抢票代码_教你用Python动刷新抢12306火车票,附源码!

    用python另一个抢票神器,你get到了吗? 2017年时间飞逝,转眼间距离2018年春节还有不到1个月的时间,还在为抢不到火车票发愁吗?作为程序员的我们撸一个抢票软件可好? ... 难以想象的数据 ...

  6. python抢票代码_五一要来了,教你用Python动刷新抢12306火车票,附源码

    用python另一个抢票神器,你get到了吗? 2020年时间飞逝,转眼间马上要到五一了,还在为抢不到火车票发愁吗?作为程序员的我们撸一个抢票软件可好? ... 难以想象的数据, 预示着今年春运回程和 ...

  7. python抢票代码_五一要来了,教你用Python自动抢火车票,附源码

    用python另一个抢票神器,你get到了吗? 2020年时间飞逝,转眼间马上要到五一了,还在为抢不到火车票发愁吗?作为程序员的我们撸一个抢票软件可好? ... 难以想象的数据, 预示着今年春运回程和 ...

  8. python抢票代码_如何使用python爬取抢票?

    有身在异乡的小伙伴们?相信绝大多数的小伙伴都曾有过离开过,或现在是,独在异乡的情况吧,拿小编来说,小编现在就是这种状况,回家次数不多,不是因为没有时间,而是因为没有车票,每次都需要拿抢票软件,于是,脑 ...

  9. python装b代码_Python十大装B语法

    Python 是一种代表简单思想的语言,其语法相对简单,很容易上手.不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了.本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并 ...

最新文章

  1. usaco ★Subset Sums 集合
  2. FFmpeg基本组成
  3. 白话经典算法系列之六 快速排序 快速搞定
  4. 《The Art of Readable Code》学习笔记(一)
  5. 深度优先搜索重要模板
  6. Visual Studio 2010 SDK
  7. mvc ajax post json数据,springmvc解决ajax post json格式数据的跨域问题
  8. oracle延迟约束不起作用,Oracle可延迟约束Deferable的使用
  9. parent.window php,javascript中的window.self、window.top、window.parent和window.opener详解
  10. 经典排序 —— 选择排序
  11. struct深层解析
  12. atx和matx机箱_常见的主板规格ATX与mATX比较,各有什么优缺点,选哪个好?
  13. 简单拖拉拽就能做数据可视化分析图表
  14. 数据库原理与技术(专升本)-含答案
  15. C# Excel导出超出65536行报错
  16. 电磁兼容工程(Electromagnetic compatibility engineering Herry Ott )读书笔记-- 章14 抗射频和瞬态信号干扰能力
  17. 大型网站架构 - LAMP
  18. 谈谈SPI (Serial Peripheral Interface,串行外设接口)
  19. csdn如何增加访问量
  20. 《UnityAPI.Application应用程序》(Unity+SteamVR+云技术+5G+AI+VR云游戏+API+dataPath+OpenURL+LoadLevel+立钻哥哥++OK++)

热门文章

  1. PDF Reader Pro,功能强大的 PDF 阅读编辑器
  2. 【随笔记】我与Java的故事
  3. 2017年团建心得、总结、建议
  4. 小众又冷门的手帐,居然也是一个非常赚钱的项目
  5. Android的高德地图实现行政区域显示
  6. TI C2000 刷flash意外锁芯片的解决办法
  7. kafka-eagle数据库脚本,表结构和数据
  8. FP、FN、TP、TN、精确率(Precision)、召回率(Recall)、准确率(Accuracy)是什么意思
  9. VGA接口和HDMI接口有什么区别 哪个好
  10. Python操作MongoDB看这一篇就够了