Scrapy更改项目订单

时间:2016-07-22 10:25:35

标签: python python-2.7 scrapy scrapy-spider

我正在抓取一些数据并将其导出到json文件,但我似乎无法设置项目的顺序。在做了一些阅读后,我发现scrapy Items是python dict的包装器,并将以不可预测的顺序返回item字段。

我尝试添加:

    def keys(self):
    return ['item1', 'item2', 'item3']

现在输出只包含这3个项目,但订单仍然无法预测,无论如何我可以设置这些项目的顺序吗?

1 个答案:

答案 0 :(得分:0)

在JSON中,定义了一个对象:

An object is an unordered set of name/value pairs.

请参阅http://json.org

JSON的大多数实现都不会保留对象名称/值对的顺序,因为它(根据定义)并不重要。

所以最后我改变了数据格式。