2014-12-22 80 views
0

我试图使用它们的API从www.crunchbase.com刮取数据。我有一个非常简单的python脚本来获得他们的API响应。当我将json_data写入文件时,键出现的顺序与我在线使用crunchbase API收到的响应顺序不匹配。作为例子,我附上了两个文件。该公司是“locaii”,一个文件显示json数据和其他简单文本数据。我知道订单没有什么区别,但我如何获得json数据以匹配相同的订单?刮掉的JSON数据与文本数据的顺序不同

使用的Python代码是: -

page = requests.get("http://api.crunchbase.com/v/2/organization/locaii?user_key=<api_key>") 
json_data = page.json() 
open("locaii.txt","w").write(page.text) 
out_file =open("locaii.json","w") 
json.dump(json_data,out_file, indent=4) 

文件 “locaii.txt” 在该格式 - https://drive.google.com/file/d/0B8IDZa4NAwfqYzBSejJQbVJoV28/view?usp=sharing

文件 “locaii.json” 在该格式 - https://drive.google.com/file/d/0B8IDZa4NAwfqdWtVUWVJaXBwNWM/view?usp=sharing

+0

@Oliver W你知道如何去做这件事。 – aamir23

回答

1

JSON对象(以及它们反序列化的Python数据类型,字典)是无序的。无法保证密钥最终会以什么顺序出现(或者该命令在该语言的不同版本/实现方式,甚至是同一程序的多次运行中是否保持相同),并且您绝不应该依赖它。