Многие общие читаемые человеком даты и времени могут быть проанализированы с использованием datetime.strptime()
, например:
'15 March 2019 13:00'
И я знаю несколько пакетов Python, которые анализируют «нечеткие» читаемые человеком даты и времени в объектах Python datetime,такие как dateparser и parsedatetime , которые могут анализировать строки, такие как:
'yesterday'
'next week'
Но есть ли библиотека Python, которая может анализировать обычные для человека datetime длительности в начальное и конечное datetime объекты.Например:
'5 March 2019 13:00-18:30'
'5 March 2019 1:00-5:30pm'
'15-18 March 2019'
'2nd to 22nd March 2019'
в:
[datetime.datetime(2019, 3, 5, 13, 0), datetime.datetime(2019, 3, 5, 18, 30)]
[datetime.datetime(2019, 3, 5, 13, 0), datetime.datetime(2019, 3, 5, 18, 30)]
[datetime.datetime(2019, 3, 15, 0, 0), datetime.datetime(2019, 3, 18, 0, 0)]
[datetime.datetime(2019, 3, 2, 0, 0), datetime.datetime(2019, 3, 22, 0, 0)]
или взять строку типа:
'15-17 March 2019'
и вернуть список включенных дат ?
[datetime.datetime(2019, 3, 15, 0, 0), datetime.datetime(2019, 3, 16, 0, 0), datetime.datetime(2019, 3, 17, 0, 0)]
Обратите внимание, что меня интересует синтаксический анализ определенных дат и времени, а не продолжительности без учета календаря, такой как '2 days'
или 'three weeks'
.