python 解析json数组_解析JSON数组在Python

{

"cis" : [ {

"ucmdbId" : "835cfedfaabc32a1358b322ff3bae056",

"type" : "running_software",

"properties" : {

"display_label" : "jboss (site1.ru)"

}

}, {

"ucmdbId" : "7ef9f21c132c12b3d8d2af0964cc5970",

"type" : "node",

"properties" : {

"display_label" : "site2.ru"

}

} ],

"relations" : [ {

"ucmdbId" : "80c42edbe32fbb4c25621756ec9e09d2",

"type" : "compound_f",

"properties" : null,

"end1Id" : "23e30baf2320a3274d0aa1e7f56cdaef",

"end2Id" : "15af0ba134327d32a0c5c72450e63fcd"

}, {

"ucmdbId" : "7fe9fb15d4462d1212aeee4aef2f32b4",

"type" : "compound_f",

"properties" : null,

"end1Id" : "23e30baf2320a3274d0aa327f56cdaef",

"end2Id" : "9232dd2621b814da632932e8cd33ffc8"

} ]

}

我需要带记:

[{

"ucmdbId" : "835cfedfaabc32a1358b322ff3bae056",

"type" : "running_software",

"display_label" : "jboss (site1.ru)"

}, {

"ucmdbId" : "7ef9f21c132c12b3d8d2af0964cc5970",

"type" : "node",

"display_label" : "site2.ru"

}]

,我只需要 '顺' 阵列。 我尝试在Python:

#!/usr/bin/python

import sys

import os

import tablib

import pandas as pd

import json

from pandas.io.json import json_normalize

f = open('/home/nik/test.json', 'rw')

jsonArray = f.read()

f.close

data = json.dumps(json.loads(jsonArray)['cis'])

jsonResult = pd.read_json(data)

array = json.loads(jsonArray)

print jsonArray

jsonResult.to_excel('/home/nik/output.xlsx', sheet_name='Sheet1')

,但我怎么能得到关键参数? 我尝试使用:

*打印数据[ '类型']键()

打印数据[ '类型'] *

但具有错误:

AttributeError的:“STR '对象没有属性'键'。

我该如何获得正确的json格式?

+1

data ['type']'返回类似''running_software''的东西。这是一个字符串,而不是字典。 –

+0

data ['type']'是一个'str'对象,即''running_software''或''node'''。这个对象没有'.key()'方法。你期望会发生什么? –

你可能感兴趣的:(python,解析json数组)