| 语言 | 格式 | 评分 |
|---|---|---|
英语 | .pdf | 3 |
| 摘要 | ||
文档详细记录了Scrapy 1.0版本的更新内容,包括新功能的添加、性能的优化、兼容性的调整以及问题的修复。主要内容涵盖:支持AJAX可爬取URL、新增持久化爬虫调度器、支持分块传输编码、添加对Boto 2.0的支持、默认选择器从libxml2切换到lxml、移除对Python 2.5和Twisted 2.5的支持、改进统计收集模块、重构信号和状态收集机制等。文档还列出了多项API更改、新功能和增强功能,以及如何配置和使用Scrapy。 | ||
| AI总结 | ||
### Scrapy 1.0 Documentation 总结
#### 1. 版本更新日志
- **1.0.7 版本更新**:
- 修复了缓存失败的内存泄漏问题。
- 修复了 MemoryUsage 扩展中 `get_engine_status()` 方法的参数问题。
- 解决了 HTTP 压缩中间件的 `struct.error` 问题。
- 解决了 AJAX 爬取 Unicode URL 的问题。
- 捕获 `start_requests` 迭代器错误。
- 优化 `libxml2 XPathSelector` 的性能。
- 更新版本说明文档。
- 修复 Scrapyd 文档链接。
- **0.14 版本更新**:
- 新增支持 AJAX 爬取 URL。
- 引入持久化调度器,支持暂停和恢复爬取。
- 新增 `-o` 命令行选项,用于将抓取结果输出到文件或标准输出。
- 支持自定义设置通过 Scrapyd 的 schedule.json API 传递。
- 新增 ChunkedTransferMiddleware,支持分块传输编码。
- 支持 Boto 2.0 的 S3 下载器处理程序。
- 新增对 `marshal` 格式的 feed 导出支持。
- 错误处理优化:失败请求信息存储在 `failure.request` 属性中。
- 下载器重构,支持按域名/IP 的并发限制。
- **0.16 版本更新**:
- 新增 Spiders Contracts,用于以可重复的方式测试蜘蛛。
- 新增 `runspider` 命令的 `-o` 和 `-t` 选项。
- 文档化并默认启用 AutoThrottle 扩展。
- 重构统计收集模块,简化统计功能。
- 新增 `process_start_requests()` 方法到蜘蛛中间件。
- 移除 Signals 和 Stats Collector 单例,改为通过 Crawler 访问。
- lxml 成为默认选择器后端,替代 libxml2。
- 移除未使用的 `scrapy.xlib.BeautifulSoup` 和 `scrapy.xlib.ClientForm`。
- 支持 SitemapSpider 处理 `.xml` 和 `.xml.gz` 格式的sitemap链接。
- 新增 `dont_redirect` 和 `dont_retry` 元数据键,控制重定向和重试行为。
- 移除对 Python 2.5 和 Twisted 2.5 的支持。
#### 2. 新功能和设置
- **新功能**:
- AJAX 爬取支持。
- 持续抓取支持(暂停和恢复)。
- 命令行工具增强(如 `scrapy.bat` 和 bash 补全)。
- 新增 `StackTraceDump` 扩展,支持记录线程堆栈信息。
- 支持 JSON 和 JSONLines 导出中的嵌套项。
- **新设置**:
- `REFERER_ENABLED` 控制referer中间件。
- `DOWNLOAD_TIMEOUT` 和 `USER_AGENT` 属性替换旧的 spider 属性。
- 移除 `ENCODING_ALIASES` 设置,编码检测依赖 `w3lib.encoding`。
#### 3. API 变化
- **主要变化**:
- `Request` 对象的 `url` 和 `body` 属性变为只读。
- `Request.copy()` 和 `Request.replace()` 方法新增对 callback 和 errback 属性的支持。
- 移除 `UrlFilterMiddleware` 和 `SpiderManager`。
- 重构信号和统计收集模块,改为通过 Crawler 访问。
- 重构模块路径,如 `scrapy.contrib` 模块合并到 `scrapy.utils`。
#### 4. 弃用和移除
- **弃用**:
- `SpiderManager` 被移除,建议使用 `SpiderLoader`。
- `UrlFilterMiddleware` 已禁用,默认不再使用。
- 移除 `Spider.middlewares` 中的某些默认中间件。
- **移除**:
- 不再支持 Python 2.5 和 Twisted 2.5。
- 移除未记录的 `HTMLImageLinkExtractor` 类。
- 移除 `BaseSgmlLinkExtractor` 的部分旧功能。
#### 5. 其他改进
- **日志和统计**:
- 新增 Python 标准日志支持。
- 重构统计收集模块,移除全局和 spider 级别的统计分离。
- **性能和兼容性**:
- 提升 feed 导出性能,支持更多格式。
- 新增 DNS 缓存大小和超时选项。
- 支持 XML 命名空间前缀在 `xmliter_lxml` 中使用。
- **文档和工具**:
- 更新命令行工具文档,新增对所有子命令的支持。
- 文档化核心 API 和扩展功能。
- 修复文档中的格式问题和错误。
总结:Scrapy 1.0 版本在功能、性能和兼容性方面有显著提升,新增了 AJAX 爬取、持久化调度器等重要特性,并对 API 和模块进行了重构,提升了框架的灵活性和可维护性。 | ||
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余
237 页请下载阅读 -
文档评分














Scrapy 1.0 Documentation
Celery 1.0 Documentation