strptimeのエラー2
あらすじ
- crochetでstrptimeの引数変えたらエラー
- 直接呼び出す分には問題無し
- Ubuntu 8.10のpython2.5.2で問題有。MacOS X 10.5.6のpython2.5.2では問題無し
toDate.py
#! /usr/bin/env python # -*- coding:utf-8 -*- import datetime def getLocalTime(timezoneName): if timezoneName == "JP": return 9 else: return 0 def toDate(date,str): from time import strptime dates = strptime(date,str) dt = datetime.datetime(*dates[0:7])+datetime.timedelta(hours=getLocalTime("JP")) return dt
toDateTest.py
#!/usr/bin/env python # -*- coding:utf-8 -*- import toDate,datetime date = "2008-02-24T06:39:37+00:00" apiDate = "Thu Jan 22 05:19:28 +0000 2009" apiFormat = "%a %b %d %H:%M:%S +0000 %Y" scrapingFormat = "%Y-%m-%dT%H:%M:%S+00:00" print toDate.toDate(apiDate,apiFormat) print datetime.datetime.today()
これを実行した限りでは
2009-01-22 14:19:28.000003
2009-01-25 10:22:29.493650
と出るのだけど、crochet.pyでimport toDateTestってやると
ValueError: time data did not match format: data=Thu Jan 22 05:19:28 +0000 2009 fmt=%a %b %d %H:%M:%S +0000 %Y
ってなる。
どっか環境変数のせいかね?でも手動でstrptime実装した方が早い気がしてきた。