github第一抢票神器 (github抢票神器)

春节抢票正在如火如荼的进行,过年回家那肯定需要抢票,每年的抢票大战,都是一场硬战,没有一个好工具,怎么能上战场死锁呢。今天我推荐一个Python抢票工具,送到了GitHub趋势榜第一:

github抢票神器,github第一抢票神器

Python抢票工具

项目名很干脆,就是“12306”,标星超过1.2W,来自名叫文贤平的程序员。

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

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

github抢票神器,github第一抢票神器

py12306 购票助手

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

如果你还没抢到回程的票,试一下这些Python工具吧。已经有许多人类亲测成功了:

github抢票神器,github第一抢票神器

py12306

使用

py12306 需要运行在 python 3.6 以上版本(其它版本暂未测试)

1. 安装依赖

git clone https://github.com/pjialin/py12306

pip install -r requirements.txt

2. 配置程序

cp env.py.example env.py

自动打码

(若快已停止服务,目前只能设置free打码模式) free 已对接到打码共享平台,py12306-helper.pjialin.com,欢迎参与分享

语音通知

语音验证码使用的是阿里云 API 市场上的一个服务商,需要到 market.aliyun.com/products/56928004/cmapi026600.html 购买后将 appcode 填写到配置中

3. 启动前测试

目前提供了一些简单的测试,包括用户账号检测,乘客信息检测,车站检测等

开始测试 -t

python main.py -t

测试通知消息 (语音, 邮件) -t -n

# 默认不会进行通知测试,要对通知进行测试需要加上 -n 参数 
python main.py -t -n

4. 运行程序

python main.py

参数列表

  • -t 测试配置信息
  • -t -n 测试配置信息以及通知消息
  • -c 指定自定义配置文件位置

分布式集群

集群依赖于 redis,目前支持情况

  • 单台主节点多个子节点同时运行
  • 主节点宕机后自动切换提升子节点为主节点
  • 主节点恢复后自动恢复为真实主节点
  • 配置通过主节点同步到所有子节点
  • 主节点配置修改后无需重启子节点,支持自动更新
  • 子节点消息实时同步到主节点

使用

将配置文件的中 CLUSTER_ENABLED 打开即开启分布式

目前提供了一个单独的子节点配置文件 env.slave.py.example 将文件修改为 env.slave.py, 通过 python main.py -c env.slave.py 即可快速启动

Docker 使用

1. 将配置文件*载下**到本地

docker run --rm pjialin/py12306 cat /config/env.py > env.py
# 或
curl https://raw.githubusercontent.com/pjialin/py12306/master/env.docker.py.example -o env.py

2. 修改好配置后运行

docker run --rm --name py12306 -p 8008:8008 -d -v $(pwd):/config -v py12306:/data pjialin/py12306

当前目录会多一个 12306.log 的日志文件, tail -f 12306.log

Docker-compose 中使用

1. 复制配置文件

cp docker-compose.yml.example docker-compose.yml

2. 从 docker-compose 运行

在docker-compose.yml所在的目录使用命令

docker-compose up -d

更新

  • 19-01-10支持分布式集群
  • 19-01-11配置文件支持动态修改
  • 19-01-12新增免费打码
  • 19-01-14新增 Web 页面支持
  • 19-01-15新增 钉钉通知新增 Telegram 通知新增 ServerChan 和 PushBear 微信推送
  • 19-01-18新增 CDN 查询

Web 管理页面

github抢票神器,github第一抢票神器

Web 管理页面

下单成功

github抢票神器,github第一抢票神器

下单成功