Я пытаюсь разобрать даты из текста, где дата может быть в любом формате. Я использую dateutil.parser.parse
с fuzzy=True
аргументом. Но иногда я получаю следующую ошибку:
>>> dateutil.parser.parse("20, 2019", fuzzy=True)
Traceback (most recent call last)
/usr/local/lib/python3.6/site-packages/dateutil/parser/_parser.py in parse(self, timestr, default, ignoretz, tzinfos, **kwargs)
654 try:
--> 655 ret = self._build_naive(res, default)
656 except ValueError as e:
/usr/local/lib/python3.6/site-packages/dateutil/parser/_parser.py in _build_naive(self, res, default)
1237
-> 1238 if cday > monthrange(cyear, cmonth)[1]:
1239 repl['day'] = monthrange(cyear, cmonth)[1]
/usr/lib64/python3.6/calendar.py in monthrange(year, month)
122 if not 1 <= month <= 12:
--> 123 raise IllegalMonthError(month)
124 day1 = weekday(year, month, 1)
IllegalMonthError: bad month number 20; must be 1-12
Я не могу найти способ перехватить это исключение.