Scrapy框架
当爬虫逻辑变复杂后,只写 requests + 解析器 会越来越乱。
这时 Scrapy 的价值就体现出来了。
Scrapy 是什么
Scrapy 是一个爬虫框架。
它帮你把爬虫拆成更清晰的结构,例如:
- 请求调度
- 数据提取
- 数据存储
- 中间件处理
为什么要学 Scrapy
因为当项目稍微复杂一点时,你很快会碰到这些问题:
- 请求很多,代码越来越乱
- 多页面抓取不好组织
- 存储逻辑和请求逻辑混在一起
Scrapy 就是解决这些问题的。
安装 Scrapy
bash
pip install scrapy创建项目
bash
scrapy startproject myspider生成后的目录结构大致会包括:
- spiders
- items
- pipelines
- settings
Scrapy 的运行机制
你可以先粗略理解成这条链路:
- Spider 生成请求
- 调度器安排请求顺序
- 下载器去请求网页
- Spider 处理响应并提取数据
- Pipeline 处理和保存数据
Spider 是什么
Spider 就是你真正写抓取逻辑的地方。
一个最基础的 Spider 会包含:
- 起始 URL
- 解析函数
两种常见保存方式
抓到的数据可以:
- 保存到同一个文件
- 保存到数据库或不同存储目标
学这一页最重要的目标
- 知道 Scrapy 解决了什么问题
- 知道项目基本结构
- 能看懂 Spider、settings、pipelines 这些概念