如何从 scrapy 项目中获取字典?

How to get a dict from scrapy item?

我需要字典中的值。但是 item 在它之上使用了一些抽象。如何从项目中获取字典中的字段?

我现在 scrapy allows dict to be returned in place of item 知道了。但是我已经在我的代码中使用了项目,所以如何转换它。

在我看来是这样的:

class Product(scrapy.Item):
    name = scrapy.Field()


i = Product(name='foo)
print dict(i)

给你一本字典{'name': 'foo'}

vars(p)
p.__dict__

让你: {'_values':{'name':'foo'}}

如果您不想创建新字典,只需从上面获取 _values 键:

vars(p)['_values']
p.__dict__['_values']