| 语言 | 格式 | 评分 |
|---|---|---|
英语 | .pdf | 3 |
| 摘要 | ||
文档详细介绍了Scrapy 2.0版本的更新内容,包括新功能、改进和修复。主要更新包括支持Google Ajax爬取标准、引入新的缓存存储后端、增强的调试功能以及对Python 3的更好支持。文档还提到了弃用某些旧功能和接口,以及对安全性进行了改进。版本更新包括修复多个已知问题,改进了日志记录和统计功能,优化了内存管理和下载延迟的动态调整。 | ||
| AI总结 | ||
# Scrapy 2.0 文档总结
## 主要更新与新功能
### 1. **版本更新**
- **Scrapy 0.22.0**:
- **增强功能**:
- HTTP缓存后端切换到文件系统,默认存储位置更改为`scrapy.contrib.httpcache.DbmCacheStorage`。
- 支持通过CONNECT方法处理HTTPS URL。
- 增加Google定义的AJAX爬取支持。
- 重命名`scrapy.spider.BaseSpider`为`scrapy.spider.Spider`。
- 默认启用EXSLT命名空间注册。
- 统一Item加载器命名方式。
- 提升测试覆盖率,支持Python 3。
- 提高日志记录级别,将设置和中间件信息提升为INFO级别。
- 支持定义HTTP错误处理。
- 使用现代Python惯用法优化代码。
- 更新文档,修复多个文档问题。
- **修复问题**:
- 修复Selector类导入问题。
- 修复对非TextResponse实例调用`body_as_unicode()`的错误。
- 提改进telnet控制台的安全性。
- **Scrapy 1.5.0**:
- 支持Google Cloud Storage文件管道。
- 提升代理服务器连接复用效率。
- 改进日志和警告信息,便于调试。
- 引入`--meta`选项支持自定义请求元数据。
- 支持Python 3.6、PyPy和PyPy3。
- 默认支持HTTP 308、522和524状态码。
- **其他版本更新**:
- **Scrapy 0.22.1**:
- 修复与`engine.slots`相关的引用问题。
- 修复HTML解析器中的多个问题。
- 改进文档排版和测试用例。
- **Scrapy 0.22.2**:
- 修复文档中的拼写错误。
- 修复与`inspect.stack()`相关的测试问题。
### 2. **核心功能改进**
- **选择器(Selectors)**:
- 推荐使用`.get()`和`.getall()`替代`.extract_first()`和`.extract()`。
- 引入`Selector.attrib`和`SelectorList.attrib`属性,便于获取HTML元素属性。
- CSS选择器缓存提升性能。
- **Telnet控制台**:
- Telnet控制台现在需要用户名和密码,增强安全性。
- **扩展性增强**:
- Feed导出器、存储和重复过滤器支持`from_crawler`。
- 引入新的信号,如`item_error`和`request_reached_downloader`。
- 增强sitemap爬虫的过滤功能。
- 下载处理程序支持延迟加载。
### 3. **其他重要改进**
- **安全与兼容性**:
- 修复XXE漏洞,增强sitemap读取安全性。
- 修复与URL处理相关的多个问题。
- **性能优化**:
- HTTP缓存存储优化。
- 提升代理服务器连接复用效率。
- **文档与工具**:
- 更新文档,支持Parsel 1.5及以上版本。
- 提供更详细的项目文件结构文档。
- 增加新的命令行工具,如`scrapy edit`和`scrapy parse`。
### 4. **向后不兼容的更改**
- **HTTP缓存**:
- 默认HTTP缓存存储位置改为文件系统,旧版本用户需手动设置`HTTPCACHE_STORAGE`。
- **选择器API**:
- 使用Parsel 1.5及以上版本,部分自定义选择器可能需要调整。
- **Telnet控制台**:
- Telnet控制台默认需要用户名和密码,旧版本用户需更新配置。
### 5. **新功能**
- **Scrapyd改进**:
- 每个蜘蛛独立运行,支持日志文件轮转。
- 提供基本Web界面(默认地址:`http://localhost:6800`)。
- **信号与扩展**:
- 新增`item_error`信号,便于处理管道中的错误。
- 新增`request_reached_downloader`信号,便于自定义调度器。
- **调试与日志**:
- 提供更详细的日志信息,便于调试。
### 6. **总结**
Scrapy 2.0版本在性能、扩展性和安全性方面均有显著提升,新增了多项实用功能,同时修复了多个已知问题。对于开发者而言,建议关注向后不兼容的更改,确保代码兼容性。 | ||
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余
329 页请下载阅读 -
文档评分














Scrapy 2.0 Documentation
Celery 2.0 Documentation