[python] dateutil의 parserinfo 클래스를 사용하여 날짜 구문 분석 로케일 변경

Python의 dateutil 패키지는 날짜와 시간을 처리하는 데 사용되는 유용한 기능을 제공합니다. 이 패키지에는 parser 모듈이 포함되어 있으며, 이를 사용하여 텍스트 형식의 날짜를 구문 분석할 수 있습니다.

기본적으로 dateutil.parser는 영어로 작성된 날짜 형식을 처리합니다. 하지만 때로는 다른 로케일의 날짜 형식을 처리해야 할 수도 있습니다. 이때 parserinfo 클래스를 사용하여 로케일을 변경할 수 있습니다.

다음은 parserinfo 클래스를 사용하여 날짜 구문 분석 로케일을 변경하는 예제 코드입니다.

from dateutil.parser import parse, parserinfo

# 사용자 정의 parserinfo 클래스 생성
class KoreanParserInfo(parserinfo):
    MONTHS = [("1월", "1월"), ("2월", "2월"), ("3월", "3월"), ("4월", "4월"), ("5월", "5월"), ("6월", "6월"),
              ("7월", "7월"), ("8월", "8월"), ("9월", "9월"), ("10월", "10월"), ("11월", "11월"), ("12월", "12월")]
    # 필요한 경우 날짜 형식에 대한 사용자 정의 설정 추가 가능

# 사용자 정의 parserinfo 클래스를 지정하여 날짜 구문 분석
date_string = "2022년 6월 30일"
parsed_date = parse(date_string, parserinfo=KoreanParserInfo())

print(parsed_date)

위의 코드에서는 KoreanParserInfo 클래스를 생성하여 MONTHS 속성을 사용자 정의했습니다. 이로써 파서는 한국어로 작성된 월을 인식할 수 있습니다. 필요한 경우 날짜 형식에 대한 추가적인 사용자 정의 설정을 할 수도 있습니다.

해당 코드에서는 “2022년 6월 30일”이라는 한국어로 작성된 날짜를 parse() 함수를 사용하여 구문 분석했습니다. 결과로는 파이썬의 datetime 객체가 반환됩니다.

이와 같이 dateutil의 parserinfo 클래스를 사용하면 원하는 로케일에 맞게 날짜를 구문 분석할 수 있습니다. 자세한 내용은 dateutil 공식 문서를 참조하시기 바랍니다.

참고 자료: