#python
#python
Вопрос:
Теперь мне нужно разобрать строку в datetime в Python3, это мой код:
parse_time = time.strptime(pub_time, '%b %d %Y %I:%M%p')
formatted_timestamp = time.mktime(parse_time)
теперь я обнаруживаю ошибку:
time data '2020-08-02T08:58:01.000Z' does not match format '%b %d %Y %I:%M%p'
и теперь, что я должен сделать, чтобы это исправить? тогда pub_time
, возможно, у меня другой формат синтаксического анализа из Интернета, что мне делать, чтобы сделать его автоматическим набором с другим форматом. Лучше всего автоматически определять формат времени другого типа и стандартизировать его в одну сторону.
Потому что я действительно не знал, в каком формате будет возвращен веб-контент. если бы он мог автоматически определять формат и конвертировать, поэтому мне не нужно было писать какое-либо отображение или код dectect.
Ответ №1:
использование maya lib может помочь:
import maya
date_array = [
'2018-06-29 08:15:27.243860',
'Jun 28 2018 7:40AM',
'Jun 28 2018 at 7:40AM',
'September 18, 2017, 22:19:55',
'Sun, 05/12/1999, 12:30PM',
'Mon, 21 March, 2015',
'2018-03-12T10:12:45Z',
'2018-06-29 17:08:00.586525 00:00',
'2018-06-29 17:08:00.586525 05:00',
'Tuesday , 6th September, 2017 at 4:30pm'
]
for date in date_array:
print('Parsing: ' date)
dt = maya.parse(date).datetime()
print(dt)
print(dt.date())
print(dt.time())
print(dt.tzinfo)
Комментарии:
1. При рекомендации стороннего модуля обычно указывается ссылка на указанный модуль.
2. сегодня я просто нахожу способ решить эту проблему, возможно, помочь другим, если у них такая же проблема. Я спросил в то же время, я постараюсь разобраться и решить сам. @PythonMaster202