py12306 购票助手
传送门 https://github.com/pjialin/py12306/
py12306 购票助手
分布式,多账号,多任务购票
前言
今年回家的票明显要难买很多,早早就答应了父母今年的票没问题,到现在一张票没买到,虽然家里已经订了汽车票,让我不用操心,但是想想他们一行还有小孩,心还是很伤的。 这段时间从 12306Bypass 到 testerSunshine 大佬写的 12306,还是没抢到票,索性就自己写了一个,希望也能帮助到更多人
Features
- 多日期查询余票
- 自动打码下单
- 用户状态恢复
- 电话语音通知
- 多账号、多任务、多线程支持
- 单个任务多站点查询
- 分布式运行
- Docker 支持
- 动态修改配置文件
- 邮件通知
- Web 管理页面
- 微信消息通知
使用
py12306 需要运行在 python 3.6 以上版本(其它版本暂未测试)
1. 安装依赖
git clone https://github.com/pjialin/py12306pip install -r requirements.txt
2. 配置程序
cp env.py.example env.py
自动打码
目前支持免费打码,和若快打码
注:免费打码无法保证持续可用,如失效请手动切换到若快平台,需要先到 http://www.ruokuai.com 注册一个账号后填写到配置中
语音通知
语音验证码使用的是阿里云 API 市场上的一个服务商,需要到 https://market.aliyun.com/products/57126001/cmapi019902.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 -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 -d -v $(pwd):/config -v py12306:/data pjialin/py12306
当前目录会多一个 12306.log 的日志文件, tail -f 12306.log
Web 管理页面
目前支持用户和任务以及实时日志查看,更多功能后续会不断加入
使用
打开 Web 功能需要将配置中的 WEB_ENABLE
打开,启动程序后访问当前主机地址 + 端口号 (默认 8008) 即可,如 http://127.0.0.1:8008
更新
- 19-01-10
- 支持分布式集群
- 19-01-11
- 配置文件支持动态修改
- 19-01-12
- 新增免费打码
- 19-01-14
- 新增 Web 页面支持
- 19-01-15
- 新增 钉钉通知
- 新增 Telegram 通知
- 新增 ServerChan 和 PushBear 微信推送
截图
Web 管理页面
下单成功
关于防封
目前查询和登录操作是分开的,查询是不依赖用户是否登录,放在 A 云 T 云容易被限制 ip,建议在其它网络环境下运行
交流群 274781597
Thanks
- 感谢大佬 testerSunshine,借鉴了部分实现
- 感谢所有提供 pr 的大佬
转自git
py12306 购票助手相关推荐
- py12306:你的 12306 购票助手(支持集群,多账号,多任务购票)
程序员的成长之路 互联网/程序员/成长/职场 关注 阅读本文大概需要 2 分钟. 假期不发技术性文章,祝大家国庆快乐~ 项目介绍 12306 购票助手,支持集群,多账号,多任务购票以及 Web 页面 ...
- python12306买票_使用 py12306 购票
归程将至,不少朋友可能还未买到火车票.这里根据我自己这几天的购票经历分享下如何使用工具 py12306 购票. 这里我们使用 Linux 系统. 安装 Python 环境 首先需要 Python 环境 ...
- 12306终极购票助手(支持一键,方便快捷)
官方博客链接 ********************************************************************************************* ...
- gitHub 25.6k star 购票助手 testerSunshine/12306 安装教程(windows)
1.python 安装 支持版本 3.6 - 3.7.4 3.73下载地址 2.安装完cmd窗口执行命令 python 如图: 如果报错则是没有添加环境变量,添加电脑环境变量,没有报错则跳过此步进入第 ...
- 12306火车购票 助手.js
// ==UserScript== // @name 12306.CN 订票助手 For Firefox&Chrome // @namespace htt ...
- 12306购票助手开源啦
去年春运期间写了一篇文章<火车票抢票攻略>得到很多园友们的支持,今天我把源代码放在github上了,有兴趣的同学可以去看看. 源码地址:https://github.com/lq1016/ ...
- 牛X,试用了下 GitHub 上 2 万 Star 的第一抢票神器,3 秒钟抢到!
点击上方"视学算法",选择"星标" 车栗子 发自 凹非寺 量子位 报道 | 公众号 QbitAI 春节抢票正在如火如荼的进行,过年回家那肯定需要抢票,每年的抢票 ...
- 抢票神器成GitHub热榜第一,支持候补抢票,Python跑起来
车栗子 发自 凹非寺 本文转载自:量子位(QbitAI)想要十一回家的小伙伴们,大概刚刚经历了一波抢票大战. 顺便把一个Python抢票工具,送到了GitHub趋势榜第一: 项目名很干脆,就是&qu ...
- 抢票神器成GitHub热榜第一,支持候补抢票,Python跑起来 | 标星8400
车栗子 发自 凹非寺 本文转载自:量子位(QbitAI) 想要十一回家的小伙伴们,大概刚刚经历了一波抢票大战. 顺便把一个Python抢票工具,送到了GitHub趋势榜第一: 项目名很干脆,就是&q ...
- python抢票代码_GitHub标星超12K,抢票神器大更新,支持候补
掐指一算,距离国庆黄金周还有半个月的时间!你出行的车票都抢到了吗? 图片来自 pexels 根据国务院办公厅发布的关于 2019 年部分节假日安排的通知,国庆放假安排是:10 月 1 日至 7 日. ...
最新文章
- 张孝祥javascript学习笔记1---HTMLCSS
- php使用memcache存储session
- HTTP 错误 404.3 - Forbidden
- AndroidAsync
- python表单处理_python flask 表单处理Flask-WTF
- python telnetlib详解 执行循环命令_Python3+telnetlib实现telnet客户端
- Python入门--字符串的切片操作
- 计算机网络体系结构作业题整理-第一章答案
- 高斯光束matlab 仿真,高斯光束的matlab仿真
- 计算机游戏运行组件,Steam游戏必备运行库安装包
- 2021年度盘点|民宿发展"春水涌动"
- 怎么用计算机创建wifi,电脑如何设置wifi
- [JZOJ5442]【NOIP2017提高A组冲刺11.1】荒诞([BZOJ3060]【POI2012】Tour de Byteotia)
- python 大文件分片上传_Python实现大文件分片上传
- php获取服务器运行时间差,解决php服务器时间差异
- [人脸活体检测] 论文: Learning Deep Models for Face Anti-Spoofing: Binary or Auxiliary Supervision
- 企业高管和高收入人群必读的税务筹划策略!
- 【论文阅读笔记】BART: Denoising Sequence-to-Sequence Pre-training for Natural Language Generation, Translati
- mysql c盘满了 怎么办_C盘满了如何清理
- 新唐单片机选型手册_新唐8051标准系列单片机选型指南
热门文章
- android studio 汉化包 美化包
- 运筹学 知识点总结 (十一)
- 2021线报天下 原创工具 (免费版本,无版权问题)
- 苹果手表出现,请在iphone 打开apple watch 应用,前生Passcode,轻点密码重试
- 湖北工业大学计算机学院考研资料,湖北工业大学计算机学院836数据结构历年考研真题汇编.pdf...
- BeyondCompare 源代码比对解决方案
- 20阶乘matlab,matlab如何调用阶乘函数求阶乘的和
- OpenDrive学习笔记
- M2Det 论文阅读心得[目标检测领域]
- Linux安装Anaconda报错,无法执行二进制文件,可执行文件格式错误