前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >py12306:你的 12306 购票助手(支持集群,多账号,多任务购票)

py12306:你的 12306 购票助手(支持集群,多账号,多任务购票)

作者头像
良月柒
发布2019-10-10 16:16:41
1.3K0
发布2019-10-10 16:16:41
举报
程序员的成长之路

互联网/程序员/成长/职场

关注

阅读本文大概需要 2 分钟。

假期不发技术性文章,祝大家国庆快乐~

项目介绍

12306 购票助手,支持集群,多账号,多任务购票以及 Web 页面管理。

功能

  • 多日期查询余票
  • 自动打码下单
  • 用户状态恢复
  • 电话语音通知
  • 多账号、多任务、多线程支持
  • 单个任务多站点查询
  • 分布式运行
  • Docker 支持
  • 动态修改配置文件
  • 邮件通知
  • Web 管理页面
  • 微信消息通知
  • 代理池支持 (pyproxy-async)

使用

py12306 需要运行在 python3.6 以上版本(其他版本暂为测试)

1. 安装依赖

代码语言:javascript
复制
git clone https://github.com/pjialin/py12306

pip install -r requirements.txt

2. 配置程序

代码语言:javascript
复制
cp env.py.example env.py

自动打码

验证码可以本地识别,所用的模型和算法均来自 https://github.com/zhaipro/easy12306 十分感谢! 验证码识别已迁移到服务器进行识别,无需本地安装环境

注:免费打码无法保证持续可用,如失效请手动切换到若快平台,需要先到 http://www.ruokuai.com 注册一个账号后填写到配置中(若快已停止服务,目前只能设置free打码模式)

语音通知

语音验证码使用的是阿里云 API 市场上的一个服务商,需要到 https://market.aliyun.com/products/56928004/cmapi026600.html 购买后将 appcode 填写到配置中

3. 启动前测试

目前提供了一些简单的测试,包括用户账号检测,乘客信息检测,车站检测等

开始测试 -t

代码语言:javascript
复制
python main.py -t

测试通知消息 (语音, 邮件) -t -n

代码语言:javascript
复制
# 默认不会进行通知测试,要对通知进行测试需要加上 -n 参数
python main.py -t -n

4. 运行程序

代码语言:javascript
复制
python main.py

Docker-compose 使用方法,略...

Web 管理页面使用方法,略...

GitHub 地址:https://github.com/pjialin/py12306

截图

Web 管理页面

下单成功

关于防封

目前查询和登录操作是分开的,查询是不依赖用户是否登录,放在 A 云 T 云容易被限制 ip,建议在其它网络环境下运行。

GitHub 地址:https://github.com/pjialin/py12306

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-10-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员的成长之路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 截图
  • Web 管理页面
相关产品与服务
访问管理
访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档