我的第一个云服务器CentOS 7.9部署及安装Python环境详细步骤 aliyun
- 一、购买、换系统、使用宝塔登录
-
- 1:购买阿里云服务器后更换系统,使用宝塔(我非开发人员所以觉得宝塔很好用)
- 2:登录宝塔操作远程服务器
- 二、配置Python指定版本环境
-
- 1:卸载底版本Python3
- 2:安装指定版本Python(3.8.2为例)
- 3:配置Python
- 4:测试环境
- 三、配置虚拟环境
-
- 1:安装virtualenv包
- 2:常用命令
- 四、程序运行后台挂起
-
- 1:安装nohup
- 2:程序后台运行、查看、杀死
- 五、windows安装Winscp链接服务器实现项目的上传和下载
- 六、安装Google Chrome + chromedriver + selenium 并进行简单测试
-
- 1:安装Chrome浏览器
- 2:安装Chromedriver及selenium
- 3:常用的几个命令及注意点
- 4:写一个简单demo进行测试
- 七、crontab设置定时任务管理
-
- 1:安装
- 2:添加命令和基本语法
- 3:查看定时任务
- 4:删除定时任务
- 5:备份定时任务及恢复
一、购买、换系统、使用宝塔登录
1:购买阿里云服务器后更换系统,使用宝塔(我非开发人员所以觉得宝塔很好用)
1-1:在实例位置如下操作(操作前先关闭服务器)
1-2:进入更换系统盘页面,在镜像类型中选择镜像市场,选择宝塔Linux面板(LAMP/LNMP/Tomcat/Node.js),安全设置中选择设置密码。设置好后点击“确定更换”。
1-3:在实例列表 选择远程链接,输入你刚才设置的账户密码 登录。
1-4:获取宝塔登录地址和初始账号密码(账号密码后续可以在宝塔自行更换),保留地址账号密码后进行安全组配置,放行8888端口。
放行端口操作如下图
2:登录宝塔操作远程服务器
2-1:访问1-4王获取的地址输入账号密码可看到如下界面,可以一键安装也可以直接叉掉后续根据需求安装(不过好像直接叉掉的话后续每次登陆都会跳出来,有点烦)。至此恭喜服务器配置完成,可进行操作了。
二、配置Python指定版本环境
第一步完成后其实Py2和py3环境已经安装好了,不过根据个人需求,看是否需要,我安装的版本是py3.6.2,我想卸载掉这个安装成 py3.8的,所以进行可以下操作。
1:卸载底版本Python3
1-1:在宝塔终端执行以下操作命令完成卸载低版本Python3操作
rpm -qa|grep python3|xargs rpm -ev --allmatches --nodeps # 卸载Python3
whereis python3 |xargs rm -frv # 删除所有残余文件
whereis python # 查看现有安装的python
- 1
- 2
- 3
2:安装指定版本Python(3.8.2为例)
2-1:安装开发工具包。
先安装 Development Tools:
yum groupinstall -y "Development tools"
- 1
然后安装其它的工具包:
yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel
- 1
2-2:安装 Python
下载Python安装包
wget https://www.python.org/ftp/python/3.8.2/Python-3.8.2.tgz
- 1
解压安装包
tar zxf Python-3.8.2.tgz -C /usr/src
- 1
进入解压后的目录
cd /usr/src/Python-3.8.2/
- 1
编译安装
./configure && make && make install
- 1
3:配置Python
3-1:更新系统默认 Python 版本
先把系统默认的旧版 Python 重命名
mv /usr/bin/python /usr/bin/python.old
- 1
再删除系统默认的 python-config 软链接
rm -f /usr/bin/python-config
- 1
最后创建新版本的 Python 软链接
ln -s /usr/local/bin/python3 /usr/bin/python
ln -s /usr/local/bin/python3-config /usr/bin/python-config
ln -s /usr/local/include/python3.8/ /usr/include/python3.8
- 1
- 2
- 3
3-2:编辑 /usr/bin/yum 文件,把代码第一行的 python 改为指向老的 python2.7 版本
方法一:使用宝塔打开直接修改第一行为如下保存退出
#!/usr/bin/python2.7
- 1
方法二:vim操作
执行如下命令
vi /usr/bin/yum
- 1
输入大写 i 进入编辑模式,光标定位到最后一行添加 2.7,按ESC退出编辑模式,然后再英文模式下输入 :wq 保存退出。
3-4:升级pip包
pip3 install --upgrade pip
- 1
4:测试环境
分别输入如下命令查看Py2、Py3能否正常使用,测试Python默认是否指向了python3,pip 能否正常使用。
python2 # 查看能否进入Python2
python3 # 查看Python3是否能正常使用
python # 查看是否进入python3,即python3软连接是否配置正常
pip list # 检查pip是否可用
- 1
- 2
- 3
- 4
三、配置虚拟环境
1:安装virtualenv包
1-1:安装包
pip3 install virtualenv -i htts://pypi.doubanio.com/simple
pip3 install virtualenvwrapper -i htts://pypi.doubanio.com/simple
- 1
- 2
1-2:修改 .bashrc文件
vim ~/.bashrc
- 1
修改.bashrc文件,在文件尾添加以下代码
# python虚拟环境
export WORKON_HOME=$HOME/.virtualenvs # 虚拟环境安装位置,可自行修改安装在指定文件夹下
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3 # python安装位置或者软连接位置 whereis 可查看各版本python安装位置 如下图实例
export VIRTUALENVWRAPPER_VIRTUALENV=/usr/local/bin/virtualenv
source /usr/local/bin/virtualenvwrapper.sh
- 1
- 2
- 3
- 4
- 5
1-3:使修改生效
source ~/.bashrc
- 1
2:常用命令
2-1:创建虚拟环境
mkvirtualenv -p python3 虚拟环境名
- 1
2-2:进入虚拟环境
workon 虚拟环境名 # 进入后命令行前边会出现 (虚拟环境明名),另外workon 空格两次tab可显示所有虚拟环境
- 1
2-3:退出虚拟环境
deactivate
- 1
2-4:删除虚拟环境
revirtualenv 虚拟环境名
- 1
四、程序运行后台挂起
1:安装nohup
如果未安装 使用以下命令安装
yum install coreutils
- 1
2:程序后台运行、查看、杀死
2-1:运行 以”python hello.py”举例
nohup python hello.py &
- 1
2-2:查看进程运行
ps -aux|grep main.py | grep -v grep
- 1
2-3:杀死进程
kill -9 进程号
- 1
五、windows安装Winscp链接服务器实现项目的上传和下载
安装自查,网上大把。过程超简单
六、安装Google Chrome + chromedriver + selenium 并进行简单测试
1:安装Chrome浏览器
1-1:创建yum源文件
cd /etc/yum.repos.d/
touch google-chrome.repo
- 1
- 2
1-2:输入yum源信息
[google-chrome]
name=google-chrome
baseurl=http://dl.google.com/linux/chrome/rpm/stable/$basearch
enabled=1
gpgcheck=1
gpgkey=https://dl-ssl.google.com/linux/linux_signing_key.pub
- 1
- 2
- 3
- 4
- 5
- 6
1-3:安装google chrome
yum -y install google-chrome-stable --nogpgcheck
- 1
默认安装目录 /opt/google/chrome
2:安装Chromedriver及selenium
yum install chromedriver
pip install selenium
- 1
- 2
3:常用的几个命令及注意点
1:常用命令
# 安装完成以上后需要保证Google Chrome和Chromedriver版本一致,查看版本命令
chromedriver --version
google-chrome --version
# 如果版本不一致 可手动下载进行替换,下载网址
http://npm.taobao.org/mirrors/chromedriver/
# 查看安装位置命令,查到的可能是软连接 可以cd到文件夹查看指向
whereis chromedriver
whereis google-chrome
# 建立软连接命令,这一步正常来说要放在浏览器安装完成后进行
ln -s /opt/google/chrome/google-chrome /usr/bin/chrome
# 如果出现更新Chromedriver版本后出现权限问题 报错或者直接切换到安装目录查看如下图,
# 可使用如下命令进行权限授予,执行前需先切换到安装目录
sudo chmod +x chromedriver
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
4:写一个简单demo进行测试
#!/usr/bin/env python
# -*- coding=UTF-8 -*-
#测试代码
import time
from selenium import webdriver
def test():
chromeOptions = webdriver.ChromeOptions()
chromeOptions.add_argument('--headless') #浏览器无窗口加载
chromeOptions.add_argument('--disable-gpu') #不开启GPU加速
"""
解决报错:
selenium.common.exceptions.WebDriverException: Message: unknown error: Chrome failed to start: exited abnormally
(unknown error: DevToolsActivePort file doesn't exist)
"""
chromeOptions.add_argument('--disable-dev-shm-usage') #禁止
chromeOptions.add_argument('--no-sandbox')#以根用户打身份运行Chrome,使用-no-sandbox标记重新运行Chrome
#其它设置(可选):
#chromeOptions.add_argument('--hide-scrollbars') #隐藏滚动条, 应对一些特殊页面
#chromeOptions.add_argument('blink-settings=imagesEnabled=false') #不加载图片, 提升速度
#chromeOptions.add_argument("user-agent=Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36") #伪装其它版本浏览器,有时可以解决代码在不同环境上的兼容问题,或者爬虫cookie有效性保持一致需要设置此参数
#创建driver对象
#chrome_options=chromeOptions加载设置
#executable_path="/usr/bin/chromedriver"指定webdriver路径(可选)
driver = webdriver.Chrome(chrome_options=chromeOptions,executable_path="/usr/bin/chromedriver")
try:
driver.get("http://httpbin.org/ip")
time.sleep(3)
print(driver.page_source)
except Exception as e:
print(e)
finally:
driver.quit()
if __name__ == '__main__':
test()
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
运行后可以如下图正常打印出本机ip ,至此Google Chrome + Chromedriver + selenium安装测试完成
七、crontab设置定时任务管理
1:安装
yum install crontabs
- 1
2:添加命令和基本语法
2-1:添加命令
crontab -e
# crontab -u username -e # 编辑其他用户命令
- 1
- 2
进入编辑页面后按 i 进入编辑模式,编辑完成后摁Esc退出编辑模式,输入 :wq 保存退出,shift + insert 粘贴粘贴板内容到
2-2:基本语法
# 语法
第几分钟 第几小时 第几日 第几月 星期几 需要执行的命令
# 取值范围
0-59 0-23 1-31 1-12 0-7 需要执行的命令
# 字符含义
*(星号) 任何时刻都接受。
,(逗号) 分隔时段的意思
-(减号) 一段时间范围内
/数字(斜杠加数字) 每隔 n 单位间隔
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
2-3:几个例子
# 每年的六月十日 10:5 执行一次
5 10 10 6 * python3 /project/test.py
# 每天的三点,六点各执行一次
0 3,6 * * * python3 /project/test.py
# 每天的8:20, 9:20,10:20,11:20各执行一次
20 8-11 * * * python3 /project/test.py
# 每分钟执行一次任务
* * * * * python3 /project/test.py
# 每五分钟执行一次
*/5 * * * * python3 /project/test.py
# 每四个小时执行一个任务
0 */4 * * * python3 /project/test.py
# 每周一十点执行一次
00 10 * * 1 python3 /project/test.py
# 多个任务在一条命令中配置
* * * * * python3 /project/test.py; python3 /project/test2.py
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
3:查看定时任务
crontab -l
# crontab -u username -l # 查看其他用户定时任务命令
- 1
- 2
4:删除定时任务
crontab -r
- 1
5:备份定时任务及恢复
# 备份所有命令道到txt中
crontab -l > /project/cron-backup.txt
# 从txt文件中恢复
crontab /project/cron-backup.txt
- 1
- 2
- 3
- 4