想系统学网页采集,Scrapy 官方教程是最省事的第一课:教程用的是一个专门给爬虫练习用的公开教学站 quotes.toscrape.com(名言警句列表站),从建项目到导出文件一条龙走完,全程不碰任何需要绕权限的站点。当前文档版本为 Scrapy 2.19.0,教程页最后更新于 2026 年 9 月 10 日。
建项目与第一只 Spider
教程从 scrapy startproject tutorial 开始,生成的项目目录有固定结构:scrapy.cfg 是部署配置,items.py、middlewares.py、pipelines.py、settings.py 各司其职。第一只 Spider 是一个继承 scrapy.Spider 的 Python 类,核心是三个部件:name 标识符、start_urls 起始地址列表、parse 回调方法。
运行只需在项目顶层目录执行 scrapy crawl quotes,日志里能看到每个请求的抓取与处理过程。教程还用一小节解释了「背后发生了什么」:引擎取走起始请求交给调度器排队,下载器抓回页面,Spider 解析出条目与新请求,条目交给后续处理、新请求再入队——理解这条流水线,后面调日志、设延迟都有依据。
字段提取:XPath 选择器
教程用一小节讲 XPath 的基本用法——按标签层级、属性与文本定位内容——然后在 Spider 的 parse 方法里用 response.xpath(...) 或 CSS 选择器把每条名言的 text、author、tags 三个字段抽出来,组装成字典交给引擎。教程页的示例代码可直接对照教学站页面结构验证,这也是官方选 quotes.toscrape.com 做示例的原因:页面结构简单稳定,适合练手。
导出文件:一条命令的事
抓到的结构化数据不需要自己写保存逻辑,命令行直接搞定:scrapy crawl quotes -O quotes.json 输出 JSON 文件。教程特别提醒了一个细节:-O 是覆盖写,-o 是追加写,而往 JSON 文件追加会破坏 JSON 格式——需要追加时应改用 JSON Lines 或 CSV 这类支持追加的格式。
Feed exports 机制支持的格式不止这几种,正式使用时值得单独读一遍。
跟随链接与分页
parse 回调除了提取字段,还能生成新的 Request 交给调度器——教程用这个机制演示了怎么跟进「下一页」链接和作者详情页,分页过程由此保留:每一页的名言和下一页的请求都在同一条回调链里。callback 参数可以指定不同页面用不同方法解析。教程还给了捷径写法和更多示例模式,以及用 -a 传参控制 Spider 行为的办法(比如 -a tag=humor 只抓带 humor 标签的名言,参数会变成 Spider 的实例属性)。
引用这份教程前要留意的几点
Scrapy 框架按 BSD 三条款许可证发布(仓库 scrapy/scrapy,6.5 万 star,最近推送 2026 年 10 月 28 日),LICENSE 原句「Copyright (c) Scrapy developers.」,再分发须保留版权声明与免责声明,不得用项目作者名义做背书推广;官方文档页脚同样署名 Scrapy developers,引用教程内容注明出处与文档版本即可。
教程面向公开教学站,采集任何真实站点前先确认目标站的 robots 与服务条款。相关入口整理在回复区。
────────────────
回复后可见:Scrapy 官方教程页、安装指南与 GitHub 仓库的官方地址。


雷达卡


京公网安备 11010802022788号







