搜索

epub文档 Scrapy 0.20 Documentation

564.53 KB 276 页 0 下载 84 浏览 0 评论 0 收藏
语言 格式 评分
英语
.epub
3
摘要
文档主要介绍了Scrapy框架的基本概念、安装指南、教程、示例以及版本更新日志。Scrapy 0.20版本引入了新的选择器API,支持Immutable URL/Body,优化了HTTP缓存机制,并增强了扩展模块的兼容性。文档还提供了详细的命令行工具使用方法、爬虫规则定义和数据提取策略。此外,版本更新日志详细记录了每个版本的功能改进和问题修复,帮助用户了解Scrapy的最新动态。
AI总结
### Scrapy 0.20 文档总结 #### 1. **版本更新** - **0.20.0(2013年11月8日)** - **新功能**: - **Selector API**:新增对 CSS 选择器的支持,同时保留 XPath 功能。 - **不可变 URL 和正文属性**:Request 和 Response 的 URL 和正文属性变为不可变。 - **ITEM_PIPELINES**:从列表改为字典。 - **SitemapSpider**:支持获取备用 URL。 - **嵌套结构导出**:新增基于原生 Python 类型的导出器,支持嵌套结构。 - **HTTP1.1 连接池优化**:调整连接池大小以匹配设置的并发数。 - **MailSender 支持 TLS/STARTTLS**:支持通过 TLS 或 STARTTLS 升级加密连接发送邮件。 - **弃用与移除**: - **Python 2.5 和 Twisted 2.5**:不再支持。 - **实验性爬虫 v2**:移除。 - **0.20.1(2013年11月28日)** - **修复**: - 修复并行处理中失败 deferreds 泄漏的问题。 - **include_package_data**:修复从发布源构建 wheels 的问题。 - **0.20.2(2013年12月9日)** - **更新**: - 更新 CrawlSpider 模板以适配选择器更改。 - 修复教程中的方法名称错误。 #### 2. **重要功能** - **Spider Contracts**:新增用于测试爬虫的机制,支持正式且可重复的测试。 - **选择器后端**:默认使用 lxml 替代 libxml2。 - **信号和统计**: - **信号**:移除 Signals 单例,改为通过 Crawler.signals 访问。 - **统计**:移除 StatsCollector 单例,改为通过 Crawler.stats 访问。 - **请求处理**: - 新增 `process_start_requests()` 方法。 - 支持多会话 cookie 管理。 #### 3. **性能与优化** - **HTTP 缓存**:默认存储在项目数据目录。 - **统计收集**:统计功能简化,保持向后兼容。 - **基准测试**:新增 `scrapy bench` 命令,用于评估 Scrapy 在本地硬件上的性能。 #### 4. **兼容性** - **爬取顺序**:默认使用深度优先搜索(DFS),可通过设置切换为广度优先搜索(BFS)。 - **退出代码**:命令行工具支持退出码,用于指示错误。 #### 5. **FAQ** - **代理支持**:Scrapy 支持 HTTP 代理,通过 `HttpProxyMiddleware` 实现。 - **跨页面抓取**:使用 `FormRequest.from_response()` 模拟用户登录。 - **Crash 问题**: - ImportError: No module named win32api → 安装 `pywin32`。 - Scrapy 默认用户代理字符串改为 `Scrapy/VERSION (+http://scrapy.org)`。 #### 6. **资源** - **获取帮助**: - 邮件列表:[scrapy-users](http://groups.google.com/group/scrapy-users/) - IRC 频道:`#scrapy` - 问题跟踪:[GitHub Issues](https://github.com/scrapy/scrapy/issues) - **文档**: - 官方文档:[Scrapy Documentation](https://scrapy.org/) - 示例项目:通过 `scrapy genspider` 创建示例爬虫。 #### 7. **其他** - **向后兼容性**: - 大部分功能保留向后兼容,但部分设置和接口已更新,建议查看迁移指南。 - **灵感来源**:Scrapy 受 Django 和 Twisted 的启发,借鉴了其优秀的设计理念。 总结:Scrapy 0.20 版本在功能、性能和兼容性方面均有较大更新,新增了多项实用功能,同时优化了底层架构,适合用于大规模网络数据抓取和处理。
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余 269 页请下载阅读 -
文档评分
请文明评论,理性发言.