Excel转Json升级版

Excel转Json升级版-Python-LMLPHP

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

Excel转Json升级版-Python-LMLPHP

excel中的格式,从序号为2的行开始,2行为key;1行可以自由写注释;

使用时用双击excel_to_json.py文件即可;

使用条件

1.python安装

2.安装excel库openpyxl

​使用pip安装,复制该连接中所有文字;

​任意位置创建txt文件命名为get-pip,复制内容后保存,将txt文件后缀改为py;

​打开cmd,输入py (此处有空格),脱动刚创建好的get-pip.py文件进入cmd执行;

​cmd中输入pip install openpyxl执行;

脚本

import openpyxl
import json
import io
import os

# excel表格转json文件
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()
    # 将json保存为文件
    save_json_file(jd, json_f_name)

# 将json保存为文件
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')
12-26 07:25