有人指出我在弹性搜索dsl python客户端中使用扫描API时如何从生成器中提取结果FirebaseApp
?
例如,我正在使用(在此示例中为elasticsearch-dsl scan)
_source
我得到以下
for hit in s.scan():
print(hit)
如何从命中生成器中提取字典?
答案 0 :(得分:1)
每个Hit
都有to_dict()
,因此可以hit.to_dict()
:
for hit in s.scan():
print(hit.to_dict())
答案 1 :(得分:0)
除了@ ami-hollander答案- .to_dict()不会转换元信息(例如id),如果您需要此信息,则可以执行以下操作:
hit_dict = hit.to_dict()
hit_dict['meta'] = hit.meta.to_dict()