私はpython-twitterを使ってツイートの日付を取得し、time.strptime()
関数で解析しようとしています。インタラクティブに行うと、すべて正常に動作します。私は私のbashからプログラムを呼び出すと、私はValueError
は、(例えば)と言っ取得:time.strptime()とpython-twitterのエラー
time data u'Wed Aug 12 08:43:35 +0000 2009' does not match
format '%a %b %d %H:%M:%S +0000 %Y'
コードは次のようになります。上記の例外がスローされます
api = twitter.Api(username='username', password='pw')
user = api.GetUser(username)
latest = user.GetStatus()
date = latest.GetCreatedAt()
date_struct = time.strptime(date, '%a %b %d %H:%M:%S +0000 %Y')
を。
それは対話型シェル上で動作します:
>>> user = api.GetUser('username')
>>> latest = user.GetStatus()
>>> date = latest.GetCreatedAt()
>>> date
u'Wed Aug 12 08:15:10 +0000 2009'
>>>> struct = time.strptime(date, '%a %b %d %H:%M:%S +0000 %Y')
>>>> struct
time.struct_time(tm_year=2009, tm_mon=8, tm_mday=12, tm_hour=8, tm_min=15, tm_sec=10, tm_wday=2, tm_yday=224, tm_isdst=-1)
誰かなぜこれが起こっている任意のアイデア?
私はUbuntu 9.04、Python 2.6.2、python-twitter 0.6を使用しています。ユニコードのすべてのファイル。しようとする
おそらく、異なるバージョンのPythonを実行していますか? sys.versionの出力を、対話シェルとbashシェルのデフォルトインタプリタの両方と比較します。 – Cide
いいえ、対話シェルは "2.6.2(release26-maint、Apr 19 2009、01:56:41)\ n [GCC 4.3.3]"とBashは(Python --version) "Python 2.6.2"と答えています – dermatthias