项目简介
此项目是基于Python的火车票预订助手,借助12306官方网站提供的API开展火车票查询与预订工作。项目运用分布式架构,支持多账号、多任务、多线程购票,能够动态修改配置文件,还支持邮件、短信、微信等多种通知方式。它提供了Web管理页面和API接口,可动态修改配置并实时查看日志,具有良好的扩展性和可维护性。
项目的主要特性和功能
- 多账号、多任务、多线程购票,提升购票效率。
- 提供Web管理页面,便于用户查看任务状态和日志信息。
- 可动态修改配置文件,满足用户个性化设置需求。
- 支持邮件、短信、微信等多种通知方式,方便用户及时获取购票信息。
- 具备API接口,方便集成到其他系统。
- 支持实时日志查看,便于用户调试和故障排查。
- 采用分布式集群,实现负载均衡和故障转移。
- 使用Python编写,具有良好的扩展性和可维护性。
安装使用步骤
假设用户已经下载了本项目的源码文件。
1. 安装依赖包:
bash
pip install -r requirements.txt
2. 配置程序:
bash
cp env.py.example env.py
根据需要修改env.py
中的配置,如账号信息、通知方式等。
3. 启动前测试:
bash
python main.py -t
测试通知消息:
bash
python main.py -t -n
4. 运行程序:
bash
python main.py
5. 分布式集群:
将配置文件中的CLUSTER_ENABLED
打开即开启分布式。使用env.slave.py
配置文件启动子节点:
bash
python main.py -c env.slave.py
6. 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
7. Web管理页面:
打开配置中的WEB_ENABLE
,启动程序后访问http://127.0.0.1:8008
。
注意事项
- 请确保安装的Python版本与项目要求一致。
- 配置文件中的账号、密码等信息请妥善保管,避免泄露。
- 分布式集群功能需要Redis服务器支持,请确保Redis服务器正常运行。
- 分布式集群模式下,请确保所有节点配置一致,并正确设置主节点和从节点。
- 使用API接口时,请确保调用方具备正确的权限和身份认证。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】