正文
项目地址
安装环境
我这里演示用的是Centos7
截图
安装环境
#安装编译相关工具
su root
#然后输入密码
yum -y groupinstall "Development tools"
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
yum install libffi-devel -y
#安装环境,下载安装包解压
cd ~
#回到用户目录
wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz
tar -xvJf Python-3.7.0.tar.xz
mkdir /usr/local/python3
#创建编译安装目录,编译安装
cd Python-3.7.0
./configure --prefix=/usr/local/python3
make && make install
#创建软连接
ln -s /usr/local/python3/bin/python3 /usr/local/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/local/bin/pip3
#验证是否成功
python3 -V
pip3 -V
克隆源码
git clone https://github.com/pjialin/py12306
安装依赖
cd py12306
pip3 install -r requirements.txt
配置程序
cp env.py.example env.py
vim env.py
自动打码
(若快已停止服务,目前只能设置free打码模式) free 已对接到打码共享平台,https://py12306-helper.pjialin.com,欢迎参与分享
语音通知
语音验证码使用的是阿里云 API 市场上的一个服务商,需要到 https://market.aliyun.com/products/56928004/cmapi026600.html 购买后将 appcode 填写到配置中
启动前测试
目前提供了一些简单的测试,包括用户账号检测,乘客信息检测,车站检测等
开始测试 -t
python main.py -t
测试通知消息 (语音, 邮件) -t -n
#默认不会进行通知测试,要对通知进行测试需要加上 -n 参数
python main.py -t -n
运行程序
python main.py
参数列表
-t 测试配置信息
-t -n 测试配置信息以及通知消息
-c 指定自定义配置文件位置
分布式集群
集群依赖于 redis,目前支持情况
单台主节点多个子节点同时运行
主节点宕机后自动切换提升子节点为主节点
主节点恢复后自动恢复为真实主节点
配置通过主节点同步到所有子节点
主节点配置修改后无需重启子节点,支持自动更新
子节点消息实时同步到主节点
使用
将配置文件的中 CLUSTER_ENABLED 打开即开启分布式
目前提供了一个单独的子节点配置文件 env.slave.py.example 将文件修改为 env.slave.py, 通过 python main.py -c env.slave.py 即可快速启动
up你好,请问有没有抢茅台的开源软件|´・ω・)ノ
@xx : 无