python爬虫Scrapy

  Scrapy

1、python爬虫框架Scrapy

  爬虫框架是实现爬虫功能的一个软件结构和功能组建集合

  爬虫框架是一个半成品,能够帮助用户实现专业网络爬虫

2、scrapy爬虫框架“5+2”结构解析

  2.1、Engine:框架核心,不需用户编写

  2.2、Downloader:下载网页,不需用户修改

  2.3、Scheduler:对爬虫请求进行调度管理,不需用户修改

  2.4、Downloader Middleware:

    目的:实施Engine、Scheduler和Downloader之间进行用户可配置的控制;

    功能:修改、丢弃、新增请求或响应;

    用户可以编写配置代码

  2.5、Spider:解析Downloader返回的响应(Response);产生爬取项(scraped item);产生额外爬取请求(Request),

  2.6、Item Pipelines:以流水线的形式处理Spider产生的爬取项;由一组操作顺序组成,类似流水线,每个操作是一个Item Pipeline类型;可能操作包括:清理、检查和查重爬取项中的HTML数据、将数据存储到数据库。

    需要用户编写配置代码

  2.7、Spider Middleware:

    目的:对请求和爬取项再处理

    功能:修改、丢弃、新增请求或爬取项

    用户可以编写配置代码

3、requests库与Scrapy比较

requests库 scrapy框架
页面级爬虫 网站级爬虫
功能库 框架
并发性不足,性能差 并发行好,性能较高
重点在于页面下载 重点在于爬虫结构
定制灵活 一般定制灵活,深入定制困难
上手简单 入门稍难

 

 

 

 

 

 

 

 

 

4、Scrapy爬虫的常用命令

  4.1、startproject:创建一个新工程  scrapy startproject <name> [dir]

  4.2、genspider:创建一个爬虫  scrapy genspider [options] <name> <domain>

  4.3、settings:获得爬虫配置信息  scrapy settings [options]

  4.4、crawl:运行一个爬虫  scrapy crawl <spider>

  4.5、list:列出工程中所有爬虫  scrapy list

  4.7、shell:启动URL调试命令行  scrapy shell [url]

原文地址:https://www.cnblogs.com/oldhuang/p/10357747.html