in otava/util.py [0:0]
def parse_datetime(date: Optional[str]) -> Optional[datetime]:
"""
Converts a human-readable string into a datetime object.
Accepts many formats and many languages, see dateparser package.
Raises DataFormatError if the input string format hasn't been recognized.
"""
if date is None:
return None
parsed: datetime = dateparser.parse(date, settings={"RETURN_AS_TIMEZONE_AWARE": True})
if parsed is None:
raise DateFormatError(f"Invalid datetime value: {date}")
return parsed