在 scrapinghub spider 中添加设置
Add settings in scrapinghub spider
我正在尝试在 scrapinghub 平台的蜘蛛中启用 mongodb。为此,我必须通过 UI 中的 "EXTENSIONS" 设置启用扩展。但是,当 运行 蜘蛛时,我得到以下错误:
ValueError: Some paths in "{'scrapy.contrib.feedexport.FeedExporter': None}" convert to the same object, please update your settings
我的设置如下:
EXTENSIONS = {'scrapy.contrib.feedexport.FeedExporter': None}
如果我删除此设置,我会收到以下错误:
exceptions.ValueError: Some paths in "{'scrapy_mongodb.MongoDBPipeline': 300}" convert to the same object, please update your settings
设置如下:
ITEM_PIPELINES = {'scrapy_mongodb.MongoDBPipeline': 300}
令人担忧的是这两个设置在本地 scrapyd 中都可以正常工作。
Scrapy Cloud 将设置的任何给定值转换为字符串。在您的情况下,您使用的字典被解释为字符串 "{'scrapy.contrib.feedexport.FeedExporter': None}"
.
问题是Scrapy中不支持为EXTENSIONS
设置一个字符串(其实大多数取字典值的设置都不支持,一般是因为它们可以接受其他值类型,因此将 strings
转换为 dict
可能会导致意外情况)。
处理设置的 Scrapy 代码发生了一些变化,因此隐藏了实际问题,但应该就是这样。仅将您的设置放在项目设置文件中 settings.py
应该可以解决您的问题。
我正在尝试在 scrapinghub 平台的蜘蛛中启用 mongodb。为此,我必须通过 UI 中的 "EXTENSIONS" 设置启用扩展。但是,当 运行 蜘蛛时,我得到以下错误:
ValueError: Some paths in "{'scrapy.contrib.feedexport.FeedExporter': None}" convert to the same object, please update your settings
我的设置如下:
EXTENSIONS = {'scrapy.contrib.feedexport.FeedExporter': None}
如果我删除此设置,我会收到以下错误:
exceptions.ValueError: Some paths in "{'scrapy_mongodb.MongoDBPipeline': 300}" convert to the same object, please update your settings
设置如下:
ITEM_PIPELINES = {'scrapy_mongodb.MongoDBPipeline': 300}
令人担忧的是这两个设置在本地 scrapyd 中都可以正常工作。
Scrapy Cloud 将设置的任何给定值转换为字符串。在您的情况下,您使用的字典被解释为字符串 "{'scrapy.contrib.feedexport.FeedExporter': None}"
.
问题是Scrapy中不支持为EXTENSIONS
设置一个字符串(其实大多数取字典值的设置都不支持,一般是因为它们可以接受其他值类型,因此将 strings
转换为 dict
可能会导致意外情况)。
处理设置的 Scrapy 代码发生了一些变化,因此隐藏了实际问题,但应该就是这样。仅将您的设置放在项目设置文件中 settings.py
应该可以解决您的问题。