删除json串中的无用值
This commit is contained in:
91
04-CustomLibrary/Library/delUseless.py
Normal file
91
04-CustomLibrary/Library/delUseless.py
Normal file
@@ -0,0 +1,91 @@
|
||||
import json
|
||||
def delUseless(jsonData,list1,list2,list3):
|
||||
# jsonData = '{"opAction":"add","refuseCode":true,"returnData":0,"objectList":{"objectType":"ip","objectSubType":"endpoint","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"abcd","objectDesc":"","subObjectIds":[],"addItemList":[{"ip":"1.1.1.1","ipIf":false,"portIf":false,"port":"0-65535","itemId":"","clientIp1":"1.1.1.1","clientIp2":"1.1.1.1","clientPort1":"","clientPort2":"","clientIpFormat":"range","clientPortFormat":"range","addrType":4,"direction":0,"temporaryItemId":1618221249}],"updateItemList":[],"deleteItemIds":[],"iconColor":"#31739C"}}'
|
||||
#如果传进来一个json的话,可能会由于截断,把数据中的大括号截掉一个,改正方法是在数据中的" "外加转义符,example见jsonData
|
||||
#jsonData = '{ "code" : 200, "msg" : "Success", "data" : { "objectList" : [ { "addItemList" : [ { "addrType" : 4, "clientIp1" : "3.3.3.3", "clientIp2" : "32", "clientIpFormat" : "CIDR", "clientPort1" : "0", "clientPort2" : "65535", "clientPortFormat" : "range", "direction" : 0, "ip" : "3.3.3.3", "isInitialize" : 0, "isSession" : "endpoint", "isValid" : 1, "itemDesc" : "{ \\"ip\\":\\"3.3.3.3\\" ,\\"port\\":\\"0-65535\\"}", "itemId" : 3719111, "itemName" : null, "itemType" : "ip", "objectId" : 23471, "opTime" : "2021-04-13 15:40:36", "opUser" : 1527, "port" : "0-65535", "protocol" : 0, "serverIp1" : "0.0.0.0", "serverIp2" : "255.255.255.255", "serverIpFormat" : "mask", "serverPort1" : "0", "serverPort2" : "65535", "serverPortFormat" : "mask" }, { "addrType" : 4, "clientIp1" : "4.4.4.4", "clientIp2" : "32", "clientIpFormat" : "CIDR", "clientPort1" : "0", "clientPort2" : "65535", "clientPortFormat" : "range", "direction" : 0, "ip" : "4.4.4.4", "isInitialize" : 0, "isSession" : "endpoint", "isValid" : 1, "itemDesc" : "{ \\"ip\\":\\"4.4.4.4\\" ,\\"port\\":\\"0-65535\\"}", "itemId" : 3719112, "itemName" : null, "itemType" : "ip", "objectId" : 23471, "opTime" : "2021-04-13 15:40:36", "opUser" : 1527, "port" : "0-65535", "protocol" : 0, "serverIp1" : "0.0.0.0", "serverIp2" : "255.255.255.255", "serverIpFormat" : "mask", "serverPort1" : "0", "serverPort2" : "65535", "serverPortFormat" : "mask" }, { "addrType" : 4, "clientIp1" : "5.5.5.5", "clientIp2" : "32", "clientIpFormat" : "CIDR", "clientPort1" : "0", "clientPort2" : "65535", "clientPortFormat" : "range", "direction" : 0, "ip" : "5.5.5.5", "isInitialize" : 0, "isSession" : "endpoint", "isValid" : 1, "itemDesc" : "{ \\"ip\\":\\"5.5.5.5\\" ,\\"port\\":\\"0-65535\\"}", "itemId" : 3719113, "itemName" : null, "itemType" : "ip", "objectId" : 23471, "opTime" : "2021-04-13 15:40:36", "opUser" : 1527, "port" : "0-65535", "protocol" : 0, "serverIp1" : "0.0.0.0", "serverIp2" : "255.255.255.255", "serverIpFormat" : "mask", "serverPort1" : "0", "serverPort2" : "65535", "serverPortFormat" : "mask" } ], "deleteItemIds" : [ ], "iconColor" : "#31739C", "isDisplay" : null, "isExclusion" : 0, "isInitialize" : 0, "isValid" : 1, "memberType" : 1, "objectDesc" : "", "objectId" : 23471, "objectName" : "testjson2", "objectSubType" : "endpoint", "objectType" : "ip", "opTime" : "2021-04-13 15:40:36", "opUser" : 1527, "subObjectIds" : [ ], "updateItemList" : [ ] } ] }, "success" : true }'
|
||||
print(type(jsonData))
|
||||
if type(jsonData) == str:
|
||||
dictData = json.loads(jsonData)
|
||||
print(dictData)
|
||||
print(type(dictData))
|
||||
else:
|
||||
pass
|
||||
if "data" in dictData.keys():
|
||||
dictData = dictData["data"]
|
||||
else:
|
||||
pass
|
||||
#list1 = ["opAction","refuseCode","returnData","code","msg","success"]
|
||||
for i in list1:
|
||||
if i in dictData.keys():
|
||||
del dictData[i]
|
||||
else:
|
||||
pass
|
||||
print(dictData)
|
||||
|
||||
#list2 = ["isDisplay","memberType","objectId","opTime","opUser"]
|
||||
# #list3 = ["ipIf","portIf","itemId","clientIp2","clientIpFormat","clientPort1","clientPort2","isInitialize","isSession","isValid",
|
||||
# "itemDesc","itemId","itemType","objectId","opTime","opUser","protocol","serverIp1","serverIp2","serverIpFormat","serverPort1","serverPort2","serverPortFormat"]
|
||||
for i in list2:
|
||||
# objectList = dictData["objectList"]
|
||||
print(type(dictData["objectList"]))
|
||||
if(type(dictData["objectList"]))==list:
|
||||
len1 = len(dictData["objectList"])
|
||||
for j in range(len1):
|
||||
# if i in dictData["objectList"][j].keys():
|
||||
# del dictData[i]
|
||||
print(dictData["objectList"][j].get(i))
|
||||
if dictData["objectList"][j].get(i) is None:
|
||||
print(i)
|
||||
dictData["objectList"][j][i] = 'heihei'
|
||||
else:
|
||||
pass
|
||||
print(type(dictData["objectList"][j]))
|
||||
print(dictData["objectList"][j])
|
||||
if i in dictData["objectList"][j].keys():
|
||||
del dictData["objectList"][j][i]
|
||||
else:
|
||||
pass
|
||||
dictData2 = dictData["objectList"][j]["addItemList"]
|
||||
len2 = len(dictData2)
|
||||
for k in list3:
|
||||
# if dictData2["itemName"] is None:
|
||||
# dictData["objectList"][j]["addItemList"]["itemName"] = "safsaf"
|
||||
# else:
|
||||
# pass
|
||||
for addItem in range(len2):
|
||||
if dictData2[addItem].get(k) is None:
|
||||
dictData["objectList"][j]["addItemList"][addItem][k] = 'hahaha'
|
||||
else:
|
||||
pass
|
||||
if k in dictData["objectList"][j]["addItemList"][addItem].keys():
|
||||
del dictData["objectList"][j]["addItemList"][addItem][k]
|
||||
else:
|
||||
pass
|
||||
|
||||
|
||||
elif(type(dictData["objectList"]))==dict:
|
||||
del dictData["objectList"][i]
|
||||
dictData3 = dictData["objectList"]["addItemList"]
|
||||
len3 = len(dictData3)
|
||||
for k2 in list3:
|
||||
for addItem2 in range(len3):
|
||||
if dictData3[addItem2].get(k2) is None:
|
||||
dictData["objectList"]["addItemList"][addItem2][k2] = 'huhuhu'
|
||||
else:
|
||||
pass
|
||||
if k2 in dictData["objectList"]["addItemList"][addItem2].keys():
|
||||
del dictData["objectList"]["addItemList"][addItem2][k2]
|
||||
else:
|
||||
pass
|
||||
else:
|
||||
print('传入数据不属于当前可被处理的格式')
|
||||
return dictData
|
||||
print(dictData)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user