欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

VirtualBox CentOS7.7.1908 Python3.8 搭建Scrapy开发环境【图文教程】

程序员文章站 2022-03-18 13:38:31
环境 virtualbox_v6.0.14 centos_v7.1908 python_v3.8.0 mongodb_v3.2.22 pip_v19.3.1 windows py...

环境

virtualbox_v6.0.14 centos_v7.1908 python_v3.8.0 mongodb_v3.2.22 pip_v19.3.1 windows pycharm-2019.2.3企业版(社区版不支持远程连接linux开发),需激活使用系统自带python2.7.5不做处理,尝试过pyenv安装3.8,但是到安装scrapy的时候报错不断,最终又卸载了pyenv重新手动编译安装。

安装centos

为了保证虚拟机和宿主机能互相访问和正常通信,采用2虚拟网卡的配置方式。

在virtualbox菜单中设置–>网络,启用2个虚拟网卡(虚拟机启用,如下2图),网卡1连接方式设置为”网络地址转换nat“,可保证虚拟机访问外部网络和宿主机,网卡2连接方式设置为”桥接网卡“,可保证宿主机能访问到虚拟机。

在virtualbox虚拟机上安装centos7,系统在安装过程中最好能配置启用2网卡(centos系统启用)。

安装过程略。

VirtualBox CentOS7.7.1908 Python3.8 搭建Scrapy开发环境【图文教程】VirtualBox CentOS7.7.1908 Python3.8 搭建Scrapy开发环境【图文教程】

启动虚拟机后使用# ip addr 可查看centos系统网卡使用及ip分配情况。enp0s3是nat网卡信息,ip默认是10.0.2.15;enp0s8是桥接模式下网卡信息,默认分配的ip和宿主机会在同一个网段下。

VirtualBox CentOS7.7.1908 Python3.8 搭建Scrapy开发环境【图文教程】

如果看不到某网卡的ip信息,可能是系统在安装的时候没有启用网卡,可在/etc/sysconfig/network-scripts/ifcfg-enp0s3/etc/sysconfig/network-scripts/ifcfg-enp0s8中修改onboot参数为yes,然后重新启动网络服务# systemctl start network.service或者# service network restart即可。

VirtualBox CentOS7.7.1908 Python3.8 搭建Scrapy开发环境【图文教程】

系统使用dvd镜像安装完成后默认有ssh服务。宿主机如果使用ssh连接虚拟机需要设置防火墙开放22端口。

# firewall-cmd --zone=public --add-port=22/tcp --permanent # 防火墙开放22端口 # firewall-cmd --reload #重新加载防火墙配置 # firewall-cmd --zone=public --list-port #查看已开放端口

至此可以使用windows客户端工具ssh远程连接虚拟机访问操作,主要是方便和宿主机共享剪贴板。

配置yum国内镜像源

使用阿里yum源可参考下面这一段

下载wget工具
# yum install -y wget
进入yum源配置文件所在文件夹
# cd /etc/yum.repos.d/
备份本地yum源
# mv centos-base.repo centos-base.repo_bak
获取阿里yum源
# wget -o centos-base.repo http://mirrors.aliyun.com/repo/centos-7.repo
清理yum缓存 
# yum clean all
重建缓存 
# yum makecache 
升级linux系统
# yum -y update 
# netstat -nltp # 查端口是否占用
# ifconfig # 查看ip的常用命令
这些命令默认系统没有安装,可执行以下命令行安装
# yum install net-tools

安装第三方依赖

这里需要安装一大坨,是网上搜集+自己实践加上去的,不想折腾就都从了吧

# yum -y groupinstall "development tools"
# yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libxml2-devel libxslt-devel libffi-devel

安装mongodb

添加mongodb国内镜像源 # vim /etc/yum.repos.d/mongodb.repo 粘贴以下内容

[mongodb-org]
name=mongodb repository
baseurl=https://mirrors.tuna.tsinghua.edu.cn/mongodb/yum/el$releasever/
gpgcheck=0
enabled=1

刷新yum缓存

# yum makecache

安装mongodb

# yum -y install mongodb-org
修改mongod.conf bindip参数
# vim /etc/mongod.conf

重启mongod服务

# /etc/init.d/mongod restart 或 # systemctl restart mongod.service

查看mongod版本

# mongod --version

防火墙开放27017端口

# firewall-cmd --zone=public --add-port=27017/tcp --permanent
# firewall-cmd --reload
# firewall-cmd --zone=public --list-port

安装python3.8

下载python3.8源码编译安装

# wget https://www.python.org/ftp/python/3.8.0/python-3.8.0.tgz
# tar -zxvf python-3.8.0.tgz
#cd python-3.8.0.tgz

check依赖,生成makefile,

# ./configure --prefix='/usr/local/python3'

编译

# make

安装

# make install

做软链

# ln -s /usr/local/python3/bin/python3 /usr/bin/python3
# ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3

python3.7后–with-ssl不可用,执行configure的时候 不加–with-ssl也可以安装成功,如果不成功,可以在python-3.8.0/modules/setup文件中去掉以下3行的注释符

# _ssl _ssl.c \# -duse_ssl -i$(ssl)/include -i$(ssl)/include/openssl \# -l$(ssl)/lib -lssl -lcrypto

安装scrapy

可以先修改pip源路径,pipfile文件中[source]下面url属性,比如修改成:url = "https://pypi.tuna.tsinghua.edu.cn/simple"也可以直接用以下命令执行安装

# pip3 install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple # 指定清华大学的pip源更新pip
# pip3 install scrapy -i https://pypi.tuna.tsinghua.edu.cn/simple # 安装scrapy

接下来会安装很多scrapy的依赖包,到安装twisted的时候会很慢,要耐心等待。看到如下图即安装成功!

VirtualBox CentOS7.7.1908 Python3.8 搭建Scrapy开发环境【图文教程】

安装完成后接下来配置远程开发环境请参考

听说 pipenv 吊炸天,可以一步到位安装scrapy。

另外推荐使用anaconda,可省去一堆依赖包的跨境下载,python多版本管理,scrapy安装可一键搞定。特别是windows环境,强烈建议。 欢迎交流尝试

centos7.7.1908清华大学的镜像路径

https://mirrors.tuna.tsinghua.edu.cn/centos/7.7.1908/isos/x86_64/centos-7-x86_64-dvd-1908.iso oracle virtualbox

https://download.virtualbox.org/virtualbox/6.0.14/virtualbox-6.0.14-133895-win.exe

windows企业版pycharm-2019.2.3

总结

以上所述是小编给大家介绍的virtualbox centos7.7.1908 python3.8 搭建scrapy开发环境【图文教程】,希望对大家有所帮助