Scrapy 2.13 文档
Scrapy 是一个快速的高级 网络爬虫 和 网络抓取 框架,用于爬取网站并从中提取结构化数据。它可以用于广泛的用途,从数据挖掘到监控和自动化测试。
获取帮助
遇到麻烦了吗?我们很乐意提供帮助!
- 尝试 常见问题 ——它有常见问题的答案。
- 正在寻找具体信息?尝试 索引 或 模块索引。
- 在 StackOverflow 上使用 scrapy 标签 提问或搜索问题。
- 在 Scrapy subreddit 上提问或搜索问题。
- 在 scrapy-users 邮件列表 的档案中搜索问题。
- 在 #scrapy IRC 频道 提问。
- 在我们的 问题追踪器 中报告 Scrapy 的错误。
- 加入 Discord 社区 Scrapy Discord。
第一步
- Scrapy 概览
了解 Scrapy 是什么以及它如何帮助你。 - 安装指南
在你的电脑上安装 Scrapy。 - Scrapy 教程
编写你的第一个 Scrapy 项目。 - 示例
通过玩一个预制的 Scrapy 项目来了解更多。
基本概念
- 命令行工具
了解用于管理你的 Scrapy 项目的命令行工具。 - 爬虫
编写爬取网站的规则。 - 选择器
使用 XPath 从网页中提取数据。 - Scrapy shell
在交互式环境中测试你的提取代码。 - Item
定义你要抓取的数据。 - Item Loaders
用提取的数据填充你的 Item。 - Item Pipeline
后处理和存储你抓取的数据。 - Feed 导出
使用不同的格式和存储输出你抓取的数据。 - 请求与响应
了解用于表示 HTTP 请求和响应的类。 - 链接提取器
从页面中提取要跟随的链接的便捷类。 - 设置
了解如何配置 Scrapy 并查看所有 可用设置。 - 异常
查看所有可用的异常及其含义。
内置服务
- 日志
了解如何在 Scrapy 中使用 Python 的内置日志功能。 - 统计收集
收集有关你的抓取爬虫的统计信息。 - 发送电子邮件
在某些事件发生时发送电子邮件通知。 - Telnet 控制台
使用内置的 Python 控制台检查正在运行的爬虫。
解决具体问题
- 常见问题
获取最常见问题的答案。 - 调试爬虫
了解如何调试 Scrapy 爬虫的常见问题。 - 爬虫契约
了解如何使用契约来测试你的爬虫。 - 常见实践
熟悉一些 Scrapy 常见实践。 - 大规模爬取
调整 Scrapy 以并行爬取大量域名。 - 使用浏览器的开发者工具进行抓取
了解如何使用浏览器的开发者工具进行抓取。 - 选择动态加载的内容
读取动态加载的网页数据。 - 调试内存泄漏
了解如何在爬虫中查找并消除内存泄漏。 - 下载和处理文件和图像
下载与你抓取的 Item 相关联的文件和/或图像。 - 部署爬虫
部署你的 Scrapy 爬虫并在远程服务器上运行它们。 - AutoThrottle 扩展
根据负载动态调整爬取速率。 - 基准测试
检查 Scrapy 在你的硬件上的性能。 - 任务:暂停和恢复爬取
了解如何暂停和恢复大型爬虫的爬取。 - 协程
使用 协程语法。 - asyncio
使用asyncio和asyncio驱动的库。
扩展 Scrapy
- 架构概览
了解 Scrapy 架构。 - 附加组件
启用和配置第三方扩展。 - 下载器中间件
自定义页面如何被请求和下载。 - 爬虫中间件
自定义爬虫的输入和输出。 - 扩展
使用你的自定义功能扩展 Scrapy。 - 信号
查看所有可用的信号以及如何使用它们。 - 调度器
了解调度器组件。 - Item 导出器
快速将你抓取的 Item 导出到文件(XML、CSV 等)。 - 组件
了解构建自定义 Scrapy 组件时的通用 API 和一些良好实践。 - 核心 API
在扩展和中间件中使用它来扩展 Scrapy 功能。
所有其余部分
- 发布说明
查看最新 Scrapy 版本中的更改。 - 贡献 Scrapy
了解如何为 Scrapy 项目做贡献。 - 版本控制和 API 稳定性
了解 Scrapy 版本控制和 API 稳定性。