pdf文档 Scrapy 2.11.1 Documentation

1.79 MB 425 页 0 评论
语言 格式 评分
英语
.pdf
3
摘要
文档详细记录了Scrapy框架版本2.11.1的更新内容,包括安全修复、新增功能、删除的弃用功能、错误修复、文档更新以及质量保障的改进。主要更新包括:1. 安全修复,解决了ReDoS漏洞,并移除了deprecated的解压缩模块;2. 新增功能如支持Google Cloud Storage的Feed导出、批处理交付等;3. Deprecations,如移除了多个LinkExtractor类,并推荐使用LinkExtractor替代;4. 错误修复,涉及CSV导出、请求方法处理等;5. Documentation的更新和质量保障提升,如代码样例的简化、代码提示的扩展;6. 对Python 3.12的支持并移除对Python 3.7的支持。
AI总结
以下是对《Scrapy 2.11.1 Documentation》的总结,涵盖了主要版本更新的核心内容和关键信息: --- ### Scrapy 2.11.1 Documentation 总结 #### 1. **版本更新概要** - **Scrapy 2.11.1 (2024-02-14)** - **主要更新**: - 安全性修复,包括ReDoS漏洞和正则表达式实现问题。 - 支持Twisted >= 23.8.0,并改进了文档。 - 已 deprecated 的 `scrapy.utils.iterators.xmliter` 被 `xmliter_lxml()` 替代。 - 移除了已 deprecated 的 `scrapy.downloadermiddlewares.decompression` 模块。 - 修复了空 CSV 导出问题。 - **Scrapy 2.10.1 (2023-08-30)** - 标记 Twisted >= 23.8.0 为不支持。 - **Scrapy 2.10.0 (2023-08-04)** - **主要更新**: - 支持 Python 3.12,移除 Python 3.7 支持。 - 新增插件框架,简化第三方组件配置。 - 配置可重试的异常。 - 修复和改进导feed导出功能。 - 更新依赖版本,包括 `lxml` 和 `cryptography`。 - **Scrapy 2.7.0 (2022-10-17)** - **主要更新**: - 支持 Python 3.11,移除 Python 3.6 支持。 - 改进异步回调支持,默认启用 asyncio。 - 中央化请求指纹配置。 - 更新依赖版本,包括 `lxml` 和 `Pillow`。 --- #### 2. **核心功能与改进** - **新功能**: - 支持 Google Cloud Storage 的 Feed 导出。 - 新增 `FEED_EXPORT_BATCH_ITEM_COUNT` 设置。 - `parse` 命令支持指定输出文件。 - `Request.from_curl` 和 `curl_to_request_kwargs()` 支持 `--data-raw`。 - 内置 spider 子类(如 `CrawlSpider`)支持解析回调。 - **错误修复**: - 修复 dataclass 和 attr.s 项的 CSV 导出问题。 - 修复 ANSI 转义序列在 Windows 上的处理问题。 --- #### 3. **依赖与配置** - **依赖更新**: - `lxml` 最低版本要求提高至 4.4.1。 - `cryptography` 最低版本要求提高至 36.0.0。 - `boto3` 取代 `botocore` 作为 S3 导出推荐工具。 - 移除对 `pkg_resources` 的依赖。 - **配置更改**: - `FEED_STORE_EMPTY` 默认值变为 `True`,修复空文件创建问题。 --- #### 4. **安全与稳定性** - **安全修复**: - 解决 ReDoS 漏洞,已 deprecated 的 `xmliter` 被 `xmliter_lxml()` 替代。 - 修复 `open_in_browser()` 中的正则表达式实现问题。 - `DOWNLOAD_MAXSIZE` 和 `DOWNLOAD_WARNSIZE` 适用于解压后的响应正文。 - 删除 `Authorization` 头以防止跨域请求的安全漏洞。 --- #### 5. **文档与代码质量** - **文档更新**: - 更新 OpenSSL 密码套件列表格式的链接。 - 简化数据类项的代码示例。 - 更新贡献者行为准则至 2.1 版本。 - **代码质量**: - 扩展类型提示,改进代码兼容性。 - 固定 `brotli` 版本以避免 PyPy 测试失败。 - 优化 CI 配置和预提交检查。 --- #### 6. **补遗** - **多版本更新亮点**: - 支持 Python 3.12,移除 Python 3.6 和 3.7 支持。 - 新增 `FEED_EXPORT_FIELDS` 选项和 JmesSelect 支持。 - 允许在 spider 中返回字典。 - 支持 TLS SNI 和 CSS 链接提取器。 - 新增 `Response.urljoin()` 帮助器。 --- 以上为 Scrapy 2.11.1 及相关版本的核心更新内容,重点突出了安全修复、新功能和配置更改等关键信息,避免了冗余细节,确保逻辑清晰且易于理解。
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余 418 页请下载阅读 -
文档评分
请文明评论,理性发言.