Python转Json升级版

将excel文件夹中所有xslx文件全部转换json文件,存放在data文件夹中;

excel中的格式,从序号为2的行开始,2行为key;1行可以自由写注释;
使用时用双击excel_to_json.py文件即可;
使用条件
1.安装python,配置环境变量;
2.安装excel库openpyxl;
cmd中输入pip install openpyxl执行;
脚本
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
| import openpyxl import json import io import os
def excel_to_json(excel_file, json_f_name): jd = [] heads = [] book = openpyxl.load_workbook(excel_file) sheet = book[u'Sheet1'] max_row = sheet.max_row max_column = sheet.max_column for column in range(max_column): heads.append(sheet.cell(2, column + 1).value) for row in range(max_row): if row < 3: continue one_line = {} for column in range(max_column): k = heads[column] v = sheet.cell(row + 1, column + 1).value one_line[k] = v jd.append(one_line) book.close() save_json_file(jd, json_f_name)
def save_json_file(jd, json_f_name): f = io.open(json_f_name, 'w', encoding='utf-8') txt = json.dumps(jd, indent=2, ensure_ascii=False) f.write(txt) f.close()
def to_work(): filenames=os.listdir(r'./excel') for file_info in filenames: strlist = file_info.split('.') excel_to_json('./excel/'+file_info, './data/'+strlist[0]+".txt") print(file_info +' to json successful')
if '__main__' == __name__: to_work() print('All data to json complete')
|