ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

将获取的['json字段'] 转为csv 文件 - 数据转格式化处理

2022-08-30 12:03:07  阅读:178  来源: 互联网

标签:isinstance set res 字段 json dics tott csv data


用到的函数:

1、eval():

eval()函数常被称为评估函数,它的功能是去掉参数最外侧引号,变成python可执行的语句,并执行语句的函数。

2、isinstance():

isinstance() 函数来判断一个对象是否是一个已知的类型。

########################################################
#data_set['jsondata']中保存了下载的json数据,储存为str字段#
#要把存储的str字段转为可读取的dataFrame文件               #
########################################################

import pandas as pd
#载入下载的文件
data_set=pd.read_csv('文件路径+文件名',encoding='utf8')
import re
import json
df_dics=[]
#仅仅做中间结果输出检查
tott=0
error_tott=0
for i in range(0,len(data_set)):
    #根据re正则表达式匹配 "[XXX]"中的XXX 字段
    res = re.findall(r'[[](.*?)[]]', data_set['jsondata'][i])[0]
    #使用try catch 避免因为小错误直接中断循环
    try:
        res=eval(res) #将str解析为元组,元组里包含多个字典
        #使用isinstance函数判断解析的结果是否成功 若为tuple说明解析成功
        if isinstance(res,tuple):
            res=list(res)
            tott += 1
            for j in res:
                dics = j
                print("_____________________")
                print(j)
                dics['brand']=data_set['brand'][i]
                df_dics.append(dics)

    except SyntaxError:
        error_tott+=1
        print("exception")
T=pd.DataFrame(df_dics)
T.to_csv("csv文件名字",index=False,encoding='utf8')

 

标签:isinstance,set,res,字段,json,dics,tott,csv,data
来源: https://www.cnblogs.com/AKsnoopy/p/16638797.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有