Scrapy 2.11.1 Documentation
1.76 MB
425 页
0 评论
语言 | 格式 | 评分 |
---|---|---|
英语 | .pdf | 3 |
摘要 | ||
Scrapy 2.11.1版本发布了多项改进,包括安全漏洞修复、新功能和兼容性增强。版本中删除了多个过时的类和模块,新增了对Google Cloud Storage的导出支持,并改进了批量交付功能。此外,还修复了CSV导出数据类项的问题,并增强了异步回调支持。兼容性方面,新增了对Python 3.12的支持,并弃用了部分旧版本的依赖。 | ||
AI总结 | ||
以下是对《Scrapy 2.11.1 Documentation》的内容总结,突出核心观点和关键信息:
---
### **Scrapy 2.11.1 更新日志**
#### **新功能**
- **Feed Export**:支持将数据导出到Google Cloud Storage(问题号:685, 3608)。
- **批量导出**:新增`FEED_EXPORT_BATCH_ITEM_COUNT`设置,支持批量交付(问题号:4250, 4434)。
- **解析命令**:`parse`命令现在支持指定输出文件(问题号:4317, 4377)。
- **Curl支持**:`Request.from_curl`和`curl_to_request_kwargs()`现在支持`--data-raw`(问题号:4612)。
- **解析回调**:内置爬虫子类(如`CrawlSpider`)现在支持指定解析回调(问题号:712, 732, 781, 4254)。
#### **弃用与移除**
- **LinkExtractor**:移除了`scrapy.linkextractors`中的以下类,建议使用`LinkExtractor`替代:
- `htmlparser.HtmlParserLinkExtractor`
- `regex.RegexLinkExtractor`
- `sgml.BaseSgmlLinkExtractor`
- `sgml.SgmlLinkExtractor`
- **重试功能**:`scrapy.utils.python.retry_on_eintr`函数已弃用。
#### **修复**
- **CSV导出**:修复了`dataclass`和`attr.s`项的CSV导出问题(问题号:4667, 4668)。
- **Curl请求**:修复`Request.from_curl`和`curl_to_request_kwargs()`在指定请求正文但未指定方法时默认为POST(问题号:4612)。
- **Windows支持**:修复了Windows 10.0.14393及以上版本中ANSI转义序列的处理问题,确保带色输出正常显示(问题号:4393, 4403)。
#### **文档更新**
- **设置文档**:更新了`OpenSSL`密码列表格式的链接(问题号:4653)。
- **示例简化**:简化了与数据类项相关的代码示例(问题号:4652)。
#### **质量保障**
- **类型提示**:扩展了类型提示(问题号:6003, 6005, 6031, 6034)。
- **依赖管理**:将`brotli`固定在1.0.9以支持PyPy测试(问题号:6044, 6045)。
---
### **Scrapy 2.10.1 更新日志**
- **Twisted支持**:标记Twisted >= 23.8.0为不支持,需升级至更高版本(问题号:6024, 6026)。
---
### **Scrapy 2.10.0 更新日志**
#### **主要亮点**
- **Python支持**:新增对Python 3.12的支持,停止支持Python 3.7。
- **插件框架**:引入了新插件框架,简化了第三方组件的配置。
- **重试异常**:支持配置重试的异常。
- **Feed导出**:修复了多个 Feed 导出相关问题。
#### **依赖更新**
- **Python版本**:要求Python 3.7及以上,移除了对Python 3.6的支持(问题号:5953)。
- **依赖升级**:
- `lxml`:4.3.0 → 4.4.1
- `cryptography`:3.4.6 → 36.0.0
- **建议依赖**:建议使用`boto3`代替`botocore`进行S3导出(问题号:5833)。
#### **向后兼容性更改**
- **空文件存储**:`FEED_STORE_EMPTY`的默认值改为`True`,修复了旧版本中的漏洞(问题号:872, 5847)。
#### **其他更新**
- **新方法**:新增`scrapy.settings.BaseSettings.pop()`方法(问题号:5959, 5960, 5963)。
- **替换类**:`CaseInsensitiveDict`替代`CaselessDict`,修复了API不一致的问题(问题号:5146)。
#### **文档更新**
- **设置文档**:更新了`scrapy.Spider.update_settings()`的文档(问题号:5745, 5846)。
- **Twisted使用**:明确了早期安装Twisted反应堆的潜在问题及解决方案(问题号:5981, 6000)。
#### **质量保障**
- **测试支持**:支持运行测试以验证安装的Scrapy版本(问题号:4914, 5949)。
- **类型提示**:扩展了类型提示(问题号:5925, 5977)。
- **测试修复**:修复了多个测试用例的兼容性问题。
---
### **Scrapy 2.9.0 更新日志**
#### **主要亮点**
- **域下载设置**:支持按域配置下载设置。
- **兼容性改进**:兼容新版本的`cryptography`和`parsel`。
- **JMESPath选择器**:支持通过`parsel`使用JMESPath选择器。
- **Bug修复**。
#### **弃用**
- `FeedSlot`类已更名为`scrapy.extensions.feedexport.FeedSlot`,旧名已弃用(问题号:5876)。
---
### **Scrapy 2.7.0 更新日志**
#### **主要亮点**
- **Python支持**:新增对Python 3.11的支持,停止支持Python 3.6。
- **异步支持**:异步回调支持默认启用,适用于新项目。
- **项目配置**:支持通过设置 centralizing 请求指纹配置。
#### **依赖更新**
- **升级依赖**:
- `lxml`:3.5.0 → 4.3.0
- `Pillow`:4.0.0 → 7.1.0
- `zope.interface`:5.0.0 → 5.1.0
#### **弃用**
- **图片管道**:`ImagesPipeline.thumb_path`必须接受`item`参数(问题号:5504, 5508)。 |
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余
418 页请下载阅读 -
文档评分