以下是我的json数据:
{"version": "23231cimesfedkk",
"result":{"pages": 1314,
"data": [
{"name": "小明", "IDcard": "5323012000209281999", "address": "重庆市巴南区", },
{"name": "二明", "IDcard": "5323012000209281998", "address": "重庆市大足区", }
]}
}
读取json文件并解析出想要的数据,并转换为Excel文件,代码:
import json
import pandas
import datetime
#引入json文件
jsonObj=json.load(
open("D:\\17test\\test.json",'r',encoding='utf-8')
)
#定义一个字典,获取所需字段名
dataOutput = {
"name": [],
"IDcard" : [],
"address": []
}
indexNum=1
#通过循环获取json中的数据,并添加到字典中
for line in jsonObj:
# try:
# line_dict = json.loads(line)
# except json.decoder.JSONDecodeError as e:
# print("JSON 解析错误:", e)
# print("出错的数据行:", line)#报错检查出错信息
dataOutput["name"].append(line["name"])
dataOutput["IDcard"].append(line["IDcard"])
dataOutput["address"].append(line["address"])
print("正在处理第"+str(indexNum)+"行")#打印正在执行的行
indexNum +=1
print(dataOutput)
print("正在写入Excel")
#定义当前时间
currentTime=datetime.datetime.now()
dataForm=pandas.DataFrame(dataOutput)
dataForm.to_excel("转换结果-test"+currentTime.strftime("%Y%m%d"+".xlsx"))#转换为Excel文件
print("写入完成")
读取json数据:
#读取json数据
jsondata = {"version": "23231cimesfedkk", "result": {"pages": 1314, "data": [
{"name": "小明", "IDcard": "5323012000209281999", "address": "重庆市巴南区", },
{"name": "二明", "IDcard": "5323012000209281998", "address": "重庆市大足区", }]}}
if __name__ == '__main__':
# 将数据由str类型转成dict类型
# result = json.loads(jsondata)
jsondata = jsondata["result"]["data"]
resultdata = jsondata
namelist = []
idcardlist = []
addresslist = []
for data in resultdata:
namelist.append(data['name'])
idcardlist.append(data['IDcard'])
addresslist.append(data['address'])
print(namelist)
print(idcardlist)
print(addresslist)