TwitterBot on GAEのTwitterからのデータ取得をXMLからJSONにする

http://d.hatena.ne.jp/intheflight/20090613/p1
 リンク先の更新でTwitterから取得したデータをXMLパーサでパースして、データストアに格納するということをやっているわけだけど、こんな面倒なことしなくても、おれらにはJSONがあった! JSON使えばTwitterデータをパパッとデータストアに格納できることがわかったので、XMLをJSONに書き直しました。今回はその流れです。まずは、データモデルですが、それはそのまま流用できます。Twitterからのデータ取得にはJSONを指定します。

url = "http://twitter.com/statuses/mentions.json"

あとは取得したJSONデータをPythonの辞書に変換し、そこから必要なデータをデータストアに格納するという流れになります。めっちゃ簡単。変換処理にはsimplejsonを使います。GAEにはDjangoフレームワークが付属していて、その中にsimplejsonが含まれているので、最初に、

from django.utils import simplejson

そして、取得したJSONデータを変換して、データストアに格納です。

results = simplejson.loads(json_result.content);
for st in results:
  status = Status()
  status.id = st["id"]
  status.user = st["user"]["screen_name"]
  status.text = st["text"]
  status.created_at = self._change_date(st["created_at"])
  status.put()

簡単過ぎる。何気にGAEにsimplejsonって最強な気がします。