본문 바로가기

Web_Application/python

[python] excel to json



엑셀 파일




Python 소스파일 (파이썬 3.x)

#엑셀 데이터 불러와서 json 포맷으로 변경하고 파일 저장 data.json 변환 대상 파일로 저장
import xlrd
from collections import OrderedDict
import json
#{{엑셀 파일 경로}}
excel_file_path = 'C:\\Users\\user\\Downloads\\data.xlsx'


wb = xlrd.open_workbook(excel_file_path) sh = wb.sheet_by_index(0) data_list = [] for rownum in range(1, sh.nrows): data = OrderedDict() row_values = sh.row_values(rownum) data['column1'] = row_values[0] data['column2'] = row_values[1] data['column3'] = row_values[2] data['column4'] = row_values[3] data['column5'] = row_values[4] data_list.append(data)


j = json.dumps(data_list, ensure_ascii=False) #한글 정상표시를 위해 필수 with open('data.json', 'w+') as f: f.write(j)


이렇게 실행을 하면 data.json 으로 아래와 같이 생성 됩니다.

data.json


[
    {
        "column1": 1,
        "column2": 2,
        "column3": 3,
        "column4": 4,
        "column5": 5
    },
    {
        "column1": 11,
        "column2": 12,
        "column3": 13,
        "column4": 14,
        "column5": 15
    },
    {
        "column1": 21,
        "column2": 22,
        "column3": 23,
        "column4": 24,
        "column5": 25
    },
    {
        "column1": 31,
        "column2": 32,
        "column3": 33,
        "column4": 34,
        "column5": 35
    },
    {
        "column1": 41,
        "column2": 42,
        "column3": 43,
        "column4": 44,
        "column5": 45
    },
    {
        "column1": 51,
        "column2": 52,
        "column3": 53,
        "column4": 54,
        "column5": 55
    },
    {
        "column1": 61,
        "column2": 62,
        "column3": 63,
        "column4": 64,
        "column5": 65
    },
    {
        "column1": 71,
        "column2": 72,
        "column3": 73,
        "column4": 74,
        "column5": 75
    },
    {
        "column1": 81,
        "column2": 82,
        "column3": 83,
        "column4": 84,
        "column5": 85
    },
    {
        "column1": 91,
        "column2": 92,
        "column3": 93,
        "column4": 94,
        "column5": 95
    },
    {
        "column1": 101,
        "column2": 102,
        "column3": 103,
        "column4": 104,
        "column5": 105
    },
    {
        "column1": 111,
        "column2": 112,
        "column3": 113,
        "column4": 114,
        "column5": 115
    },
    {
        "column1": 121,
        "column2": 122,
        "column3": 123,
        "column4": 124,
        "column5": 125
    },
    {
        "column1": 131,
        "column2": 132,
        "column3": 133,
        "column4": 134,
        "column5": 135
    },
    {
        "column1": 141,
        "column2": 142,
        "column3": 143,
        "column4": 144,
        "column5": 145
    },
    {
        "column1": 151,
        "column2": 152,
        "column3": 153,
        "column4": 154,
        "column5": 155
    },
    {
        "column1": 161,
        "column2": 162,
        "column3": 163,
        "column4": 164,
        "column5": 165
    },
    {
        "column1": 171,
        "column2": 172,
        "column3": 173,
        "column4": 174,
        "column5": 175
    },
    {
        "column1": 181,
        "column2": 182,
        "column3": 183,
        "column4": 184,
        "column5": 185
    }
]