失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > Python网络爬虫框架 Scrapy简介

Python网络爬虫框架 Scrapy简介

时间:2024-02-04 02:32:24

相关推荐

Python网络爬虫框架 Scrapy简介

Scrapy 网络爬虫框架

Scrapy的安装

cmd 执行:pip install scrapy测试安装:scrapy -h

Scrapy介绍

Scrapy不是一个函数功能库,而是一个爬虫框架。

​ 爬虫框架:

爬虫框架是实现爬虫功能的一个软件结构和功能组件集合;爬虫框架是一个半成品,能够帮助用户实现专业网络爬虫;

Scrapy爬虫框架结构

数据流的过程:

①:Engine从Spider处获取爬取请求(Request)

②:Engine将爬取请求转发给Scheduler,用于调度

③:Engine 从Scheduler处获取下一个要爬取的请求

④:Engine将爬取请求通过中间件发送给Downloader

⑤:爬虫网页后,Downloader形成相应(Response)通过中间件发给Engine

⑥:Engine将收到的响应通过中间件发送给Spider处理

⑦:Spider处理响应后产生爬取项(scraped Item)和新爬取请求(Requests)给Engine

⑧:Engine将爬取项发送给Item Pipeline(框架出口)

⑨:Engine将爬取请求发送给Scheduler

补充

Engine控制各模块数据流,不间断从Scheduler处爬取请求,直至请求为空;

框架入口:Spider的初始爬取请求

框架出口:Item Pipeline

爬虫结构介绍----->五个模块+二个中间件

#————————————————————————————————————————

Engine -----不需要用户修改

(1)控制所有模块之间的数据流

(2)根据条件触发事件

Downloader-----不需要用户修改

根据请求下载网页

Scheduler-----不需要用户修改

对所有爬取请求进行调度管理

Spider-----需要用户编写配置代码

(1)解析Dowloader返回的响应(Response)

(2)产生爬去项(scraped item)

(3)产生额外的爬取请求(Request)

Item Pipelines----需要用户编写配置代码

(1)以流水线方式处理Spider产生的爬取项

(2)由一组操作顺序组成,类似流水线,每个操作是一个Item Pipeline类型

(3)可能操作包括:清理、检验和查重爬取项中的HTML数据、将数据存储到数据库

#————————————————————————————————————————

Downloader Middleware-----用户可以编写配置代码

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

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

Spider Middleware -----用户可以编写配置代码

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

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

#————————————————————————————————————————

Scrapy 命令行

Scrapy常用命令
Scrapy 采用命令行创建和运行爬虫的原因:

命令行更容易自动化,适合脚本控制。本质上,Scrapy是给程序员用的,功能更重要,而不是界面。

Scrapy爬虫的数据类型

Request类

Request对象表示一个HTTP请求,由Spider生成,由Downloader执行。

Response类

Response对象表示一个HTTP响应,由Downloader生成,由Spider处理

Item类

Item对象表示一个从HTML页面中提取的信息内容,由Spider生成,由Item Pipeline处理;Item类似字典类型,可以按照字典类型操作。

如果觉得《Python网络爬虫框架 Scrapy简介》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。