12306 抢票项目霸榜 GitHub,标星即将破万

十一将至,你买到回家的火车票了吗?如果没有,你可以试着打开 GitHub,在搜索栏键入 12306 的关键词,我相信你会发现一个新大陆。没错,这里有 1572 个抢票项目。它们大多用 Python、JavaScript、Java 写成。其中,名为 testerSunshine 12306 的项目,标星甚至即将破万。网友表示亲测好用,再也不用买加速包了。

12306抢票项目霸榜GitHub,标星即将破万

用 Python 抢票在技术圈已经屡见不鲜了。在更新日志中,我们了解到,testerSunshine 12306 的最早记录是在 2017 年 5 月。最近一段时间,项目作者针对新添加的候补功能进行了较为频繁的更新。目前,它支持 Python 3.6-3.74 版本,已具备自动打码、自动登陆、准点预售和捡漏、智能候补、邮件通知、 pushbear 通知等功能。

12306抢票项目霸榜GitHub,标星即将破万

它的项目思路非常清晰,即便是没有 Python 基础的小白也可轻松操作。

12306抢票项目霸榜GitHub,标星即将破万

依赖库

  • 验证码目前可以本地识别,需要下载模型,放于项目根目录,全部代码来源于此项目 传送门,表示感谢。

12306抢票项目霸榜GitHub,标星即将破万

  • 项目依赖包查看  requirements.txt
  • 安装方法 x:

1)root 用户(避免多 Python 环境产生问题):pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt
2)非 root 用户(避免安装和运行时使用了不同环境): pip3 install -ihttps://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt

项目使用说明

  • 可以配置邮箱, 配置邮箱的格式在配置里面可以看到 ex
  • 可以配置 server 酱提醒(推荐)配置教程
  • 配置配置文件的时候,需注意空格和遵循 python 语法格式

项目开始

  • 服务器启动:

1)修改配置文件
2)运行根目录 sudo python run.py ,即可开始

  • 如果你的服务器安装了 docker 与 docker-compose, 那么就可以通过 docker-compose 进行启动,docker.sh 脚本对此进行了封装,可以通过如下命令进行启动

1)sudo ./docker.sh run # 创建一个镜像并启动容器,如果镜像已经创建过了会直接启动容器。
2)sudo ./docker.sh restart # 修改配置文件后,通过此名命令可重新加载容器运行
3)sudo ./docker.sh rm # 删除容器
4)sudo ./docker.sh drun # 后台运行容器
5)sudo ./docker.sh logs # 在后台运行时,通过此命令查看运行的内容
注:针对没有 docker 环境的同学提供了 docker 安装脚本 (centos7) - sudo ./docker_install_centos.sh

12306抢票项目霸榜GitHub,标星即将破万

成功 log 图示

虽然项目作者表示,程序只是加速买票的过程,并不一定能买到票,但这种多手准备的操作方式仍能为购票成功提升几率。

项目链接:
https://github.com/testerSunshine/12306

原文链接:https://www.infoq.cn/article/quuTtXvaLgoXNOUDgout,如有侵权,请留言!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/473298.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode 1700. 无法吃午餐的学生数量(队列模拟 / 不模拟)

文章目录1. 题目2. 解题1. 题目 学校的自助午餐提供圆形和方形的三明治,分别用数字 0 和 1 表示。 所有学生站在一个队列里,每个学生要么喜欢圆形的要么喜欢方形的。 餐厅里三明治的数量与学生的数量相同。 所有三明治都放在一个 栈 里,每一…

leetcode - Linked List Cycle

题目:Linked List Cycle Given a linked list, determine if it has a cycle in it. Follow up:Can you solve it without using extra space? 个人思路: 1、判断一个链表是否有环,标准做法是采取快慢指针,一个走一步&#xff0c…

高效程序员的 7 项技能

软件工程师把大量时间花在练习 LeetCode 问题获得面试技巧和完善简历上。一旦他们最终在一家初创公司、谷歌、亚马逊或其他公司找到工作,他们可能就会发现,他们获得这份工作所需的技能与他们日常工作所需的技能并不匹配。 受 TechLead 高效程序员的七项技…

想成为企业争抢的目标吗?你需要掌握的五大热门IT技能

在任何一个行业确保有最新的工作技能很重要,而在日新月异的IT界尤为重要,因为过去学到的技术和实践可能再也不是今天完成工作所需的技能和实践了。不管你何时或如何学得IT技能——无论通过正规的大学学位课程、强化培训班,还是完全通过自学并…

LeetCode 1701. 平均等待时间(模拟)

文章目录1. 题目2. 解题1. 题目 有一个餐厅,只有一位厨师。你有一个顾客数组 customers ,其中 customers[i] [arrivali, timei] : arrivali 是第 i 位顾客到达的时间,到达时间按 非递减 顺序排列。timei 是给第 i 位顾客做菜需…

JS全选功能代码优化

JS全选功能代码优化 原文:JS全选功能代码优化JS全选功能代码优化 最近在看javascript MVC那本书,也感觉到自己写的代码也并不优雅,所以一直在想 用另一种模式来编写JS代码,所以针对之前的简单的JS全选功能来做个简单的demo,使用目…

Win 7 通过事件管理器查看计算机开机关机时间

控制面板-管理工具-事件查看器 视图中开机来源:Kernel-General 事件ID:13 关机来源:Kernel-General 事件ID:12 转载于:https://www.cnblogs.com/hyiam/p/3810499.html

怎么样才能更高效的学习区块链

一、为什么选择区块链 选择区块链作为实践学习的案例,原因有三: 第一,区块链是我最近两三个月刚学习的领域,对我来说也是一门从零开始学习的领域,这样的学习案例最具有指导作用。因为时间没有隔太久,很多…

LeetCode 1702. 修改后的最大二进制字符串(贪心)

文章目录1. 题目2. 解题1. 题目 给你一个二进制字符串 binary ,它仅有 0 或者 1 组成。你可以使用下面的操作任意次对它进行修改: 操作 1 :如果二进制串包含子字符串 "00" ,你可以用 "10" 将其替换。 比方说…

如何在python中精确地进行浮点数的四舍五入

在python试题中碰到这么一道题: 输入三个浮点数,求它们的平均值并保留 1 位小数,对小数后第二位数进行四舍五入,最后输出结果 错误示范 因为涉及到四舍五入,随便搜了一下,发现了好多博客都用round(),就直接拿来用了 round(1.55…

c语言中的位移位操作

先要了解一下C语言里全部的位运算都是指二进制数的位运算。即使输入的是十进制的数&#xff0c;在内存中也是存储为二进制形式。 “<<”使用方法&#xff1a; 格式是&#xff1a;a<<m&#xff0c;a和m必须是整型表达式&#xff0c;要求m>0。 功能&#xff1a…

LeetCode 1704. 判断字符串的两半是否相似

文章目录1. 题目2. 解题1. 题目 给你一个偶数长度的字符串 s 。将其拆分成长度相同的两半&#xff0c;前一半为 a &#xff0c;后一半为 b 。 两个字符串 相似 的前提是它们都含有相同数目的元音&#xff08;‘a’&#xff0c;‘e’&#xff0c;‘i’&#xff0c;‘o’&#…

怎样处理糟糕的代码?

在职业生涯中&#xff0c;程序员难免会遇到糟糕的代码&#xff08;bad code)——但是你并不需要成为一个打败这些糟糕代码的“恶人”。 从轻松的角度来讲&#xff0c;糟糕的代码可以创造大量的就业机会。比如&#xff1a; 需要从诸多优秀开发人员中找一个人来修复错误代码。需…

LeetCode 1706. 球会落何处(模拟)

文章目录1. 题目2. 解题1. 题目 用一个大小为 m x n 的二维网格 grid 表示一个箱子。 你有 n 颗球。箱子的顶部和底部都是开着的。 箱子中的每个单元格都有一个对角线挡板&#xff0c;跨过单元格的两个角&#xff0c;可以将球导向左侧或者右侧。 将球导向右侧的挡板跨过左上…

android listview 异步加载图片并防止错位

网上找了一张图&#xff0c; listview 异步加载图片之所以错位的根本原因是重用了 convertView 且有异步操作. 如果不重用 convertView 不会出现错位现象&#xff0c; 重用 convertView 但没有异步操作也不会有问题。 我简单分析一下&#xff1a; 当重用 convertView 时&#x…

Python最实用的25个小技巧

Python 是一种通用的高级编程语言。用它可以做许多事&#xff0c;比如开发桌面 GUI 应用程序、网站和 Web 应用程序等。 并且&#xff0c;通过处理常见的编程任务&#xff0c;Python 能让开发者专注应用程序的核心功能。此外&#xff0c;Python 语言的简单语法规则进一步简化了…

LeetCode 1705. 吃苹果的最大数目(优先队列)

文章目录1. 题目2. 解题1. 题目 有一棵特殊的苹果树&#xff0c;一连 n 天&#xff0c;每天都可以长出若干个苹果。 在第 i 天&#xff0c;树上会长出 apples[i] 个苹果&#xff0c;这些苹果将会在 days[i] 天后&#xff08;也就是说&#xff0c;第 i days[i] 天时&#xff0…

Action重定向总结

[HttpPost]public ActionResult StudentList( string StudName, string studName, DateTime BirthDay, FormCollection form, string controller, string Action, StudentModels student){//其中StudName为aspx页面中标签的name属性(StudName不区分大小写)//其中BirthDay为页面…

全面系统地总结Linux的基本操作(上)

1、 Linux文件和目录 Windows 和 Linux 文件系统 在 windows 平台下&#xff0c;打开"计算机"&#xff0c;我们看到的是一个个的驱动器盘符&#xff1a;每个驱动器都有自己的根目录结构&#xff0c;这样形成了多个树并列的情形&#xff0c;如图所示&#xff1a; 在 …

Pytorch 神经网络nn模块

文章目录1. nn模块2. torch.optim 优化器3. 自定义nn模块4. 权重共享参考 http://pytorch123.com/ 1. nn模块 import torch N, D_in, Hidden_size, D_out 64, 1000, 100, 10torch.nn.Sequential 建立模型&#xff0c;跟 keras 很像 x torch.randn(N, D_in) y torch.randn…