搜索

pdf文档 Scrapy 1.1 Documentation

1.12 MB 260 页 0 下载 87 浏览 0 评论 0 收藏
语言 格式 评分
英语
.pdf
3
摘要
文档详细记录了Scrapy从0.9到1.1版本的更新内容,包括新功能、bug修复、设置更改和兼容性调整。主要更新包括对Python 3的Beta支持、Item加载器对嵌套加载器的支持、匿名S3连接、 Deferreds在下载中间件中的应用、HTTP缓存遵循RFC2616的改进、选择器提取到Parsel库、HTTPS下载器默认启用TLS协议 negotiation等。文档还列出了多项bug修复和设置调整,如默认启用Robots.txt遵守、Unicode处理改进、文件上传ACL策略变更等。
AI总结
### Scrapy 1.1 Documentation 总结 #### 1.1.3 版本更新 - **新功能与改进**: - **Python 3 支持(Beta)**:需要 Twisted >= 15.5。 - **Item 加载器**:支持嵌套加载器(issue 1467)。 - **FormRequest.from_response**:优化表单请求处理(issue 1382、1137)。 - **自动节流设置**:新增 `AUTOTHROTTLE_TARGET_CONCURRENCY`,优化文档(issue 1324)。 - **响应文本获取**:新增 `response.text` 以获取 Unicode 格式的正文(issue 1730)。 - **匿名 S3 连接**:支持匿名访问 S3(issue 1358)。 - **延迟中间件**:支持异步操作,改进 `robots.txt` 处理(issue 1473)。 - **HTTP 缓存**:更严格遵循 RFC2616,新增 `HTTPCACHE_ALWAYS_STORE` 和 `HTTPCACHE_IGNORE_RESPONSE_CACHE_CONTROLS` 设置(issue 1151)。 - **选择器引擎**:选择器功能独立为 `parsel` 库,可单独使用且支持独立升级(issue 1409)。 - **HTTPS 下载器**:默认启用 TLS 协议协商,支持通过 `DOWNLOADER_CLIENT_TLS_METHOD` 设置 SSL/TLS 方法(issue 1473)。 - **XML 节点名支持**:允许 XML 节点名包含点号(issue 1533)。 - **关键 Bug 修复**: - **不再重试 400 错误**:默认不再重试 HTTP 400 错误,若需旧行为,可将 400 添加到 `RETRY_HTTP_CODES`(issue 1289)。 - **文件路径处理**:修复命令行文件路径处理问题,`scrapy shell index.html` 会尝试加载 URL,需使用 `scrapy shell ./index.html` 加载本地文件(issue 1710、1550)。 - **默认启用 robots.txt 遵守**:新项目默认启用 `ROBOTSTXT_OBEY`,若需关闭,可在 `settings.py` 中更新设置(issue 1724)。 - **导出器 Unicode 支持**:导出器默认使用 Unicode,若使用 `PythonItemExporter`,需禁用已弃用的二进制模式(issue 1080)。 - **S3 存储 ACL 默认设置**:默认存储策略改为 `private`,可通过 `FILES_STORE_S3_ACL` 更改(警告:不兼容更改)。 - **URL 标准化**:重实现 `canonicalize_url()`,输出更准确,尤其适用于非 ASCII 字符 URL(警告:可能影响缓存条目)。 - **API 变化与注意事项**: - **Request 对象属性**:`url` 和 `body` 属性变为只读(issue 230)。 - **Request 方法**:`Request.copy()` 和 `Request.replace()` 现在复制 `callback` 和 `errback` 属性(issue 231)。 - **模块移动**:`scrapy.contrib.spidermanager` 移动到 `scrapy.spidermanager`,`scrapy.stats.collector.StatsCollector` 移动到 `scrapy.statscol.StatsCollector`。 #### 其他版本更新 - **1.0.3 版本**: - 新增 `service_identity` 到 `scrapy install_requires`(commit cbc2501)。 - 修复 Travis CI 问题(commit 66af9cd)。 - **1.0.2 版本**: - 修复 Twisted 15.3.0 的 PicklingError 问题(commit b04dd7d)。 - 修复方法名称和文档语法问题(commit 6f85c7f、9c9d2e0)。 - **1.0.1 版本**: - 修复 FTP 请求路径转义问题(commit cc00ad2)。 - 包含测试文件到源代码发行包(commit eca227e)。 - **1.0.0 版本**: - 新增支持返回字典的蜘蛛功能,无需再声明和返回 `Item`。 - 其他文档修复和改进(commit 6d2b3aa、c90de33)。 #### 总结 Scrapy 1.1 版本带来了大量新功能和改进,尤其是对 Python 3 的支持和对 `robots.txt` 的默认遵守。同时,部分更改可能影响现有代码,建议用户在升级前仔细阅读更新日志,确保兼容性。
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余 253 页请下载阅读 -
文档评分
请文明评论,理性发言.