GitHub上28k星12306购票项目部署

前言

首先咱们部署的是12306抢票软件, 项目地址:https://github.com/testerSunshine/12306, 该项目国人使用python语言编写的自动抢票软件, 在github上已飙到28k star, 证明该项目还是很受欢迎. 为了体现互联网共享思想, 将其搭建步骤共享, 文件内容较详细, 比较适合小白. 祝各位搭建顺利, 一次成功.

一. 安装Linux系统

在vmware中安装系统, 由于咱们的主要是部署12306项目 , 这里不多说, 尽快安装完成.
这里我们安装的Linux版本是CentOS-7-x86_64-Minimal-1810.iso, 后面由于是使用docker的方式部署, 建议使用CenOS-7以上的版本, 这里我采用minimal较小的版本, 下载地址: http://mirrors.usc.edu/pub/linux/distributions/centos/7.6.1810/isos/x86_64/CentOS-7-x86_64-Minimal-1810.iso
GitHub上28k星12306购票项目部署_第1张图片

GitHub上28k星12306购票项目部署_第2张图片
GitHub上28k星12306购票项目部署_第3张图片
GitHub上28k星12306购票项目部署_第4张图片
GitHub上28k星12306购票项目部署_第5张图片
GitHub上28k星12306购票项目部署_第6张图片
GitHub上28k星12306购票项目部署_第7张图片
GitHub上28k星12306购票项目部署_第8张图片
GitHub上28k星12306购票项目部署_第9张图片
GitHub上28k星12306购票项目部署_第10张图片
GitHub上28k星12306购票项目部署_第11张图片
GitHub上28k星12306购票项目部署_第12张图片

二. 配置虚拟机网卡

  1. 安装好Linux系统后, 重启系统, 使用root账户登录系统, 如下图所示:
    GitHub上28k星12306购票项目部署_第13张图片
  2. 编辑网卡文件ifcfg-ens33
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33

GitHub上28k星12306购票项目部署_第14张图片
GitHub上28k星12306购票项目部署_第15张图片
注意:
a. ip地址的前3位必须和网关一致, 最后一位在2–255之间都行
b. 子网掩码可以在vmware软件中编辑菜单中可以看到, 这是是使用NAT联网模式
c. 网关配置需和vmware软件中的一直

3.重启网卡

service network restart

在这里插入图片描述
4.测试网卡是否可用

ping www.jd.com

GitHub上28k星12306购票项目部署_第16张图片
如果如上图, 表示网卡配置完毕, 可以访问外网, 如果是没有这个, 说明网卡信息配置错误

三. 安装docker和docker-compose

访问项目的网址知道该地址就有这个说明, 要求docker的版本要是18.09以上, docker-compose在1.23.2以上, 下面开始安装docker
GitHub上28k星12306购票项目部署_第17张图片

  1. 安装依赖
    docker依赖于系统的一些必要的工具, 所以先安装。
[root@localhost ~]# yum install -y yum-utils device-mapper-persistent-data lvm2
  1. 添加阿里云的镜像源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

在这里插入图片描述
3. 清空yum源元数据

yum clean all

在这里插入图片描述
4.重新建立yum源元数据

yum makecache

GitHub上28k星12306购票项目部署_第18张图片

  1. 安装docker-ce社区版
yum -y install docker-ce

GitHub上28k星12306购票项目部署_第19张图片
6.启动服务, 通过systemctl启动服务

systemctl start docker
  1. 查看docker的版本
docker version

GitHub上28k星12306购票项目部署_第20张图片
可以看到当前的docker版本是19.03.5, 高于18.09, 该环境可用

  1. 安装docker-compose, 并赋予docker-compose文件权限
curl -L https://github.com/docker/compose/releases/download/1.25.4/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose

chmod +x /usr/local/bin/docker-compose

在这里插入图片描述

四. 项目的克隆和部署

  1. 安装git, 用于从github上克隆项目
yum install git

GitHub上28k星12306购票项目部署_第21张图片

  1. 克隆12306项目到本地
git clone https://github.com/testerSunshine/12306

在这里插入图片描述
完成后, 在本地~目录中会有一个12306文件夹, 这就是12306这个项目, 克隆的过程时间跟网络有关, 请耐心等候, 可使用ll命令查看
在这里插入图片描述

3.进入到12306文件夹中修改TickerConfig.py文件

vi TickerConfig.py

GitHub上28k星12306购票项目部署_第22张图片
GitHub上28k星12306购票项目部署_第23张图片
进入后就是这样了, 文件中大部分都有注释, 乘车信息可以从12306网站获取, 有几条信息下面有几点需要着重说明
a. 我这里是配置server酱微信通知, 当然也可以配置邮件提醒, 获取server酱的sckey编号:
在这里插入图片描述
访问网址 http://sc.ftqq.com/3.version 按照这上面的操作, 需要微信关注公众号
GitHub上28k星12306购票项目部署_第24张图片
找到如下的sckey编号, 填入到TickerConfig.py文件中

GitHub上28k星12306购票项目部署_第25张图片

b. 查找cookie, 证明你是本人登录的, 而不是机器登录的, 需要我们在浏览器中找两个参数,

GitHub上28k星12306购票项目部署_第26张图片
首先需要在浏览器中登录你的12306账号, 然后右键单击选中inspect/检查进入如下页面,
GitHub上28k星12306购票项目部署_第27张图片
在cookies找到RAIL_DEVICEID和RAIL_EXPIRATION这两个值将其复制到该位置
在这里插入图片描述
其他乘车信息无误后就可以保存退出, 先按esc键退出编辑模式, 再按shift+:, 输入wq再按enter保存退出
GitHub上28k星12306购票项目部署_第28张图片
至此我们的乘车信息就完毕

五. 运行程序, 执行抢票

首先确保当前是在12306目录下

docker-compose up --build -d        //开始抢票

docker-compose down        //停止抢票

docker logs --follow ticket            //查看抢票

执行开始抢票命令后会还会下载相关的文件, 如python3.7, 12306_code_server自动打码服务等等, 可能需要一些时间, 根据网络, 大概20分钟
GitHub上28k星12306购票项目部署_第29张图片
GitHub上28k星12306购票项目部署_第30张图片
当提示创建captcha, 和ticket时就表示创建成功, 后台就在执行抢票程序, 可以通过docker logs --follow ticket 查看
GitHub上28k星12306购票项目部署_第31张图片
在这里插入图片描述
GitHub上28k星12306购票项目部署_第32张图片
GitHub上28k星12306购票项目部署_第33张图片
当提示订成功的提示就可以去手机上查看支付

六. 总结

20年初的这些天过在家过的甚是清闲的, 闲来无事, 便搭建起来这个项目, 希望待疫情结束后, 各位能尽快买到车票, 投入到期待已久的工作中, 这段时间实在是逼坏了. 这个项目的搭建步骤写的相对详细, 大量的安装截图, 便是为了一些小白, 从0开始搭建, 你也可以.
大家能看到这里, 估计也是折腾了好久, 说明大家对这个项目还是比较有兴趣, 所有这里给大家共享搭已建好的系统环境, 可以运行的环境.
下载后只需使用vmware打开运行即可. 稍后给地址…文件有些大3G多, 我这里的Vmware是15.0.4的版本, 必须高于这个版本才可以打开, 打开后配置好网络, 最后运行项目就行
百度地址: 链接:https://pan.baidu.com/s/1-dnepbtOrg9on5cN1Etbwg 提取码:pmfq
最后大家如果在搭建过程中有任何问题, 都可以问.

你可能感兴趣的:(GitHub上28k星12306购票项目部署)