学习
实践
活动
专区
工具
TVP
写文章

Python Scrapy 爬虫(三):部署环境搭建

当我们的爬虫程序开发完成后,应该考虑的事情就是如何将我们的爬虫程序部署到我们的服务器上来运行了。

下面就以 CentOS 作为我们的爬虫程序的部署环境来介绍部署爬虫的第一步:部署环境搭建

一、CentOS 6.x 上安装 Python3

注:以下安装过程默认使用 root 用户安装,这样所有用户都能使用 python 3。但如果你刚好有特殊情况,比如:公司的服务器只给开发人员提供了普通账号,而没有 root 账号权限。那么也可以使用普通用户安装

1 环境介绍

由于 CentOS 6.x 中自带的是 python 2.6.6,并且有些系统级的服务使用了 python 功能,因此我们尽量不要去卸载系统中已经存在的 python2,以避免系统中其他需要 python2 执行的程序异常。

因此,我们的目标便是在已经存在 python2 的 CentOS 6.x 环境上安装 python3

2 系统环境

系统环境查看

可执行如下命令查看当前服务器系统的环境情况,由于不同的 Linux 系统发行版间的差异性。因此,以下的安装方法只适合同一发行版本或仅供参考用。

安装系统依赖

由于是编译安装,因此,需要依赖一些 gcc 相关的编译工具以及其他相关的依赖工具,可使用如下一条命令安装所有 python 3 所需要依赖。

注:

(1) 此步骤必须是在编译安装之前进行,即执行 ./configure 之前

(2) _sqlite3 该库是 scrapy 运行所需的系统第三方库。因此,如果该系统库没有安装,那么 scrapy 的运行将会报错。

3 python 3.6 的安装方法

下载程序包

解压程序包

编译安装

注:

(1) 如果 ./configure 没有带后面的参数 --prefix=$ ,那么 Python 默认安装在 /usr/local/bin/python3,建议指定目录安装。

(2) 如果你有特殊版本需要,如 3.5.1,那么你只需要将上述操作中的 3.6.4 换成 3.5.1 即可,其他部分的安装方法一致

4 测试安装

执行如下命令查看 python3 的版本信息以及 pip3 的 python 第三方库管理工具的版本信息

注:

(1) 如果编译安装完成后执行上面的命令提示找不到 python3 或者 pip3,那么请确保你指定的安装目录位于系统的环境变量 PATH 中。

可执行 echo $PATH 命令查看当前的 PATH 变量中有哪些目录,是否包含安装 python 时指定的安装目录(不指定安装目录时默认安装在 /usr/local/bin/python3,而 /usr/local/bin 默认是在 PATH 中的)

(2) 如果指定的安装目录不在 PATH 环境变量中,如安装目录在 /root/python 下。要想正常使用 python3,解决方法如下:

配置 PATH

编辑 /etc/profile 目录(vi /etc/profile),在文件末尾添加如下内容,其中 /root/python 表示指定的安装目录,bin 为必须添加,并保存退出

执行如下命令使环境变量生效

总结,到此为止,我们已经成功在 CentOS 6.x 上安装了 python3 的程序。以后执行 python3 开发的程序就可以使用 python3 程序名去执行了。

二、安装 python3 对应的虚拟环境

下面将记录在同时拥有 python2 与 python3 的 CentOS 6.x 中安装与使用 python3 对应的 virtualenvwrapper

1 相关环境

centos 6.8

python 2.6.6(系统自带)

python 3.6.4

pip 9.0.1

注:以下操作都是基于 root 用户的环境

2 virtualenv 安装

3 virtualenvwrapper 安装

4 配置 virtualenvwrapper

(1) 修改 /usr/local/bin/virtualenvwrapper.sh

执行如下命令:

改为:

(2) 配置环境变量

修改 /etc/profile (系统环境变量文件,需要 root 权限 ),或者其他用户的【~/.bash_profile、.bashrc 或者 ZSH 之后的 .zshrc】,在文件的末尾添加如下语句,并保存退出:

然后运行如下命令使环境变量生效,出现如下信息表示配置生效。

5 常用命令

总结,到此为止,我们完成了在 CentOS 服务器上的 python3 以及 python3 的虚拟环境管理工具的安装,接下来将继续分享如何在服务器上搭建项目运行所需的第三方库,如何使用脚本将开发好的程序通过代码托管仓库拉取到服务器上并直接运行。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180530G002B100?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

关注

腾讯云开发者公众号
10元无门槛代金券
洞察腾讯核心技术
剖析业界实践案例
腾讯云开发者公众号二维码

扫码关注腾讯云开发者

领取腾讯云代金券