littlebot
Published on 2025-04-15 / 2 Visits
0

【源码】基于Python的自动购票助手

项目简介

本项目是基于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】