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

功能模块分析
Engine

  • 整个框架的核心,控制所有模块之间的数据流
  • 根据条件触发事件

Downloader -> 根据请求下载网页

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

Downloader Middleware ->实施三者之间进行用户可配置的控制,修改,丢弃,新增请求或响应。

Spider

  • 解析Downloader返回的响应(Response)
  • 产生爬取项(scraped item)
  • 产生额外的爬去请求(Request)

Item Pipelines ->以流水线方式处理Spider产生的爬取项

Spider Middleware ->对请求和爬取项的再处理,修改,丢弃,新增请求或爬取项

requests vs Scrapy
相同点:
两者都可以进行页面请求和爬取,Python爬虫的两个重要技术路线。两者都没有处理js,提交表单,应对验证码等功能(可扩展)
不同点:
requests:网页级爬虫,功能库。
Scrapy:网站级爬虫,框架。

Scrapy是为持续运行设计的专业爬虫框架,提供操作的Scrapy命令行。
scrapy库学习

Scrapy爬虫的使用步骤:

  1. 创建一个工程和Spider模板
  2. 编写Spider
  3. 编写Item Pipeline
  4. 优化配置策略

Scrapy爬虫的数据类型:Request类,Response类,Item类
scrapy库学习
scrapy库学习

相关文章: