当前位置: 首页 > 工具软件 > xls2json > 使用案例 >

python excel 转json

有权
2023-12-01

python excel 转json

新建 base文件夹,把所有excel复制进去
base文件夹和.py文件同级

import os
import xlrd
from collections import OrderedDict
import json
import codecs

def findAllFile(base):
    for root, ds, fs in os.walk(base):
        for f in fs:
            if f.endswith(suffix):
                fullname = os.path.join(root, f)
                yield fullname

def excel2json(filename):
    print("当前处理文件:"+filename)

    wb = xlrd.open_workbook(filename)
    convert_list = []
    
    sh = wb.sheet_by_index(0)
    title = sh.row_values(0)
    for rownum in range(1, sh.nrows):
        print(sh.nrows)
        return
        rowvalue = sh.row_values(rownum)
        single = OrderedDict()
        for colnum in range(0, len(rowvalue)):
            single["id"] = rownum # id
            print(filename)
            print(single)
            if( rowvalue[colnum] == ''):
                single[title[colnum]] = "null"
            else:
                single[title[colnum]] = rowvalue[colnum]
        convert_list.append(single)
        
    j = json.dumps(convert_list,ensure_ascii=False,indent=4)
    # print(j)
    
    with codecs.open(filename+'.json',"w","utf-8") as f:
        f.write(j)
    
def main():
#所有文件在base文件夹下
    base = 'base/'

    for i in findAllFile(base):
        # print(i)
        excel2json(i)

if __name__ == '__main__':
    suffix = ".xlsx"
    main()
 类似资料: