diff --git a/04-CustomLibrary/Library/delUseless.py b/04-CustomLibrary/Library/delUseless.py new file mode 100644 index 0000000..eff8a00 --- /dev/null +++ b/04-CustomLibrary/Library/delUseless.py @@ -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) + + + + + + + +