爬虫---快速认识scrapy

1.写一个爬虫,需要做很多事情。比如:发送网络请求,数据解析,数据存储,反扒虫虫机制(更换IP代理,设置请求头等),异步请求等。这些工作如果每次都要从零开始写的话,比较浪费时间。因此scrapy吧一些基础的东西封装好了,在他上面写爬虫可以变的更加高效(爬去效率和开发效率)。因此真正在公司里,一些上了量的爬虫,都是使用scrapy框架来解决。

2.scrapy框架模块功能:Scrapy Engine(引擎):Scrapy框架的核心部分。负责在Spider和ItemPipeline,Downloader,Scheduer中间通信,传递数据。

3.Spider(爬虫):发送需要爬取的链接给引擎,最后引擎吧其他模块请求回来的数据在发送给爬虫,爬虫就去解析想要的数据。这个部分是我们开发者自己写的,因为要爬取哪些链接,页面中的哪些数据是我们需要的,都是由程序员自己决定。

4.Scheduler(调度器):负责接收引擎发送过来的请求,并按照移动的方式进行排列和整理,负责调度请求的 顺序等。

5。Downloader(下载器):负责接收引擎传过来的下载请求,然后去网络上下载对应的数据在交还给引擎。

6.Item Pipeline(管道):负责将Spider(爬虫)传递过来的数据进行保存。具体保存在哪里,应该看开发者自己的需求

7.Downloader Middlewares(下载中间件):可以扩展下载器和引擎之间通信功能的中间件

8.Spider Middlewares(Spider中间件):可以扩展引擎和爬虫之间通信功能的中间件

9.创建项目:  scrapy startproject项目名

  文件认识:

    scrapy.cfg项目的配置信息,主要为scrapy命令行工具提供一个基础的配置信息。(真正爬虫相关的配置信息在setting.py文件中)

    item.py设置数据存储模板,用于结构化数据如:Django的Model

    pipelines:数据处理行为,如:一八百年结构化的数据持久化

    setting.py配置文件,如:递归的层数,并发数,延迟下载等

    spiders爬虫目录,如:创建文件,编写爬虫规则

posted @ 2019-04-17 16:35  魔仙小丽丽  阅读(220)  评论(0编辑  收藏  举报