scrapy框架

scrapy是用python实现的一个为了爬取网站数据,提取结构性数据而编写的应用框架.可以应用在包含数据挖掘, 信息处理或存储历史数据等一系列的程序中.

scrapy使用twisted基于事件的高效异步网络框架来处理网络通信, 可以加快下载速度, 不用自己去实现异步框架, 并且包含了各种中间件接口, 可以灵活的完成各种需求.

scrapy engine

引擎,负责控制数据流在系统中所有组件中流动, 并在相应动作发生时触发事件.次组件相当于爬虫的"大脑", 是整个爬虫的调度中心.

调度器

调度器接受从引擎发送来的request, 并将它们入队, 以便之后引擎请求它们时提供给引擎.

初始的爬取url和后续在页面中获取的待爬取的URl将放入调度器,等待爬取, 同时调度器会自动去除重复的URl(如果特定的URl不需要去重也可以通过设置实现, 如post请求的URl)

下载器(downloader)

下载器负责获取页面数据并提供给引擎, 而后提供给spider.

spider爬虫

spider是编写的类.

数据流

1.引擎打开一个网站,找到处理网站的spider并向该spider请求第一个要爬取的URl

  1. 引擎从spider中获取到第一个要爬取的URl并加入到调度器作为请求以备调度.
  2. 引擎向调度器请求下一个要爬取的URl
Copyright © hubhack 2019 all right reserved,powered by Gitbook该文件修订时间: 2019-08-18 20:36:54

results matching ""

    No results matching ""