zoukankan      html  css  js  c++  java
  • scrapy框架结构与工作原理

    组件:

    ENGINE:引擎,框架的核心,其他组件在其控制下协同工作。

    SCHEDULER:调度器,负责对SPIDER提交的下载请求进行调度

    DOWNLOADER:下载器,负责下载页面,发送HTTP请求/接收HTTP响应

    SPIDER:爬虫,负责提取页面数据,并产生对新的页面的下载请求

    MIDDLEWARE:中间件,负责对Request对象和Response对象进行处理

    ITEM PIPELINE:数据管道,负责对爬取到的数据进行处理

    数据流:

    REQUEST:Scrapy中HTTP请求对象

    RESPONSE:Scrapy中HTTP响应对象

    ITEM : 从页面中爬取的一项数据

    理解Scrapy爬虫工作原理,以对象在框架中流动的过程解释:

    *当SPIDER要爬取URL地址的页面时,需使用该URL构造一个Request对象,提交给ENGINE;

    *Request对象随后进入SCHEDULER按照某种算法进行排队,之后某个时间SCHEDULER将其出队,送往DOWNLOADER;

    *DOWNLOADER根据Request对象中的URL地址发送一次HTTP请求到网站服务器,之后用服务器返回的HTTP响应构造一个Response对象,其中包含HTML文本

    *Response对象最终会被传递到SPIDER的页面解析函数进行处理,从页面中提取的数据封装为ITEM提交给ENHINE,之后被送到ITEMPIPLINES进行处理,最终可能以某种形式存

    储,另一方面页面解析函数还会从页面中提取URL,构造新的Request对象;

  • 相关阅读:
    angular学习的一些小笔记(中)之双向数据绑定
    angular学习的一些小笔记(中)之ng-init
    angular学习的一些小笔记(中)之directive
    原型函数
    哇 真的是一个好插件!!!Sublime Text编辑文件后快速刷新浏览器
    angular学习的一些小笔记(中)之表单验证
    letter-spacing
    Emit学习(2)
    Emit学习(1)
    redis漏洞攻击
  • 原文地址:https://www.cnblogs.com/master-song/p/9035561.html
Copyright © 2011-2022 走看看