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

5
我需要字典中的值。但是item在其上使用了一些抽象。如何从item中获取字典中的字段?
我现在知道Scrapy允许在item的位置返回字典。但是我已经在我的代码中使用了item,那么该如何转换它呢?

请查看以下链接: https://dev59.com/P2Eh5IYBdhLWcg3w12ml - PenguMC
1个回答

8
我觉得这个问题是:
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']

有没有任何理由不使用 p.__dict__['_values'] - user568109
不,我只是想你只需要一个例子。我会添加以增强清晰度。 - Robert Moskal

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接