天天看点

json文件转换成excel

1、环境

python2.7

2、库

xlwt、demjson、json

3、code

# -*- coding: utf-8 -*-
import xlwt,demjson,json
if __name__ == \'__main__\':
    \'\'\'读取excel\'\'\'
    x = 0 #初始值 横轴
    y = 0 #初始值 数轴
    wbk = xlwt.Workbook()
    sheet = wbk.add_sheet(\'sheet 1\')

    with open(\'api.json\', \'r\') as t:
        data = t.read().decode(\'utf-8\')
        apilist = data.strip(\',\').split(\'+\')
        for v in apilist:
            string = v.replace("\'", \'"\')
            dictDat = demjson.decode(string.encode(\'utf-8\'))
            # print dictDat[u\'methodsName\']

            sheet.write(x,y,u\'内容\')
            sheet.write(x,y+1,dictDat[u\'desc\'])

            sheet.write(x+1,y,u\'URL\')
            sheet.write(x+1,y+1,dictDat[u\'path\'])

            ## 参数
            sheet.write(x+2,y,  u\'参数\')
            sheet.write(x+2,y+1,u\'默认值\')
            sheet.write(x+2,y+2,u\'类型\')
            sheet.write(x+2,y+3,u\'说明\')

            ## 开始添加参数
            dict1 = dictDat[u\'params\']
            vv = 1
            for k,v in dict1.items():
                sheet.write(x+2+vv, y,  k)
                v = ( u\'空\' if v == \'\' else v)
                ss = ( u\'字符串\' if v == u\'空\' else u\'数值\')
                sheet.write(x+2+vv, y+1,  v)
                sheet.write(x+2+vv, y+2,  ss)
                sheet.write(x+2+vv, y+3,  \'\')
                vv += 1
            x = x + 4 + len(dict1)
            wbk.save(\'api.xlsx\')      
json文件转换成excel