python解析json文件:自选一个json文件,读取文件并解析出想要的值

以下是我的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)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值