2010/06/05

[Google App Engine]djangoでJSONをパースする方法

前回、Google App Engine上で、HTTPリクエストを送信する方法について書きましたが、今日は、取得したコンテンツが、JSONだった場合にどうするのかについて書きたいと思います。

とても参考になったのは、Google App Engineで、外部にあるJSON形式のファイルを読み込むの記事なのですが、これを読んでとても気になったのは、GoogleAppEngineのUsing Templatesを読んでみると、下の方に、「django 0.96のリファレンスを参照して」と書かれており、0.96ってjsonサポートしていないじゃんということ。

何故だーっと悩みに悩みたどりついた答えが、ここのページに記載されている2009年9月3日にリリースしたVersion 1.2.5では、Django 1.1をサポートしていると書かれていたので、だからできるのかーっと納得。

さらに、Third-party Python LibrariesのDjangoを読むと、確かに、一番最初にリリースした当時は、0.96をサポートしていたのですが、現在では、デフォルトで1.0をサポートしているようなのです。

Django 0.96 was the latest when App Engine for Python was released, and remains the default in version 1 of the Python runtime to maintain compatibility with apps that use it.

via:Third-party Python Libraries:Django

というわけで、悩みが解決したので、実際のJSONのパースの方法ですが、

from django.utils import simplejson

#hogeはJSON
query = simplejson.loads(hoge)

あとは、上のquery変数は、ディクショナリ型になっているので、query["foo"]みたいな要領で各値を取得することができます。

ふーやっと、JSONのパース方法がわかったので、PhotoShareJSONデータをきちんと処理することができるぞと。

0 コメント:

コメントを投稿