收藏 400-998-9776 转2 服务时间 周一至周日 9:00-23:00 注意:本站不提供境外服务
您的位置:首页 >文章内容
公认好用的Scrapy爬虫框架
来源:互联网 作者:admin 时间:2019-02-22 16:57:16

    学习python爬虫,都会了解到Scrapy爬虫框架,比较单个爬虫是没有什么效果的,使用Scrapy爬虫框架可以大大的提高抓取效率。下面跟小编去认识下Scrapy爬虫框架,学会了Scrapy爬虫框架,可以爬取大量的数据,节省时间,能够更早的出效果。


    Scrapy是一个使用Python编程语言编写的爬虫框架,任何人都可以根据自己的需求进行修改,并且使用起来非常的方便。它可以应用在数据采集、数据挖掘、网络异常用户检测、存储数据等方面。


    Scrapy使用了Twisted异步网络库来处理网络通讯,整体架构大致如下图所示。


    由上图可知Scrapy爬虫框架主要由5个部分组成,分别是:Scrapy Engine(Scrapy引擎),Scheduler(调度器),Downloader(下载器),Spiders(蜘蛛),Item Pipeline(项目管道)。爬取过程是Scrapy引擎发送请求,之后调度器把初始URL交给下载器,然后下载器向服务器发送服务请求,得到响应后将下载的网页内容交与蜘蛛来处理,尔后蜘蛛会对网页进行详细的解析。


    蜘蛛分析的结果有两种:一种是得到新的URL,之后再次请求调度器,开始进行新一轮的爬取,不断的重复上述过程;另一种是得到所需的数据,之后会转交给项目管道继续处理。项目管道负责数据的清洗、验证、过滤、去重和存储等后期处理,最后由Pipeline输出到文件中,或者存入数据库等。


    建立爬虫项目文件:


    基于scrapy爬虫框架,只需在命令行中输入“scrapy startproject article”命令,之后一个名为article的爬虫项目将自动创建。首先进入到article文件夹下,输入命令“cd article”,之后通过“dir”查看目录,也可以通过“tree /f”生成文件目录的树形结构,如下图所示,可以很清晰的看到Scrapy创建命令生成的文件。


公认好用的Scrapy爬虫框架


    顶层的article文件夹是项目名,第二层中包含的是一个与项目名同名的文件夹article和一个文件scrapy.cfg,这个与项目同名的文件夹article是一个模块,所有的项目代码都在这个模块内添加,而scrapy.cfg文件是整个Scrapy项目的配置文件。第三层中有5个文件和一个文件夹,其中__init__.py是个空文件,作用是将其上级目录变成一个模块;items.py是定义储对象的文件,决定爬取哪些项目;middlewares.py文件是中间件,一般不用进行修改,主要负责相关组件之间的请求与响应;pipelines.py是管道文件,决定爬取后的数据如何进行处理和存储;settings.py是项目的设置文件,设置项目管道数据的处理方法、爬虫频率、表名等;spiders文件夹中放置的是爬虫主体文件(用于实现爬虫逻辑)和一个__init__.py空文件。


    之后开始进行网页结构与数据分析、修改Items.py文件、编写hangyunSpider.py文件、修改pipelines.py文件、修改settings.py文件,这些步骤的具体操作后期会文章专门展开,在此不再赘述。


公认好用的Scrapy爬虫框架


    执行爬虫程序:


    修改上述四个文件之后,在Windows命令符窗口中输入cmd 命令进入到爬虫所在的路径,并执行“scrapy crawl article”命令,这样就可以运行爬虫程序了,最后保存数据到本地磁盘上。


    自从我们互联网发展起来之后,数据越来越多,人工处理效率太慢了,因此爬虫采集非常之受欢迎,Scrapy爬虫框架的使用,大大提高了效率。当然在使用Scrapy爬虫框架过程中,也是需要使用代理IP的,比如代理精灵,否则加快采集容易导致IP被封,也是行不通的,但是配合代理IP使用,效果好,再合理控制下抓取时间,就能避免IP被封了,还不影响效率。


推荐阅读
  • 05 2019-08
    哪个隐藏IP工具能一键切换IP地址

    哪个隐藏IP工具能一键切换IP地址?众所周知,以目前的互联网大环境来看,在某种情况下其实我们并不是特别自由。

  • 30 2019-05
    代理IP可用于哪些项目防封

    如今网络无处不在,代理IP的使用也越来越广了,很多平台都有限制的,为了不被封,还需要代理IP出马,那么代理IP可用于哪些项目防封呢?

  • 11 2020-02
    如何使用好动态ip代理?

    我们在使用网络的时候,会遇到一些需要换ip的情况。虽然换ip并不是经常需要用到,但是当我们的ip被网站限制的时候,我们要懂得如何来切换ip,而且要知道怎么使用http代理ip。

  • 06 2020-01
    换ip软件的用途很广

    了解代理ip的分类与代理IP的原理,能够让用户更好的来选择换动态ip代理服务。大家不用怕知识太专业无法掌握,其实只要掌握基础,就足够了。

  • 16 2020-02
    初次选择代理ip要怎么选?

    现在很多人在工作和生活上都会用到不少工具来协助自己,如果大家没有听说过动态ip代理,那么就是时候好好补补课了,看看到底该怎么选择换ip软件来使用吧。

  • 15 2019-10
    ip代理软件的作用是什么?

    ip代理软件的作用是什么?ip代理软件​在许多人的工作中都曾经用过,对于许多网络营销工作有很多的帮助,其实ip代理软件还有着许多作用,这些作用为我们带来了方便,下面就来看看ip代理软