Я пытаюсь преобразовать столбец DATETIME из базы данных Oracle в строку ISO 8601, выполнив следующие действия:
from datetime import datetime
created_date_string = str(record.value['CREATION_DATE_UTC'])
created_date = datetime.strptime(created_date_string, "%a %b %d %H:%M:%S %Z %Y")
created_date_iso = created_date.isoformat()
Значение created_date_string
равно "Mon Sep 09 06:25:18 EDT 2019"
. При запуске этого кода я получаю следующее исключение:
ValueError: time data 'Mon Sep 09 06:25:18 EDT 2019' does not match format '%a %b %d %H:%M:%S %Z %Y'
Если я удаляю часовой пояс «EDT» из исходной строки и удаляю «% Z» из формата, он работает нормально. Как я могу создать строку ISO, которая будет хранить информацию о часовом поясе? У меня нет контроля над форматом формата даты из системы Oracle. Строка ISO должна быть сгенерирована для вставки в индекс Elasticsearch.