json文件内容如下:
{"name": "Jarvis", "age": 18, "gender": "Male", "hobbies": ["eat", "drink", "play", "haha"], "work": {"cooker": "I'm a cooker", "cleanner": "I'm not a cleanner"}}{"author": "Ansian J.", "ISBN": "134-adfa-14cg-1wr-ddd", "publish": "2022-01-01 01:02:33"}{"meta": {"code": 1, "msg": "OK"}, "data": {"uuid": "1341345234524524", "success": 1, "msgid": 10086}}
解析代码
import json
def extract_json_structure_data(filename):
results = []
contents = []
stack = []
with open(filename) as fp:
for c in fp.read():
if c in ["\n"]:
continue
contents.append(c)
if c in ["{"]:
stack.append(c)
if c in ["}"]:
stack.pop()
if len(stack) == 0:
results.append(json.loads("".join(contents)))
contents = []
return results
if __name__ == "__main__":
results = extract_json_structure_data("multi_data.json")
for item in results:
print(json.dumps(item, ensure_ascii=False, indent=4))
解析结果
{
"name": "Jarvis",
"age": 18,
"gender": "Male",
"hobbies": [
"eat",
"drink",
"play",
"haha"
],
"work": {
"cooker": "I'm a cooker",
"cleanner": "I'm not a cleanner"
}
}
{
"author": "Ansian J.",
"ISBN": "134-adfa-14cg-1wr-ddd",
"publish": "2022-01-01 01:02:33"
}
{
"meta": {
"code": 1,
"msg": "OK"
},
"data": {
"uuid": "1341345234524524",
"success": 1,
"msgid": 10086
}
}