py12306购票助手,支持分布式,多账号,多任务购票,还带了很方便的Web管理界面,支持各种通知,比如微信,电话语音,邮件等。
功能
-
- 多日期查询余票
-
- 自动打码下单
-
- 用户状态恢复
-
- 电话语音通知
-
- 多账号、多任务、多线程支持
-
- 单个任务多站点查询
-
- 分布式运行
-
- Docker 支持
-
- 动态修改配置文件
-
- 邮件通知
-
- Web 管理页面
-
- 微信消息通知
-
- 代理池支持
使用安装
Github地址:https://github.com/pjialin/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
然后编辑该配置文件,填入你的账号等信息,建议使用FTP工具访问VPS后编辑该文件。
自动打码
目前支持免费打码,和若快打码
注:免费打码无法保证持续可用,如失效请手动切换到若快平台,需要先到 http://www.ruokuai.com 注册一个账号后填写到配置中
语音通知
语音验证码使用的是阿里云 API 市场上的一个服务商,需要到 https://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 指定自定义配置文件位置
然后Web管理界面自动开启,访问地址为ip:8008。如果打不开建议检查下防火墙端口。
关于防封
目前查询和登录操作是分开的,查询是不依赖用户是否登录,放在 A 云 T 云容易被限制 ip,建议在其它网络环境下运行。
具体细节和其他问题,有兴趣的可以访问Github地址查看。