• Centos7搭建Scrapy爬虫环境


    写在前面

    因为之前的爬虫环境一直是部署在我自己本地的电脑上的,最近,写了一个监控别人空间的爬虫,需要一直线上24小时运行,所有就打算云服务器上部署环境,也捣鼓了好一会才弄好,还是有一些坑,这里先记录一下,方便以后复习…

    一.替换pyhton2版本为python3

    1.我这里的云服务器是Centos7系统,默认安装的是python2.7的版本,但是,我个人也是不喜欢老的东西,而且好像python2的版本到2020年就不再维护了,所以,我这里也推荐大家使用python3的版本
    这里写图片描述
    2.下载安装

    wget https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tgz

    我下载的是python3.5的

    这里写图片描述

    接下来,就是编译安装,在编译安装前需要构建编译环境,安装gcc

    yum -y install gcc

    gcc安装的东西有点多,稍微等一下
    然后,默认编译就好
    这里写图片描述

    接着,使用make & make install 安装,

    这里的话 ,会多等一会儿 ,去喝杯茶先把,,哈哈 开玩笑的啦
    这里写图片描述

    3.安装完成之后,我们输入python,这个时候任然是python2版本,需要重新定义软连接,重新建立指向

    mv /usr/bin/python /usr/bin/python27
    ln -s /usr/local/bin/python3 /usr/bin/python

    结果,发现python命令无效
    这里写图片描述
    如果还是不行的话,可以重新编译一下:
    这里写图片描述

    这个时候,我们的yum命令就是无法使用了,因为默认的yum是只支持python2版本,我们可以简单设置一下就可以啦,如下:

    修改yum配置文件(vi /usr/bin/yum)。
    把文件头部的#!/usr/bin/python改成#!/usr/bin/python27保存退出即可

    这里写图片描述
    这样就可以再次使用yum命令了

    二.安装python包管理工具pip

    在第一步,我们安装好了pyhton3的环境,接下来,我们就基于python3版本来安装相应的pip工具

    1.pip默认是依赖于setuptools的

    下载安装setuptools

    wget --no-check-certificate  https://pypi.python.org/packages/source/s/setuptools/setuptools-19.6.tar.gz#md5=c607dd118eae682c44ed146367a17e26

    解压,安装,

    python setup.py install

    发现缺少模块
    这里写图片描述

    1. 安装zlib模块
    yum install zlib-devel -y

    这里写图片描述

    打开报错文件,
    这里写图片描述
    再次运行yum install zlib-devel -y

    这里写图片描述

    继续安装setuptools,这个时候我们需要python3对zlib模块的支持,所以,需要重新编译安装

    1.    进入pyhton3文件目录  
    2.    make & make install  #编译安装

    这样,就可以回到setuptools目录,进行安装

    python setup.py install

    这里写图片描述
    安装成功

    终于可以安装pip了

    1.下载啊

    [root@liuge ~]# wget https://pypi.python.org/packages/11/b6/abcb525026a4be042b486df43905d6893fb04f05aac21c32c638e939e447/pip-9.0.1.tar.gz
    

    2、解压pip安装包

    tar -zxf pip-9.0.1.tar.gz

    3、安装pip

    cd pip-9.0.1
    python setup.py install

    这里写图片描述

    三.安装Scrapy爬虫环境

    这里我们就可以直接使用pip工具来进行包的安装了
    1.测试一:安装requests
    这里我使用豆瓣源

    [root@liuge ~]# pip install -i https://pypi.douban.com/simple/ requests
    

    这里写图片描述

    百度搜索了一下错误,说是openssl相关软件没有安装,

    openssl

    openssl-devel

    yum -y install openssl openssl-devel

    接着重新编译安装:

    [root@liuge python35]# make & make install

    这样,再次刷一遍安装命令:

    [root@liuge python35]# pip install -i https://pypi.douban.com/simple/ requests

    这里写图片描述

    2.测试二:安装scrapy环境

    先上命令:

    [root@liuge python35]# pip install -i https://pypi.douban.com/simple/ scrapy
    

    发现,找不到Twisted
    我们需要手动安装Twisted
    1.下载啊

    [root@liuge ~]# wget https://pypi.python.org/packages/source/T/Twisted/Twisted-15.2.1.tar.bz2
    

    2.解压,安装

    [root@liuge ~]# bzip2 -d Twisted-15.2.1.tar.bz2 
    [root@liuge ~]# tar xf Twisted-15.2.1.tar 
    [root@liuge ~]# cd Twisted-15.2.1/
    [root@liuge Twisted-15.2.1]# python setup.py install
    

    这里写图片描述

    继续安装scrapy

    pip install -i https://pypi.douban.com/simple/ scrapy

    这里写图片描述

    到这里,我们的环境就安装完成了,简单总结下:

    推荐python豆瓣镜像源:
    pip install -i https://pypi.douban.com/simple/

    找扩展依赖包地址:
    www.lfd.uci.edu/~gohlke/pythonlibs/

    有时候,需要这样替换
    pip install requests -i http://pypi.douban.com/simple/ –trusted-host pypi.douban.com

    ========谢谢==============

  • 相关阅读:
    Visual C++ 2012/2013的内存溢出检測工具
    MATLAB新手教程
    LCD开发之汉字显示
    支持向量机通俗导论(理解SVM的三层境地)
    类与类之间的简单传值
    hibernate官方新手教程 (转载)
    秒杀多线程第四篇 一个经典的多线程同步问题
    Java的位运算符具体解释实例——与(&)、非(~)、或(|)、异或(^)
    mysql基础:mysql与C结合实例
    php实现字符串的排列(交换)(递归考虑所有情况)
  • 原文地址:https://www.cnblogs.com/liuge36/p/12614817.html
Copyright © 2020-2023  润新知