使用Exporter导出数据
在Scrapy中,负责导出数据的组件被称为Exporter,Scrapy内部实现了多个Exporter,每个Exporter实现一种数据格式的导出,支持的格式如下:
- JSON(JsonItemExporter)
- JSON lines(JsonLinesItemExporter)
- CSV(CsvItemExporter)
- XML(XmlItemExporter)
- Pickle(PickleItemExporter)
Marshal(MarshalItemExporter)
- 指定如何导出数据
在导出数据时,需向Scrapy爬虫提供以下信息:
- 导出文件路径
- 导出数据格式
可以通过以下两种方式指定爬虫如何导出数据:
- 命令行参数指定
配置文件指定
- 命令行参数
就像之前导出数据一样
scrapy crawl books -o books.csv
如果需要明确指定导出数据格式时,使用 -t 参数
scrapy crawl books -t json -o books.json
运行以上命令,爬虫会以 -t 参数中的数据格式字符串为键,在配置字典FEED_EXPORTERS 中搜索Exporter,该字典内容由以下两个字典的内容合并而成:
- 默认配置文件中的FEED_EXPORTERS_BASE
- 用户配置文件中的FEED_EXPORTERS