Я очищаю некоторые данные со сложной иерархической информацией и должен экспортировать результат в json.
Я определил элементы как
class FamilyItem():
name = Field()
sons = Field()
class SonsItem():
name = Field()
grandsons = Field()
class GrandsonsItem():
name = Field()
age = Field()
weight = Field()
sex = Field()
и когда паук завершается, я получаю распечатанный вывод, например
{'name': 'Jenny',
'sons': [
{'name': u'S1',
'grandsons': [
{'name': u'GS1',
'age': 18,
'weight': 50
},
{
'name':u'GS2',
'age': 19,
'weight':51}]
}]
}
но когда я запускаю scrapy crawl myscaper -o a.json
, он всегда говорит, что результат "не является сериализуемым JSON". Затем я копирую и вставляю вывод элемента в консоль ipython и использую json.dumps(), он отлично работает. Так где же проблема? это заставляет мои орехи...