爬虫蜘蛛项目导出器Feed Exports之存储后端Storage backends(32)python SCRAPY最新教程1.51以上版本
设置
这些是用于配置Feed导出的设置:
FEED_URI
(强制)FEED_FORMAT
FEED_STORAGES
FEED_EXPORTERS
FEED_STORE_EMPTY
FEED_EXPORT_ENCODING
FEED_EXPORT_FIELDS
FEED_EXPORT_INDENT
FEED_EXPORT_ENCODING
默认: None
用于Feed的编码。
如果未设置或设置为None
(默认),它将使用UTF-8用于除JSON输出之外的所有内容,JSON输出使用安全数字编码(\uXXXX
序列)以用于历史原因。
utf-8
如果您也想要UTF-8用于JSON,请使用。
FEED_EXPORT_FIELDS
默认: None
要导出的字段列表,可选。示例:。FEED_EXPORT_FIELDS = ["foo", "bar", "baz"]
使用FEED_EXPORT_FIELDS选项定义要导出的字段及其顺序。
当FEED_EXPORT_FIELDS为空或无(默认)时,Scrapy使用Item
蜘蛛正在产生的dicts或子类中定义的字段。
如果导出器需要一组固定的字段(这是CSV导出格式的情况 )并且FEED_EXPORT_FIELDS为空或无,则Scrapy会尝试从导出的数据中推断字段名称 – 目前它使用第一个项目中的字段名称。
FEED_EXPORT_INDENT
默认: 0
用于在每个级别上缩进输出的空间量。如果FEED_EXPORT_INDENT
是非负整数,则数组元素和对象成员将使用该缩进级别进行漂亮打印。缩进级别0
(默认值)或负数将把每个项目放在一个新行上。None
选择最紧凑的表示。
目前仅由JsonItemExporter
和实施XmlItemExporter
,即当您导出到.json
或.xml
。
FEED_STORAGES_BASE
默认:
{
'': 'scrapy.extensions.feedexport.FileFeedStorage',
'file': 'scrapy.extensions.feedexport.FileFeedStorage',
'stdout': 'scrapy.extensions.feedexport.StdoutFeedStorage',
's3': 'scrapy.extensions.feedexport.S3FeedStorage',
'ftp': 'scrapy.extensions.feedexport.FTPFeedStorage',
}
包含Scrapy支持的内置Feed存储后端的dict。您可以通过分配None
其URI方案 来禁用任何这些后端FEED_STORAGES
。例如,要禁用内置FTP存储后端(无需替换),请将其放在settings.py
:
FEED_STORAGES = {
'ftp': None,
}
FEED_EXPORTERS_BASE
默认:
{
'json': 'scrapy.exporters.JsonItemExporter',
'jsonlines': 'scrapy.exporters.JsonLinesItemExporter',
'jl': 'scrapy.exporters.JsonLinesItemExporter',
'csv': 'scrapy.exporters.CsvItemExporter',
'xml': 'scrapy.exporters.XmlItemExporter',
'marshal': 'scrapy.exporters.MarshalItemExporter',
'pickle': 'scrapy.exporters.PickleItemExporter',
}
包含Scrapy支持的内置Feed导出器的dict。您可以通过分配None
其序列化格式来禁用任何这些导出器FEED_EXPORTERS
。例如,要禁用内置CSV导出器(无需替换),请将其放入settings.py
:
FEED_EXPORTERS = {
'csv': None,
}