본문 바로가기

python

python ISODate string 변환

몽고에 쿼리날린 결과를 그대로 json으로 바꿔서 쓰고 싶지만

ISODate 때문에 파싱이 되지 않기때문에 새로 문자열을 뽑아준다.


def convert_iso_date(str1: str) -> str:
"""
ISODate를 한국시간 문자열로 바꿈
:param str1:
:return:
"""
str2 = ''

pre_start_idx = 0
pre_end_idx = 0
for i in re.finditer('ISODate\(".+"\)', str1):
start_idx, end_idx = i.span()
tmp_utc_dt = as_utc_dt(datetime.strptime(str1[start_idx:end_idx], 'ISODate("%Y-%m-%dT%H:%M:%SZ")'))
tmp_seou_dt = as_seoul_dt(tmp_utc_dt)
str2 += str1[pre_end_idx:start_idx] + tmp_seou_dt.strftime('"%Y-%m-%d %H:%M:%S"')
pre_start_idx = start_idx
pre_end_idx = end_idx
str2 += str1[pre_end_idx:]
return str2


'python' 카테고리의 다른 글

[python] boto3 athena 실행  (0) 2021.05.05