| 语言 | 格式 | 评分 |
|---|---|---|
英语 | .epub | 3 |
| 摘要 | ||
文档主要介绍了Scrapy框架的基本概念、安装指南、教程、示例以及版本更新日志。Scrapy 0.20版本引入了新的选择器API,支持Immutable URL/Body,优化了HTTP缓存机制,并增强了扩展模块的兼容性。文档还提供了详细的命令行工具使用方法、爬虫规则定义和数据提取策略。此外,版本更新日志详细记录了每个版本的功能改进和问题修复,帮助用户了解Scrapy的最新动态。 | ||
| AI总结 | ||
### Scrapy 0.20 文档总结
#### 1. **版本更新**
- **0.20.0(2013年11月8日)**
- **新功能**:
- **Selector API**:新增对 CSS 选择器的支持,同时保留 XPath 功能。
- **不可变 URL 和正文属性**:Request 和 Response 的 URL 和正文属性变为不可变。
- **ITEM_PIPELINES**:从列表改为字典。
- **SitemapSpider**:支持获取备用 URL。
- **嵌套结构导出**:新增基于原生 Python 类型的导出器,支持嵌套结构。
- **HTTP1.1 连接池优化**:调整连接池大小以匹配设置的并发数。
- **MailSender 支持 TLS/STARTTLS**:支持通过 TLS 或 STARTTLS 升级加密连接发送邮件。
- **弃用与移除**:
- **Python 2.5 和 Twisted 2.5**:不再支持。
- **实验性爬虫 v2**:移除。
- **0.20.1(2013年11月28日)**
- **修复**:
- 修复并行处理中失败 deferreds 泄漏的问题。
- **include_package_data**:修复从发布源构建 wheels 的问题。
- **0.20.2(2013年12月9日)**
- **更新**:
- 更新 CrawlSpider 模板以适配选择器更改。
- 修复教程中的方法名称错误。
#### 2. **重要功能**
- **Spider Contracts**:新增用于测试爬虫的机制,支持正式且可重复的测试。
- **选择器后端**:默认使用 lxml 替代 libxml2。
- **信号和统计**:
- **信号**:移除 Signals 单例,改为通过 Crawler.signals 访问。
- **统计**:移除 StatsCollector 单例,改为通过 Crawler.stats 访问。
- **请求处理**:
- 新增 `process_start_requests()` 方法。
- 支持多会话 cookie 管理。
#### 3. **性能与优化**
- **HTTP 缓存**:默认存储在项目数据目录。
- **统计收集**:统计功能简化,保持向后兼容。
- **基准测试**:新增 `scrapy bench` 命令,用于评估 Scrapy 在本地硬件上的性能。
#### 4. **兼容性**
- **爬取顺序**:默认使用深度优先搜索(DFS),可通过设置切换为广度优先搜索(BFS)。
- **退出代码**:命令行工具支持退出码,用于指示错误。
#### 5. **FAQ**
- **代理支持**:Scrapy 支持 HTTP 代理,通过 `HttpProxyMiddleware` 实现。
- **跨页面抓取**:使用 `FormRequest.from_response()` 模拟用户登录。
- **Crash 问题**:
- ImportError: No module named win32api → 安装 `pywin32`。
- Scrapy 默认用户代理字符串改为 `Scrapy/VERSION (+http://scrapy.org)`。
#### 6. **资源**
- **获取帮助**:
- 邮件列表:[scrapy-users](http://groups.google.com/group/scrapy-users/)
- IRC 频道:`#scrapy`
- 问题跟踪:[GitHub Issues](https://github.com/scrapy/scrapy/issues)
- **文档**:
- 官方文档:[Scrapy Documentation](https://scrapy.org/)
- 示例项目:通过 `scrapy genspider` 创建示例爬虫。
#### 7. **其他**
- **向后兼容性**:
- 大部分功能保留向后兼容,但部分设置和接口已更新,建议查看迁移指南。
- **灵感来源**:Scrapy 受 Django 和 Twisted 的启发,借鉴了其优秀的设计理念。
总结:Scrapy 0.20 版本在功能、性能和兼容性方面均有较大更新,新增了多项实用功能,同时优化了底层架构,适合用于大规模网络数据抓取和处理。 | ||
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余
269 页请下载阅读 -
文档评分














Scrapy 0.20 Documentation
Scrapy 0.20 Documentation