【发布时间】:2015-04-22 20:29:20
【问题描述】:
我只是想写入 csv。但是我有两个单独的 for 语句,因此每个 for 语句的数据独立导出并破坏顺序。有什么建议吗?
def parse(self, response):
hxs = HtmlXPathSelector(response)
titles = hxs.select('//td[@class="title"]')
subtext = hxs.select('//td[@class="subtext"]')
items = []
for title in titles:
item = HackernewsItem()
item["title"] = title.select("a/text()").extract()
item["url"] = title.select("a/@href").extract()
items.append(item)
for score in subtext:
item = HackernewsItem()
item["score"] = score.select("span/text()").extract()
items.append(item)
return items
如下图所示,第二个 for 语句打印在其他语句下方,而不是像标题那样“在”其他语句中打印。
附上CSV图片:
完整文件的 github 链接:https://github.com/nchlswtsn/scrapy/blob/master/items.csv
【问题讨论】:
-
你能上传 CSV 文件吗?
-
@boussouira 是的!更新