Вы должны прочитать файл как Unicode, а затем преобразовать его в формат даты и времени.
from datetime import datetime
f = open(LogFilePath, 'r', encoding='utf-8')
# Read first line of log file and remove '\n' from end of it
Log_DateTime = f.readline()[:-1]
Вы можете определить формат даты и времени следующим образом:
fmt = "%Y-%m-%d %H:%M:%S.%f"
Но некоторые языки программирования, такие как C #, не поддерживают его легко, поэтому вы можете изменить его на:
fmt = "%Y-%m-%d %H:%M:%S"
Или вы можете использовать следующим образом (для удовлетворения.% F):
Log_DateTime = Log_DateTime + '.000000'
Если у вас есть нераспознанный символ (символ Unicode), вы также должны удалить его.
# Removing an unrecognized symbol at the first of line (first character)
Log_DateTime = Log_DateTime[1:] + '.000000'
В конце вы должны преобразовать строковую дату-время в реальный формат даты-времени:
Log_DateTime = datetime.datetime.strptime(Log_DateTime, fmt)
Current_Datetime = datetime.datetime.now() # Default format is '%Y-%m-%d %H:%M:%S.%f'
# Calculate different between that two datetime and do suitable actions
Current_Log_Diff = (Current_Datetime - Log_DateTime).total_seconds()