眨眼间,又快过年了,回家的火车票吗,一如既往的难抢,各类抢票app, 买了加速包,好久也没动静, 不如让我们动手使用py12306这个开源程序吧~
? 12306 购票助手,支持集群,多账号,多任务购票以及 Web 页面管理
Github地址:https://github.com/pjialin/py12306
1.py12306基于python3运行的程序,所以先给服务器安装python语言
wget https://www.moerats.com/usr/shell/Python3/CentOS_Python3.6.sh && sh CentOS_Python3.6.sh
#由于Ubuntu 16+自带Python3,所以只需要安装pip3就可以了
apt install python3-pip -y
2.安装py12306依赖
git clone https://github.com/pjialin/py12306 #git py12306包
cd py12306 #打开py12306所在的文件夹
pip3 install -r requirements.txt #安装依赖
git clone https://github.com/pjialin/py12306 #git py12306包
cd py12306 #打开py12306所在的文件夹
pip3 install -r requirements.txt #安装依赖
3.配置文件
cp env.py.example env.py
#复制配置文件,将env.py.example复制为env.py
cp env.py.example env.py
#复制配置文件,将env.py.example复制为env.py
利用FTP进行修改env.py文件,配置里面说的很明白了,语音验证码,需要到阿里云API市场购买,建议购买鼎信的
4.测试运行
配置好env.py后, 进行一些简单的测试,包括用户账号检测,乘客信息检测,车站检测等,测试是否正常
#开始测试
python3 main.py -t
#测试通知消息(语音, 邮件)
python3 main.py -t -n
#开始测试
python3 main.py -t
#测试通知消息(语音, 邮件)
python3 main.py -t -n
5.运行
测试无误后,就可以开始运行程序了
#运行命令
python3 main.py
#如果重新打开ssh的话,先cd py12306进入文件夹后再运行
#结束的话用ctrl+c大法,强行关闭
#运行命令
python3 main.py
#如果重新打开ssh的话,先cd py12306进入文件夹后再运行
#结束的话用ctrl+c大法,强行关闭
6.Web页面
Web页面默认为8008端口,如果打不开请检查下防火墙是否开启
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、Ubuntu
curl -sSL https://get.docker.com/ | sh
systemctl start docker
systemctl enable docker
2.将配置文件下载到服务器
docker run --rm pjialin/py12306 cat /config/env.py > env.py
3.配置好env.py后运行
mkdir py12306 && cd py12306
wget -O env.py https://raw.githubusercontent.com/pjialin/py12306/master/env.docker.py.example
4.启动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、Ubuntu
curl -sSL https://get.docker.com/ | sh
systemctl start docker
systemctl enable docker
docker run --rm pjialin/py12306 cat /config/env.py > env.py
mkdir py12306 && cd py12306
wget -O env.py https://raw.githubusercontent.com/pjialin/py12306/master/env.docker.py.example
docker run --rm --name py12306 -p 8008:8008 -d -v $(pwd):/config -v py12306:/data pjialin/py12306
docker run --rm --name py12306 -p 8008:8008 -d -v $(pwd):/config -v py12306:/data pjialin/py12306
预祝你们能抢到自己心水的票owo/