项目简介
本项目是基于Python的自动购票助手,其目的是助力用户自动查询与预订火车票。采用分布式架构,支持多账号、多任务、多线程运行,具备动态修改配置文件、邮件通知、Web管理页面、微信消息通知等功能。涵盖查询余票、自动打码下单、用户状态恢复、电话语音通知等核心功能,还有Web管理页面和微信消息通知等附加功能。
项目的主要特性和功能
- 分布式运行:可让多个节点同时运行,实现负载均衡与故障转移。
- 多账号、多任务、多线程支持:支持多个账号同时开展查询与预订工作,能同时处理多个任务,提升购票效率。
- 动态修改配置文件:在程序运行期间可动态修改配置文件,无需重启程序。
- 邮件通知:可通过邮件将购票结果告知用户。
- Web管理页面:提供Web管理页面,便于用户查看任务状态和配置信息。
- 微信消息通知:能通过微信发送消息通知用户购票结果。
- 自动打码下单:支持自动获取验证码并下单,减少人工操作。
安装使用步骤
安装依赖
bash
cd py12306
pip install -r requirements.txt
配置程序
bash
cp env.py.example env.py
按需修改env.py
文件中的配置,如账号信息、通知方式等。
启动前测试
bash
python main.py -t
测试通知消息(可选):
bash
python main.py -t -n
运行程序
bash
python main.py
使用Web管理页面
打开配置文件中的WEB_ENABLE
选项,启动程序后访问http://127.0.0.1:8008
即可进入Web管理页面。
分布式集群
将配置文件中的CLUSTER_ENABLED
打开,使用env.slave.py
配置文件启动子节点。
Docker使用
bash
docker run --rm pjialin/py12306 cat /config/env.py > env.py
docker run --rm --name py12306 -p 8008:8008 -d -v $(pwd):/config -v py12306:/data pjialin/py12306
注意:需在合适的网络环境下运行程序,并遵守相关的铁路票务规定。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】