我目前将我的已删除数据存储在要以.csv格式导出的项目中:
item = HobbyItem()
item['name'] = user.getName()
item['hobbies'] = user.getHobbies()
该项目声明如下:
name = scrapy.Field()
hobbies = scrapy.Field()
这导致csv格式如下:
name,hobbies
Tim, [['tennis'],['squash'],['music']]
Bob, [['rugby'],['polo']]
我真正想要的是:
name,hobbies
Tim, 'tennis'
Tim, 'squash'
Tim, 'music'
Bob, 'rugby'
Bob, 'polo'
有人知道如何修改输出来实现这个目标吗?
答案 0 :(得分:0)
您没有为我提供足够的代码或解释,以确保这在您的特定代码中有效但
尝试:
for element in user.getHobbies():
item['name'] = user.getName()
item['hobbies'] = element[0]
这将为每个爱好创建1个元素,多次使用getName
答案 1 :(得分:0)
name = user.getName()
for hobby in user.getHobbies():
if hobby:
item = HobbyItem()
item['name'] = name
item['hobbies'] = hobby[0]
yield item