¿Cómo implementar un elemento anidado en scrapy?
Estoy raspando algunos datos con información jerárquica compleja y necesito exportar el resultado a json.
Definí los artículos como
class FamilyItem():
name = Field()
sons = Field()
class SonsItem():
name = Field()
grandsons = Field()
class GrandsonsItem():
name = Field()
age = Field()
weight = Field()
sex = Field()
y cuando la araña se ejecute, obtendré una salida del artículo impreso como
{'name': 'Jenny',
'sons': [
{'name': u'S1',
'grandsons': [
{'name': u'GS1',
'age': 18,
'weight': 50
},
{
'name':u'GS2',
'age': 19,
'weight':51}]
}]
}
pero cuando corroscrapy crawl myscaper -o a.json
, siempre dice que el resultado "no es serializable JSON". Luego copio y pego la salida del elemento en la consola ipython y utilizo json.dumps (), funciona bien. ¿Dónde está el problema? esto me está volviendo loco ...