dateutil.parserで日付文字列をパース

dateutil.parserで日付文字列を楽にパースできる。timezoneも解釈してくれる。

import pytz
from datetime import datetime
import dateutil.parser

date_string = "Wed, 24 Oct 2012 21:34:50 GMT"

# dateutil,parse.parse
d = dateutil.parser.parse('Wed, 24 Oct 2012 21:34:50 GMT')
print d
# => 2012-10-24 21:34:50+00:00
print d.tzname()
# => UTC

# timezoneの変換
d = d.astimezone(pytz.timezone('Asia/Tokyo')).replace(tzinfo=pytz.timezone('Asia/Tokyo'))
print d
# => 2012-10-25 06:34:50+09:00
print d.tzname()
# => CJT

# datetime.strptimeでparseした場合
d = datetime.strptime(date_string, '%a, %d %b %Y %H:%M:%S GMT' )
print d
# => 2012-10-24 21:34:50
print d.tzname()
# => None