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

Python의 dateutil 라이브러리는 다양한 날짜 포맷을 구문 분석하고 파싱하는데 유용한 기능을 제공합니다. dateutil.parser 모듈은 dateutil.parser.parserinfo 클래스를 사용하여 날짜 및 시간 작업을 특정 로케일에 맞게 수행할 수 있도록 지원합니다.

parserinfo 클래스는 dateutil.parser 모듈에 사전 정의된 로케일을 사용할 수 있도록 합니다. 그러나 경우에 따라서는 사용자가 자체 로케일을 정의하고 싶을 수도 있습니다.

다음은 parserinfo 클래스를 사용하여 날짜 구문 분석 로케일을 지정하는 코드 예시입니다:

from dateutil.parser import parserinfo

class KoreanParserInfo(parserinfo):
    WEEKDAYS = [('월', '월요일'), ('화', '화요일'), ('수', '수요일'), ('목', '목요일'), ('금', '금요일'), ('토', '토요일'), ('일', '일요일')]
    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 클래스를 생성합니다
korean_parser = parserinfo_cls=KoreanParserInfo

# 예시 날짜를 구문 분석합니다
date_string = '2022년 5월 20일 수요일'
parsed_date = parser.parse(date_string, parserinfo=korean_parser)

# 결과를 출력합니다
print(parsed_date)

위의 코드에서는 parserinfo 클래스를 상속받은 KoreanParserInfo 클래스를 정의합니다. 이 클래스는 한국어로 된 요일 및 월 명칭을 포함하도록 WEEKDAYSMONTHS 속성을 재정의합니다.

정의된 KoreanParserInfo 클래스를 사용하여 한국어로 작성된 날짜 문자열을 구문 분석합니다. parser.parse() 메서드의 parserinfo 매개변수를 korean_parser로 설정하여 한국어로 작성된 날짜 문자열을 구문 분석할 수 있게 합니다.

결과적으로, '2022년 5월 20일 수요일' 문자열은 한국어로 파싱되어 datetime 객체로 반환됩니다.

참고로, parserinfo 클래스는 날짜와 관련된 다양한 속성과 메서드를 포함하고 있으므로 필요에 따라 추가적인 수정이 가능합니다.

더 자세한 정보는 dateutil.parser documentation을 참고하세요.