풋살 기록 웹플리케이션 - (1) 구글시트기록 json 데이터로 저장하기

Dzeko·2024년 5월 7일
0

개발일지

목록 보기
71/76

구글 시트에 기록돼있던 데이터를 옮겨와야 한다.
먼저 시트를 csv로 저장했다.
csv -> json으로 바꿔주는 사이트(csvjson.com)에서 json 으로 변환 후
파이썬으로 필요한 데이터를 추출 & 저장했다.

이 과정에서 월 - 주차로 되어 있던 열들을 당시 날짜들로 계산해서 저장했다.

->

import json
import datetime

newDic = {}

path = '2022/new_2022_goal.json'

start_date1 = datetime.date(2022, 1, 1)
end_date1 = datetime.date(2022, 12, 31)

sundays = [start_date1 + datetime.timedelta(days=i) for i in range((end_date1 - start_date1).days + 1) if (start_date1 + datetime.timedelta(days=i)).weekday() == 6]

dayArr = []
for sunday in sundays:
    dayArr.append(sunday.strftime('%m%d'))

goalData = {}
with open(goal_path, 'r', encoding='utf-8') as file:
    goalData = json.load(file)

stats = {}
for idx, day in enumerate(dayArr):
    stats[day] = {}
    for key, value in goalData.items():
        if key in stats[day]:
            if value[idx] != '':
                stats[day][key]['골'] = value[idx]
            else:
                stats[day][key]['골'] = 0

newDic = {'__collections__': {
    2022: stats
    }
}

#
with open(output_file_path, 'w', encoding='utf-8') as file:
    json.dump(newDic, file, indent=4, ensure_ascii=False)
profile
Do or Die

0개의 댓글