Python 瘙痒:归因错误:';列表';对象没有属性';iteritems';

Python 瘙痒:归因错误:';列表';对象没有属性';iteritems';,python,scrapy-spider,six,Python,Scrapy Spider,Six,这是我关于堆栈溢出的第一个问题。最近我想使用,所以我下载并指示“scrapy crawl linkedin.com”,并得到以下错误消息。我使用Anaconda2.3.0和Python2.7.11作为参考。所有相关的包,包括scrapy和six,都由pip在执行程序之前更新 Traceback (most recent call last): File "/Users/byeongsuyu/anaconda/bin/scrapy", line 11, in <module>

这是我关于堆栈溢出的第一个问题。最近我想使用,所以我下载并指示“scrapy crawl linkedin.com”,并得到以下错误消息。我使用Anaconda2.3.0和Python2.7.11作为参考。所有相关的包,包括scrapy和six,都由pip在执行程序之前更新

Traceback (most recent call last):
  File "/Users/byeongsuyu/anaconda/bin/scrapy", line 11, in <module>
    sys.exit(execute())
File "/Users/byeongsuyu/anaconda/lib/python2.7/site-packages/scrapy/cmdline.py", line 108, in execute
settings = get_project_settings()
File "/Users/byeongsuyu/anaconda/lib/python2.7/site-packages/scrapy/utils/project.py", line 60, in get_project_settings
settings.setmodule(settings_module_path, priority='project')
File "/Users/byeongsuyu/anaconda/lib/python2.7/site-packages/scrapy/settings/__init__.py", line 285, in setmodule
self.set(key, getattr(module, key), priority)
  File "/Users/byeongsuyu/anaconda/lib/python2.7/site-packages/scrapy/settings/__init__.py", line 260, in set
self.attributes[name].set(value, priority)
  File "/Users/byeongsuyu/anaconda/lib/python2.7/site-packages/scrapy/settings/__init__.py", line 55, in set
value = BaseSettings(value, priority=priority)
  File "/Users/byeongsuyu/anaconda/lib/python2.7/site-packages/scrapy/settings/__init__.py", line 91, in __init__
self.update(values, priority)
  File "/Users/byeongsuyu/anaconda/lib/python2.7/site-packages/scrapy/settings/__init__.py", line 317, in update
for name, value in six.iteritems(values):
  File "/Users/byeongsuyu/anaconda/lib/python2.7/site-packages/six.py", line 599, in iteritems
return d.iteritems(**kw)

AttributeError: 'list' object has no attribute 'iteritems'

这是由链接在刮板上的:

但是,
项管道
应该是一个命令:

要激活项目管道组件,必须将其类添加到
Item\u PIPELINES
设置中,如以下示例所示:

ITEM_PIPELINES = {
    'myproject.pipelines.PricePipeline': 300,
    'myproject.pipelines.JsonWriterPipeline': 800,
}
在此设置中指定给类的整数值决定了它们的运行顺序:项从低值类到高值类。通常将这些数字定义在0-1000范围内

根据,它曾经是一个列表,这解释了为什么这个刮板使用列表。
因此,您必须要求您的用户或scraper的开发人员更新其代码,或者自己设置
ITEM\u管道。

简单的回答是,ITEM\u管道应该是一个字典,而不是一个列表,其中键作为管道类,值是一个整数,它决定了它们运行的顺序:项从低值类到高值类。通常将这些数字定义在0-1000范围内。正如@valentin Lorentz所解释的,你有Scrapy的配置文件吗?看起来它希望读取一个单词,但找到了一个列表。@ValentinLorentz是的,我添加了上面的代码。但我认为它没有关于这个问题的更多信息。编写这段代码的程序员说,它在使用Python2.7.6的Ubuntu上运行良好。
ITEM_PIPELINES = ['linkedIn.pipelines.LinkedinPipeline']
ITEM_PIPELINES = {
    'myproject.pipelines.PricePipeline': 300,
    'myproject.pipelines.JsonWriterPipeline': 800,
}