• 欢迎访问db1024网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏db1024吧

py12306:一个带Web管理界面的12306购票助手,支持多账号/多线程/微信电话通知

网络资源 Liam 11个月前 (05-02) 443次浏览 0个评论 扫描二维码
文章目录[隐藏]

说明:前几天看到了个很强大的新项目,py12306购票助手,支持分布式,多账号,多任务购票,还带了很方便的Web管理界面,支持各种通知,比如微信,电话语音,邮件等。现在貌似到了抢票的季节了,所以博主就分享一下该工具的手动安装和Docker安装,有需求的可以用下。

截图

py12306:一个带Web管理界面的12306购票助手,支持多账号/多线程/微信电话通知
py12306:一个带Web管理界面的12306购票助手,支持多账号/多线程/微信电话通知

功能

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

手动安装

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

环境要求:Python 3.6以上的版本。

1、安装Python 3.6
这里博主还是和以前一样提供一个脚本安装,要是你会手动安装的话,还是建议手动下。

#CentOS系统 wget https://www.moerats.com/usr/shell/Python3/CentOS_Python3.6.sh && sh CentOS_Python3.6.sh  #Debian系统 wget https://www.moerats.com/usr/shell/Python3/Debian_Python3.6.sh && sh Debian_Python3.6.sh  #由于Ubuntu 16+自带Python3,所以只需要安装pip3就可以了 apt install python3-pip -y 

2、安装依赖

git clone https://github.com/pjialin/py12306 cd py12306 pip3 install -r requirements.txt 

3、配置程序

#复制配置文件 cp env.py.example env.py 

然后编辑该配置文件,填入你的账号等信息,建议使用FTP工具访问VPS后编辑该文件。

#部分配置说明,其它配置就参考配置文件里面的说明,挺详细了 1、自动打码 目前支持免费打码,和若快打码     注:免费打码无法保证持续可用,如失效请手动切换到若快平台,需要先到http://www.ruokuai.com注册一个账号后填写到配置中。  2、语音通知 语音验证码使用的是阿里云API市场上的一个服务商,需要到https://market.aliyun.com/products/57126001/cmapi019902.html 购买后将appcode填写到配置中。 

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

#开始测试 python3 main.py -t  #测试通知消息(语音, 邮件) python3 main.py -t -n 

5、启动程序
测试无误后,就可以开始启动了,使用命令:

#启动命令 python3 main.py  #可用参数列表,用法见4步骤 -t 测试配置信息 -t -n 测试配置信息以及通知消息 -c 指定自定义配置文件位置

然后Web管理界面自动开启,访问地址为ip:8008。如果打不开建议检查下防火墙端口,使用命令:

#CentOS 6 iptables -I INPUT -p tcp --dport 8008 -j ACCEPT service iptables save service iptables restart  #CentOS 7 firewall-cmd --zone=public --add-port=8008/tcp --permanent firewall-cmd --reload

像有些服务商可能还需要在后台开启下端口。

Docker安装

1、安装Docker

#CentOS 6 rpm -iUvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm yum update -y yum -y install docker-io service docker start chkconfig docker on  #CentOS 7、Debian、Ubuntu curl -sSL https://get.docker.com/ | sh systemctl start docker systemctl enable docker.service 

2、配置程序

#新建文件夹存放配置文件 mkdir py12306 && cd py12306 wget -O env.py https://raw.githubusercontent.com/pjialin/py12306/master/env.docker.py.example

然后编辑env.py配置文件,可以参考上面的手动安装步骤。

3、启动容器

#该命令记得在步骤2建立的py12306文件夹运行,data为存放数据的文件夹 docker run -d -p 8008:8008 -v $(pwd):/config -v data:/data pjialin/py12306

然后Web界面访问地址就是ip:8008,其它的问题参考上面的吧。

关于防封

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

关于分布式集群功能,个人使用的话就没必要用了,有兴趣的可以访问上方的Github地址查看,最后希望还没票的能早点抢到票回家过年。


db1024 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:py12306:一个带Web管理界面的12306购票助手,支持多账号/多线程/微信电话通知
喜欢 (0)
关于作者:
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址