美文网首页
爬虫框架Scrapy

爬虫框架Scrapy

作者: 可望不可j | 来源:发表于2019-06-10 22:37 被阅读0次

    (用于个人学习,不喜勿喷)

    安装

    scrapy可以运行在python2.7、python3.3或者是更高的版本上;如果你用的是Anaconda(Anaconda下载)或者Minconda,你可以从conda-forge进行安装,可以使用下面的命令:

    conda install -c conda-forge scrapy

    如果你已经安装了python包管理工具PyPI,你也可以使用下面命令进行安装:

    pip install Scrapy

    值得注意的是,如果你使用的是pip安装,你需要解决相应的包依赖(解决依赖一般会让你怀疑人生、怀疑scrapy,建议还是用Anaconda安装,少年!)

    这里的话,为了避免你安装的scrapy依赖包和原先你安装的其他python包有冲突,官方强烈建议你使用Virtualenv进行scrapy安装

    scrapy依赖的一些包:

    lxml:一种高效的XML和HTML解析器,

    PARSEL:一个HTML / XML数据提取库,基于上面的lxml,

    w3lib:一种处理URL和网页编码多功能辅助

    twisted,:一个异步网络框架

    cryptography and pyOpenSSL,处理各种网络级安全需求

    以上包需要的最低版本:

    Twisted 14.0

    lxml 3.4

    pyOpenSSL 0.14

    win7安装scrapy

    在win7下的安装,这里的话并不推荐大家用python+pip安装,推荐使用Anaconda进行安装,为什么呢?因为如果你选择前者,填坑的过程可能会让你绝望,说不定会让你砸键盘、内分泌失调,所以强烈建议用Anaconda!不信的话大家可以试试!

    软件环境:

    win7(64位)

    Anaconda3-5.0.1-Windows-x86_64(点击下载

    一、安装Anaconda

    这里的话简单介绍一下anaconda的下载,下载地址为:https://www.anaconda.com/download/

    如果官网无法打开,请移步这里:下载Anaconda

    里面有不同的平台,不同的版本,根据您的平台进行下载即可!这里的话建议大家下载Anaconda全包,而不是Miniconda,因为后者虽然小巧,但会出现一些问题,如果你怕填坑就请下载Anaconda,500M左右,这里再说一点,python是不用安装的,当然装了也没关系!下载完成之后开始安装:

    点击下一步

    点击:I Agree(同意)

    选择安装目录,然后Next,这里尽量不要选择带空格的目录

    这一步一定两个都勾起了,上面是表示加入环境变量,勾了后期就不用设了,省得麻烦,下面是默认安装python3.6为默认的python解释器,勾选之后点击:Install,进行安装!安装过程有点缓慢,请大家耐心等待哈!

    ok,大功告成,点击下一步

    点击完成(Finish),那就安装完成了,接下来我们通过Anaconda安装scrapy

    二、安装scrapy

    点击开始菜单中的 Anaconda Navigator,启动Anaconda,稍等片刻,正在启动

    启动后点击左侧:Environments

    然后选择not install 然后在输入框中输入scrapy

    下面就出现了scrapy包,点击选中scrapy,然后点击下面Apply,进行相应安装

    接下来会跳出scrapy的包依赖,选择Apply,即可

    稍等片刻,即可安装完成,基本整个过程是0出错,非常顺畅,安装完成后在命令行输入:scrapy,进行测试,如果出现以下显示,恭喜你,scrapy已经成功安装!

    看视频教程:《【视频】scrapy安装视频:win7+Anaconda安装scrapy1.4》

    linux centos7安装scrapy

    scrapy中文教程主要介绍,centos7 linux下scrapy的安装,python版本是2.7!上面我们已经介绍了如何安装centos linux,如果还木有安装好centos,请移步:《scrapy centos7 linux安装(一):centos安装》 安装好之后,我们来看如何在centos7下面安装scrapy。这里有一点特殊的地方要说下,相对于Windows,centos7自带python2.7,也就是说我们并不需要再安装python了,当然如果你想使用python3.6,请看另一篇文章:《centos7 linux安装scrapy(三):python3.6安装scrapy1.4》!接下来我们看如何在centos7 下python2.7安装scrapy!

    先提一下,linux的一些命令,比如登录、cd、yum……这些前戏就不多说了,不清楚的大家不清楚的去百度一下,这里我直接进入正题了!在linux下面我们就用pip安装,我们先在linux命令行输入:

    pip install scrapy

    试一下,看能不能安装!结果:

    [root@localhost ~]# pip install scrapy

    -bash: pip: 未找到命令

    可以看到,没有pip命令,那我们需要先安装pip:

    yum -y install epel-release

    输入以上命令,然后当出现下图时,说明安装完成(一半):

    接着再输入一下命令:

    yum install python-pip

    里面我们需要输入[y/d/n],我们一路输入:y

    当出现:完毕!字样,说明pip安装完成!接下来我们安装scrapy,用的命令就是我们狠熟悉的pip命令了,如下:

    pip install scrapy

    当我们满怀欢喜安装的时候,发现:

    Command "/usr/bin/python2 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-L1Q1wb/Twisted/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-QWsI2y-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-L1Q1wb/Twisted/

    You are using pip version 8.1.2, however version 9.0.1 is available.

    You should consider upgrading via the 'pip install --upgrade pip' command.

    神马情况,好像是告诉我们需要使用:

    pip install --upgrade pip

    更新pip版本,那我们就试试!

    好了,更新完成了,再试试pip install scrapy看还会不会出错!果然,哈哈,又出错:

    error: command 'gcc' failed with exit status 1

    Command "/usr/bin/python2 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-S4duRv/Twisted/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-tAiOQb-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-S4duRv/Twisted/

    红色、错误、error一点都不可怕,可怕的是不敢把错误踩在脚下,我们继续解决错误,大家要学会看提示,也就是上面error后面的或是红色的提示,虽然是英文,但是都是一些常见的,慢慢多看就熟悉了,以后出现这样的错误还多,何不早早的试试?好,我们来看上面提示大致意思是:没有‘gcc’,那我们先来装gcc吧,centos安装gcc灰常简单,命令如下:

    yum install gcc

    如果出现让你选择:[y/d/n] 不要犹豫,一路的:y ,然后就是等待,直到出现:完毕!字样说明gcc安装完成,如图:

    安装完gcc后,我们再次输入:pip install scrapy试试,看能不能愉快的安装,呵呵,又有坑:

    编译中断。

        error: command 'gcc' failed with exit status 1

        ----------------------------------------

    Command "/usr/bin/python2 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-CRTnLK/Twisted/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-geKgvU-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-CRTnLK/Twisted/

    网上查了一下,原来是差这么几个模块:libffi-devel 、 python-devel 、openssl-devel,一起安装一下,命令行输入:

    yum install gcc libffi-devel python-devel openssl-devel -y

    安装完成之后,再次输入:pip install scrapy,你会发现奇迹就在眼前,scrapy成功安装,输入:scrapy,当出现如下输出,说明安装完成

    其实这就是一个填坑的过程,之所以出现这些问题,是我们使用centos mini(最小安装),导致许多包没有,所以需要我们手动安装一下这些包,其实用到的命令就这么几个:

    yum -y install epel-release

    yum install python-pip -y

    pip install --upgrade pip

    yum install gcc -y

    yum install gcc libffi-devel python-devel openssl-devel -y

    pip install scrapy

    用: import scrapy  查看是否安装成功

    注意:其实python2 与 python3 都可以 直接:pip install scrapy安装的

    Scrapy创建项目之前

    (1)进入 Python 的主目录,如cd /usr/local/python3.6/bin,查找 scrapy 项 

    (2)检查 cd /usr/bin/ | ll | grep scrapy,查看是否存在 

    (3)不存在则执行 ln -s /usr/local/bin/scrapy /usr/bin/scrapy 

    (4)回到shell,执行 scrapy version,成功

    相关文章

      网友评论

          本文标题:爬虫框架Scrapy

          本文链接:https://www.haomeiwen.com/subject/zrkxfctx.html