Преобразование строкового представления времени в дату в движке приложения - PullRequest
1 голос
/ 13 сентября 2011

В стандартном Python я могу преобразовать строковое представление времени в datetime, выполнив это:

date_string = u'Tue, 13 Sep 2011 02:38:59 GMT';
date_object = datetime.strptime(date_string, '%a, %d %b %Y %H:%M:%S %Z');

Это будет работать до тех пор, пока я не вызову то же самое через механизм приложений, где получаю ошибку:

time data did not match format:  data=2011-09-13 02:38:59  fmt=%a, %d %b %Y %H:%M:%S %Z

Как правильно преобразовать эту строку даты, чтобы получить представление даты и времени?

1 Ответ

1 голос
/ 13 сентября 2011

Ваше сообщение об ошибке указывает, что вы на самом деле не передаете Tue, 13 Sep 2011 02:38:59 GMT, а 2011-09-13 02:38:59.Вы уверены, что передаете правильные параметры в strptime?

Мой питон прекрасно работает для следующего:

datetime.strptime(u'Tue, 13 Sep 2011 02:38:59 GMT', "%a, %d %b %Y %H:%M:%S %Z")
# returns datetime.datetime(2011, 9, 13, 2, 38, 59)

Это также хорошо работает для меня:

from dateutil imoprt parser as dparser
dparser.parse("Tue, 13 Sep 2011 02:38:59 GMT")
# returns datetime.datetime(2011, 9, 13, 2, 38, 59, tzinfo=tzutc())
...