Scrapy框架的学习(1.scrapy的概念以及scrapy的工作流程)

 scrapy的概念

1.为什么要学习Scrapy?

     因为会让我们的爬虫更快、更强

2.什么是scrapy?

     (1) Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,我们只需要实现少量的代码,就能够快速的抓取

    *** 框架:特定需求下的所有功能***  ,  知道框架和模块的区别

    (2)Scrapy 使用了 Twisted['twɪstɪd]异步网络框架,可以加快我们的下载速度。

    (3)Scrapy的官方文档    http://scrapy-chs.readthedocs.io/zh_CN/1.0/intro/overview.html

3.  异步与非阻塞的区别    ( 补充)

     

   (1)   同步或异步指的是这样的一个过程  

          阻塞或非阻塞指的是拿到结果之前的状态

 (2)   异步调用发出之后,这个调用就直接返回,不管有无结果

  (3)非阻塞:关注的是程序在等待调用结果(消息,返回值)时的状态指在不能立刻得到结果之前,该调用不会阻塞当前线程

 scrapy的工作流程

1.  之前使用的爬虫流程,获取响应内容,提取数据、保存数据等

    如图:

2.scrapy的爬虫流程
  

  图的解释:

    

    (1)  中间  Scrapy Engline (scrapy 引擎)  : 这个四个大模块是独立的,彼此之间没有联系,之间的联系都是通过

         scrapy引擎来进行调度,scrapy引擎让谁执行谁就执行,类似于指挥交通的交警

   (2)Downloader Middlewares (下载中间键):引擎会先把Requets对象交给下载中间键再然后交给Downloader

   (3) Spider Middlewares (爬虫中间键) : 引擎会先把response交给爬虫中间键再交给Spiders

    (4)  因为有引擎的存在,所以可以在中间键进行一些处理 

猜你喜欢

转载自blog.csdn.net/wei18791957243/article/details/86154068
今日推荐