最近有一门实习课期末课程考核是爬取某电商网站的商品信息,因为本地电脑不可能长时间运行,遂考虑将 Python 脚本放到闲置的 ECS 上让他慢慢运行。在配置云服务器的 Python 环境的时候遇到一些问题,记之。
因为机子上的 CentOS 自带的是 Python2.7.5
,有点古老了,而且 re
库似乎不能支持 Python2.X
的版本,于是需要配置一个 Python3.7.3 的环境来适配我的爬虫程序。
前期准备
yum 更新
个人习惯,安装包之前会更新 yum 源。
1 | yum update |
安装依赖项
安装 Python 3.7 所需的依赖:
1 | yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel libffi-devel gcc make |
1 | yum -y install libffi-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel kernel-headers tk-devel gdbm-devel db4-devel libpcap-devel xz-devel zlib* |
安装 Python3.7.3
下载 Python
在官网下载所需版本,这里用的是 3.7.3 版本
wget https://www.python.org/ftp/3.7.3/Python-3.7.3.tgz
下载地址似乎发生了变化(20200804 修正)
1 | wget https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tar.xz |
淘宝源
1 | http://cdn.npm.taobao.org/dist/python/3.7.3/Python-3.7.3.tgz |
但是在运行的时候通常会报 wget: unable to resolve host address 的错,解决办法如下:
root 身份下使用 vim 编辑 /etc/resolv.conf
,修改内容如下:
1 | nameserver 8.8.8.8 |
修改完并保存后就可以正常下载 Python 的压缩包了。

解压
下载好了之后在文件所在目录解压
1 | tar -xvf Python-3.7.3.tar.xz |
编译和安装
切换至 Python 源代码目录并执行下面的命令进行配置和安装。
1 | cd Python-3.7.3 |
注: 这里 --prefix
用于指定编译安装的文件夹

添加软连接或者配置环境变量
添加软链或者添加到环境变量,使直接输入 python3 就可以使用
添加软连接:
1 | ln -s /usr/local/python37 /usr/bin/python3 |
然后安装 Python 程序需要的库,就可以愉快地运行 Python 程序啦~
添加环境变量
修改用户主目录下名为.bash_profile
的文件,配置 PATH 环境变量并使其生效。
1 | cd ~ |
1 | ... 此处省略上面的代码 ... |
激活环境变量。
1 | source .bash_profile |
安装 pip
一般 Python3
以后完整的安装包都内置了包管理工具 pip
,如果某些环境下没有 pip
,手动安装即可。
脚本安装
安装简单,默认安装最新版的 pip
1 | curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py #获取安装脚本 |
源码包安装
这种方法默认是安装到 python 所链接的具体版本中。
1 | wget --no-check-certific ate https://pypi.python.org/packages/source/p/pip/pip-10.0.1.tar.gz >>/dev/null |