JSON文字列をGoogleApp Engine(python)でオブジェクトに解析したいと思います。何がお勧めですか?エンコード/文字列化するものもいいでしょう。組み込みをお勧めするものですか、それともアプリに含める必要のあるライブラリですか?安全ですか?ありがとう。
JSON文字列をGoogleApp Engine(python)でオブジェクトに解析したいと思います。何がお勧めですか?エンコード/文字列化するものもいいでしょう。組み込みをお勧めするものですか、それともアプリに含める必要のあるライブラリですか?安全ですか?ありがとう。
回答:
GAEに含まれているDjangoのjsonlibの使用を検討してください。
from django.utils import simplejson as json
# load the object from a string
obj = json.loads( string )
上記のリンクにはDjangoのシリアライザーの例があり、ここにsimplejsonのドキュメントへのリンクがあります。
(リスト、文字列、数値、辞書の構成ではなく)Pythonクラスのインスタンスまたはオブジェクトの格納を検討している場合は、pickleを検討することをお勧めします。
それがお役に立てば幸いです。
ちなみに、GAEで(Django0.96ではなく)Django 1.0を実行するには、この記事に従って、main.pyで次の呼び出しを使用できます。
from google.appengine.dist import use_library
use_library('django', '1.0')
Google App Engine 1.6.0以降、を追加することでPython 2.7ランタイムを使用でき、次に。を使用してネイティブJSONライブラリをインポートできます。runtime: python27
app.yaml
import json
simplejsonライブラリをアプリに含めますか?
これは古い質問ですが、更新された、より詳細な回答を提供したいと思いました。あなたは組み込みのJSONモジュールを使用することができますので、今ここに、それらの着陸のために、あなたはほぼ確実に、パイソン2.6以上を使用しているPythonの2のための(あるいはPythonの3のためにGAE上のPython 3のために、Googleのため、最近追加されたサポート)。インポートはと同じくらい簡単import json
です。jsonモジュールの使用方法の例を次に示します。
import json
# parse json_string into a dict
json_string = '{"key_one": "value_one", "key_two": 1234}'
json_dict = json.loads(json_string)
# json_dict: {u'key_two': 1234, u'key_one': u'value_one'}
# generate json from a dict
json_dict = {'key': 'value', 'key_two': 1234, 'key_three': True}
json_string = json.dumps(json_dict)
# json_string: '{"key_two": 1234, "key": "value", "key_three": true}'
古いバージョンのPythonを使用している場合は、@ Brian M.Huntの回答に固執してください。
ここでも、ここのためのJSONモジュールのドキュメントページではPython 2、ここでそれはのためにあるのPython 3。
あなたはのpython2.6以上を使用している場合、私は組み込みの成功を収めて使用してきたJSON .LOAD機能。それ以外の場合、simplejsonは依存関係なしで2.4で動作します。
json.orgのpythonセクションを見てください。JSONの標準ライブラリサポートはPython2.6から始まりました。これは、アプリエンジンが提供するものよりも新しいと思います。たぶん、リストされている他のオプションの1つですか?