欢迎光临
我们一直在努力

Python网络爬虫框架scrapy的结构是什么

本篇内容介绍了“Python网络爬虫框架scrapy的结构是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

    scrapy爬虫框架介绍

    scrapy不是一个简单的函数功能库,而是一个爬虫框架

    爬虫框架:

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

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

    scrapy爬虫框架结构

    “5+2”结构:

    • ENGINE :已有的,核心,控制所有模块之间的数据流,根据条件触发事件

    • SCHEDULER:已有的,对所有的爬虫请求进行调度管理

    • ITEM PIPELINES :框架出口,用户编写,以流水线方式处理Spider产生的爬取项,由一组操作顺序组成,类似流水线,每个操作是一个item pipline类型,可能操作包括:清理,检验和查重爬取项中的HTML数据,将数据存储到数据库

    • SPIDERS :框架入口,用户编写,解析downloader返回的响应,产生爬取项,以及额外的爬取请求

    • DOWNLOADER :已有的,根据请求下载网页

    • 2个MIDDLEWARE:Download Middleware:实施Engine,Scheduler和Downloader之间用户可配置的控制,即用户可以修改、丢弃、新增请求或响应。Spider Middleware,对spider的请求和爬取项的再处理。修改、丢弃、新增请求或爬取项。

    requests库和scrapy库比较

    相同点:两者都可以进行页面请求和爬取,Python爬虫的两个重要技术路线。 两者可用性好,文档丰富,入门简单。 两者都没有处理js、提交表单、应对验证码等功能(可扩展)

    不同点:

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

    scrapy的常用命令

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

    “Python网络爬虫框架scrapy的结构是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注云搜网网站,小编将为大家输出更多高质量的实用文章!

    赞(0)
    【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。