我如何parsingGoogle App Engine中的JSON?

我想parsing一个JSONstring到Google App Engine(python)下的一个对象。 你有什么build议? 编码/串化的东西也不错。 是你build议build立,还是我必须包括在我的应用程序库? 它安全吗? 谢谢。

考虑使用包含在GAE中的Django的json库 。

from django.utils import simplejson as json # load the object from a string obj = json.loads( string ) 

上面的链接有Django序列化器的例子,这里是simplejson文档的链接。

如果您正在查看存储Python类实例或对象(而不是列表,string,数字和字典的组合),那么您可能要查看一下pickle 。

我希望有帮助。

顺便提一句,要获得在GAE上运行的Django 1.0(而不是Django 0.96),您可以在本文中的main.py中使用以下调用:

 from google.appengine.dist import use_library use_library('django', '1.0') 

编辑:使用Python 2.7的Google App Engine 1.6.0中的本地JSON支持

从Google App Engine 1.6.0开始,可以通过在app.yaml添加runtime: python27来使用Python 2.7运行 runtime: python27 ,然后可以使用import json导入本机JSON库。

Google App Engine现在支持python 2.7。 如果使用Python 2.7,您可以执行以下操作:

 import json structured_dictionary = json.loads(string_received) 

包括simplejson库与您的应用程序?

如果您使用Python2.6或更高版本,我已经成功地使用了内置的json .load函数。 否则, simplejson工作在2.4没有依赖关系。

这是一个古老的问题,但我想我会给一个更新,更详细的答案。 对于现在在这里登陆的人来说,你几乎可以肯定地使用Python 2.6或更高版本,所以你可以使用Python 2的内置json模块(或者Python 3 ,因为Google最近在GAE上添加了对Python 3的支持)。 导入和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的回答。

再次,这里是Python 2的json模块的文档页面,这里是Python 3 。

看看json.org的python部分。 JSON的标准库支持从Python 2.6开始,我相信它比应用程序引擎提供的更新。 也许列出其他选项之一?