task_script_utils.datetime_parser.parser module#

class DatetimeParser(formats: Sequence[str] = (), tz_dict: Dict[str, str] | None = None, fold: int | None = None, require_unambiguous_formats: bool = True)[source]#

Bases: object

Parse datetimes and convert them to TetraScience string format

parse(datetime_raw_str: str) TSDatetime[source]#

Parse a datetime string to TSDatetime

Parameters:

datetime_raw_str – Raw datetime string to be parsed

Raises:
  • Raises DatetimeParserError or a derived exception when datetime_raw_str

  • cannot be parsed to a TSDatetime object.

to_tsformat(datetime_raw_str: str) str | None[source]#

Parse a datetime string to a tetrascience formatted datetime string.

If the parser does not have any formats configured, None is returned. Otherwise the datetime string is parsed and the formatted string returned.

Raises:
  • Raises DatetimeParserError or a derived exception when datetime_raw_str

  • cannot be parsed to a TSDatetime object.

Returns:

Tetrascience formatted datetime string or None.

parse(datetime_raw_str: str, formats: ~typing.Sequence[str] = (), config: ~task_script_utils.datetime_parser.datetime_config.DatetimeConfig = <task_script_utils.datetime_parser.datetime_config.DatetimeConfig object>) TSDatetime[source]#

Warning: Deprecated function. Use DatetimeParser.parse from task_script_utils.datetime_parser instead to parse a datetime string to TSDatetime.

Parse datetime_str and construct a TSDatetime Object

Parameters:
  • datetime_raw_str (str) – Raw datetime string

  • formats (Sequence[str], optional) – List of possible datetime

  • tokens. (formats. These datetime formats must be built using pendulum datetime) –

  • tuple. (Defaults to empty) –

  • config (DatetimeConfig, optional) – Datetime Configuration.

  • DEFAULT_DATETIME_CONFIG. (Defaults to) –

Raises:

DatetimeParserError – When datetime_str can be parsed into TSDatetime object

Returns:

TSDatetime