Scrapy – Feed exports
描述
Feed exports是一种存储从网站搜刮来的数据的方法,即生成一个 “导出文件”。
序列化格式
使用多种序列化格式和存储后端,Feed Exports使用Item exporters并生成一个带有刮削项目的feed。
下表显示了支持的格式-
| 序列号 | 格式和描述 | 
|---|---|
| 1 | JSON FEED_FORMAT是 json 输出器使用的是 scrapy.exporters.JsonItemExporter类 。 | 
| 2 | JSON行 FEED_FROMAT是 jsonlines ,出口者使用的是 scrapy.exporters.JsonLinesItemExporter类 。 | 
| 3 | CSV FEED_FORMAT是 CSV Exporter,使用的是 scrapy.exporters.CsvItemExporter类 。 | 
| 4 | XML FEED_FORMAT是 xml ,使用的是 scrapy.exporters.XmlItemExporter类 。 | 
使用 FEED_EXPORTERS 设置,也可以扩展支持的格式
| 序号 | 格式和描述 | 
|---|---|
| 1 | Pickle FEED_FORMAT是pickel 出口者使用的是 scrapy.exporters.PickleItemExporter类 。 | 
| 2 | Marshal FEED_FORMAT是marshal格式,出口器使用的是 scrapy.exporters.MarshalItemExporter类 。 | 
存储后端
存储后端定义了使用URI来存储feed的地方。
下表显示了支持的存储后端。
| 序号 | 存储后端和描述 | 
|---|---|
| 1 | 本地文件系统 URI方案是 文件 ,它被用来存储饲料。 | 
| 2 | FTP URI方案是 ftp ,它被用来存储饲料。 | 
| 3 | S3 URI方案是 S3 ,feeds存储在Amazon S3上。需要外部库botocore 或boto 。 | 
| 4 | 标准输出 URI方案是 stdout ,feeds被存储到标准输出。 | 
存储URI参数
以下是存储URL的参数,在创建feed的时候会被替换:
- %(时间)s:这个参数被替换为时间戳。
 - %(name)s:这个参数会被蜘蛛的名字所取代。
 
设置
下表显示了可以用来配置Feed导出的设置。
| 序号 | 设置和描述 | 
|---|---|
| 1 | FEED_URI 它是用于启用饲料出口的出口饲料的URI。 | 
| 2 | FEED_FORMAT 它是一个用于饲料的序列化格式。 | 
| 3 | FEED_EXPORT_FIELDS 它用于定义需要导出的字段。 | 
| 4 | FEED_STORE_EMPTY 它定义是否导出没有项目的feeds。 | 
| 5 | FEED_STORAGES 它是一个字典,包含额外的饲料存储后端。 | 
| 6 | FEED_STORAGES_BASE 它是一个具有内置feed存储后端的字典。 | 
| 7 | FEED_EXPORTERS 它是一个具有额外饲料出口商的字典。 | 
| 8 | FEED_EXPORTERS_BASE 它是一个具有内置饲料出口商的字典。 | 
极客教程