搜索

pdf文档 Scrapy 2.3 Documentation

1.36 MB 352 页 0 下载 87 浏览 0 评论 0 收藏
语言 格式 评分
英语
.pdf
3
摘要
The document provides an overview of Scrapy 2.3, highlighting new features, improvements, and deprecated functionalities. Key updates include changes to the Selector API, enhanced Telnet Console security, new features in Feed Exporters, and added extensibility through Signals. The release also includes various bug fixes, usability improvements, and deprecations of outdated code and functionalities. The documentation emphasizes the importance of understanding these changes to optimize scraping processes and ensures compatibility with newer Python versions and libraries.
AI总结
### Scrapy 2.3 文档总结 #### 1. 版本更新与主要改进 - **发布信息**:Scrapy 2.3.0 于 2020 年 8 月 4 日发布,包含代码清理、错误修复和新功能。 - **弃用代码清理**:移除了部分已不再维护的代码。 - **新功能与改进**: - **Selector API 更新**:Scrapy 现在依赖 `parsel` 库(版本 ≥1.5),推荐使用 `.get()` 和 `.getall()` 方法替代 `.extract_first()` 和 `.extract()`。新增 `Selector.attrib` 和 `SelectorList.attrib` 属性,便于获取 HTML 属性。 - **Telnet 控制台**:新增身份验证功能,提升安全性。 - **扩展性增强**:新增 `from_crawler` 支持,允许访问 Scrapy 设置和扩展功能(如 feed exporters 和 dupefilters)。 - **新信号**:新增 `item_error` 和 `spider_error` 信号,便于调试和监控。 - **动态调整配置**:支持动态修改下载延迟和最大并发请求。 - **新存储后端**:新增 DBM HTTP 缓存存储后端。 - **其他改进**:支持 JSON 和 JSONLines 导出器的嵌套项,新增 `scrapy edit` 命令等。 #### 2. 代码重构与移除 - **代码剥离**:部分 Scrapy 代码移至 `w3lib` 和 `scrapely` 库。 - **移除支持**: - 移除对 Python 2.5 和 Twisted 2.5 的支持。 - 移除实验性功能,如 crawlspider v2 和默认字段值支持。 - 移除未使用的功能和设置,如 `EXECUTION_QUEUE` 和 `CONCURRENT_SPIDERS`。 #### 3. 功能改进 - **日志与统计**:默认启用统计功能,便于用户监控爬虫状态。 - **内存调试**:改进 `MemoryDebugger`,使用统计信息进行内存分析。 - **下载处理**:优化下载中间件,改进错误处理和日志记录。 - **扩展性**:新增扩展功能,如自定义 feed 存储和导出器。 #### 4. 兼容性与注意事项 - **兼容性问题**:部分功能(如 `.extract()` 和 `.extract_first()`)保持向后兼容,但建议逐步迁移至新方法。 - **性能优化**:CSS 选择器缓存提升性能,适用于重复使用的情况。 #### 5. 新增功能亮点 - **扩展性**:支持通过信号和中间件扩展功能。 - **调试工具**:新增 Telnet 控制台和交互式 Shell,便于调试和数据检查。 - **数据导出**:支持多种格式(JSON、CSV、XML)和多种存储后端(FTP、S3、本地文件系统)。 - **国际化支持**:自动检测和处理多种编码格式。 #### 6. 安装与兼容性 - **Python 版本**:支持 Python 3.5.2+,推荐使用 CPython 或 PyPy 5.9+。 - **依赖管理**:确保安装最新版本的 `parsel` 和其他依赖库。 #### 7. 总结 Scrapy 2.3 提供了更强大的扩展性、更好的性能优化和改进的安全性。新增功能和改进提升了爬虫开发的效率和灵活性,同时保持了对现有功能的兼容性。对于开发者来说,了解并利用这些新功能将有助于更高效地进行网页抓取和数据处理。
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余 345 页请下载阅读 -
文档评分
请文明评论,理性发言.