アトムフィードを解析しています。フィードに更新されたタグがあります。その値は2012-05-20T02:24:56Zです。この情報をこのようにテーブルに挿入します。
cursor.execute('Insert into Timing (LastUpdatedTime) Values(?)',
(testFeed.feed.updated,))
その後、テーブルから値を取得し、この方法で日時に変換します
cursor.execute("Select LastUpdatedTime from Timing")
lastUpdatedTime=datetime.strptime(list(cursor.fetchone())[0],
'%Y-%m-%dT%H:%M:%SZ').isoformat()
lastUpdatedTime の値は2012-05-20T02:24:56 です
testFeed.feed.updated の値を lastUpdatedTime と比較して、フィードに新しいエントリがあるかどうかを確認すると、比較によって理解できない出力が得られます。
print testFeed.feed.updated == lastUpdatedTime
これは偽を返します print testFeed.feed.updated > lastUpdatedTime
これは true を返します。比較時の変数の値: testFeed.feed.updated= 2012-05-20T02:24:56Z lastUpdatedTime= 2012-05-20T02:24:56
データベースの列はテキスト型です。
testFeed.feed.updated のタイプは unicode です
lastUpdatedTime の型は文字列です
Python 2.7.2を使用し、Ubuntu 11.10で作業しています
Unicode オブジェクトを datetime に変換した後に機能し
currentFeedTime=datetime.strptime(str(testfeed.feed.updated),'%Y-%m-%dT%H:%M:%SZ').isoformat()
、前回との比較を行います。