• 爬虫---快速认识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爬虫目录,如:创建文件,编写爬虫规则

  • 相关阅读:
    XML Serializable Generic Dictionary
    MSBuild Community Tasks Project
    Firebird 数据库资源
    Atlas Samples & Suse Linux 10.1
    IBATISNETNET 1.3 开发指南系列文章
    线程安全的Generic Dictionary
    商务智能:SQL2005给我们的机会
    准备写一个Ibatisnet开发指南
    取到当前正在执行的script元素
    IE10 CSS hack
  • 原文地址:https://www.cnblogs.com/zgl19991001/p/10724453.html
Copyright © 2020-2023  润新知