Excel轉Json升級版
將excel資料夾中所有xslx檔案全部轉換json檔案,存放在data資料夾中;
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')