0
我有一些我需要處理的IIS(Internet信息服務)日誌,就像Apache Web日誌,如果你是一個Linux服務器的人。IIS日誌時間戳時區
的網絡日誌的開頭爲:
49.76.xx.xx - - [01/Jun/2015:00:01:08 -0500] "GET...
而且我很好奇的時間戳,[01/Jun/2015:00:01:08 -0500]
,是什麼0500在這個場景是什麼意思?是不是像時區或偏移量基於this python文檔?
這是我迄今所做的,但它不工作:
from datetime import datetime
text = "01/Jun/2015:00:01:08 +0500"
print datetime.strptime(text, '%d/%b/%Y:%H:%M:%S %z')
這裏是錯誤消息。
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-10-e243ceb157eb> in <module>()
1 from datetime import datetime
2 text = "01/Jun/2015:00:01:08 +0500"
----> 3 print datetime.strptime(text, '%d/%b/%Y:%H:%M:%S %z')
/opt/local/anaconda/lib/python2.7/_strptime.pyc in _strptime(data_string, format)
315 del err
316 raise ValueError("'%s' is a bad directive in format '%s'" %
--> 317 (bad_directive, format))
318 # IndexError only occurs when the format string is "%"
319 except IndexError:
ValueError: 'z' is a bad directive in format '%d/%b/%Y:%H:%M:%S %z'
'-0500'是*時區偏移*,這意味着這個特定的地方時間比UTC晚5個小時。不要將* offset *與* time zone *混淆,因爲許多時區會爲夏令時和其他異常更改其偏移量。另外,要小心 - 在一種情況下顯示「-0500」,在另一種情況下顯示「+ 0500」。彼此相距10小時。 –