嗨,我使用simplejson导入一些json然后解码以在django模板中使用,
这是解码的json:
{u'ServerID': 1, u'Cache': {u'CacheBusted': False, u'FromCache': True}, u'Result': [{u'Url': u'http://listen.grooveshark.com/playlist/Soul_Power/399134', u'Cache': {u'FromCache': True}, u'PlaylistID': u'399134', u'Name': u'Soul Power', u'ModifiedTime': u'1229427645'}, {u'Url': u'http://listen.grooveshark.com/playlist/4RK_(v.3)/491934', u'Cache': {u'FromCache': True}, u'PlaylistID': u'491934', u'Name': u'4RK (v.3)', u'ModifiedTime': u'1231028348'}, {u'Url': u'http://listen.grooveshark.com/playlist/My_Bands/3735842', u'Cache': {u'FromCache': True}, u'PlaylistID': u'3735842', u'Name': u'My Bands', u'ModifiedTime': u'1234384383'}, {u'Url': u'http://listen.grooveshark.com/playlist/Go_Move_Cruise/19255842', u'Cache': {u'FromCache': True}, u'PlaylistID': u'19255842', u'Name': u'Go Move Cruise', u'ModifiedTime': u'1259081222'}, {u'Url': u'http://listen.grooveshark.com/playlist/Goodnight/19854340', u'Cache': {u'FromCache': True}, u'PlaylistID': u'19854340', u'Name': u'Goodnight', u'ModifiedTime': u'1259457504'}, {u'Url': u"http://listen.grooveshark.com/playlist/Bottle_Poppin'_with_Friends_&_Scarfs/22398199", u'Cache': {u'FromCache': True}, u'PlaylistID': u'22398199', u'Name': u"Bottle Poppin' …
Run Code Online (Sandbox Code Playgroud) 是否有一个很好的教程解析python中的json属性?我希望能够解析"ok"字段的真实值.以及名为"client_ind_1"的索引.我不明白这个主题的python文档报道.如果有人可以向我解释或指出更好的资源,那就太棒了.
我的json字符串如下所示:
{
"ok": true,
"_shards": {
"total": 2,
"successful": 1,
"failed": 0
},
"indices": {
"client_ind_2": {
"index": {
"primary_size": "2.5mb",
"primary_size_in_bytes": 2710326,
"size": "2.5mb",
"size_in_bytes": 2710326
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
先感谢您.
我从下面有一个下面的JSON字符串我想在JSON字符串中查找/搜索条件.
1).查找存在的键数.2).获取给定键的值(如果我们有数组)
{
"store": {
"book": [
{
"category": "reference",
"author": "Nigel Rees",
"title": "Sayings of the Century",
"price": 8.95
},
{
"category": "fiction",
"author": "Evelyn Waugh",
"title": "Sword of Honour",
"price": 12.99
},
{
"category": "fiction",
"author": "Herman Melville",
"title": "Moby Dick",
"isbn": "0-553-21311-3",
"price": 8.99
},
{
"category": "fiction",
"author": "J. R. R. Tolkien",
"title": "The Lord of the Rings",
"isbn": "0-395-19395-8",
"price": 22.99
}
],
"bicycle": {
"color": "red",
"price": 19.95
}
},
"expensive": 10
}
Run Code Online (Sandbox Code Playgroud)
我正在寻找像Groovy …
我使用simplejson将json字符串反序列化为python对象.我有一个自定义编写的object_hook,负责将json反序列化回我的域对象.
问题是,当我的json字符串很大时(即服务器以json字符串的形式返回大约800K域对象),我的python反序列化器花了将近10分钟来反序列化它们.
我进一步深入研究它看起来像simplejson,因为它没有做太多工作,而是将所有内容委托给object_hook.我尝试优化我的object_hook,但这也没有提高我的性能.(我几乎没有提高1分钟)
我的问题是,我们是否有任何其他标准框架经过优化以处理大量数据集,或者是否有一种方法可以利用框架的功能而不是在object_hook级别执行所有操作.
我看到没有object_hook,框架只返回一个字典列表,而不是域对象列表.
这里的任何指针都很有用.
仅供参考我使用的是simplejson版本3.7.2
这是我的示例_object_hook:
def _object_hook(dct):
if '@CLASS' in dct: # server sends domain objects with this @CLASS
clsname = dct['@CLASS']
# This is like Class.forName (This imports the module and gives the class)
cls = get_class(clsname)
# As my server is in java, I convert the attributes to python as per python naming convention.
dct = dict( (convert_java_name_to_python(k), dct[k]) for k in dct.keys())
if cls != None:
obj_key = None
if "@uuid"in dct
obj_key = …
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用Simple JSON将此字符串转换为JSON:
"{\"objects\":[{\"id\":1,\"title\":\"Book\",\"position_x\":0,\"position_y\":0,\"position_z\":0,\"rotation_x\":0,\"rotation_y\":0,\"rotation_z\":0,\"created\":\"2016-09-21T14:22:22.817Z\"},{\"id\":2,\"title\":\"Apple\",\"position_x\":0,\"position_y\":0,\"position_z\":0,\"rotation_x\":0,\"rotation_y\":0,\"rotation_z\":0,\"created\":\"2016-09-21T14:22:52.368Z\"}]}"
Run Code Online (Sandbox Code Playgroud)
不幸的是,Visual Studio似乎没有交互式调试控制台.就像在一起,将调试器放在一行上,然后在实时交互式控制台中插入代码的那一部分.否则,我将能够尝试使用SimpleJSON的库,并了解如何使其工作.无论如何,如果我错了,请纠正我!
虽然那是不可能的,但有人会知道如何实现这一目标吗?我试过这个:
JSONData jsonData = new JSONData(my_json_string);
Run Code Online (Sandbox Code Playgroud)
但是,它会更多地转义字符串并保持字符串:
"\"{\\\"objects\\\":[{\\\"id\\\":1,\\\"title\\\":\\\"Book\\\",\\\"position_x\\\":0,\\\"position_y\\\":0,\\\"position_z\\\":0,\\\"rotation_x\\\":0,\\\"rotation_y\\\":0,\\\"rotation_z\\\":0,\\\"created\\\":\\\"2016-09-21T14:22:22.817Z\\\...
Run Code Online (Sandbox Code Playgroud)
我是C#的新手,但我很惊讶C#没有任何原生内容可以解析JSON更易于访问的内容.有吗?
我正在尝试使用Python获取给定主题标签的Twitter API搜索结果,但是我遇到了"无JSON对象可能被解码"的错误.我不得不在URL的末尾添加额外的%以防止字符串格式错误.这个JSON错误可能与额外的%相关,还是由其他原因造成的?任何建议将不胜感激.
一个片段:
import simplejson
import urllib2
def search_twitter(quoted_search_term):
url = "http://search.twitter.com/search.json?callback=twitterSearch&q=%%23%s" % quoted_search_term
f = urllib2.urlopen(url)
json = simplejson.load(f)
return json
Run Code Online (Sandbox Code Playgroud) 我正在学习如何使用simplejson解码JSON文件.但我遭遇了"无效\逃脱"错误.这是代码
import simplejson as json
def main():
json.loads(r'{"test":"\x27"}')
if __name__ == '__main__':
main()
Run Code Online (Sandbox Code Playgroud)
这是错误信息
Traceback (most recent call last):
File "hello_world.py", line 7, in <module>
main()
File "hello_world.py", line 4, in main
json.loads(r'{"test":"\x27"}')
File "C:\Users\zhangkai\python\simplejson\__init__.py", line 307, in loads
return _default_decoder.decode(s)
File "C:\Users\zhangkai\python\simplejson\decoder.py", line 335, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "C:\Users\zhangkai\python\simplejson\decoder.py", line 351, in raw_decode
obj, end = self.scan_once(s, idx)
File "C:\Users\zhangkai\python\simplejson\scanner.py", line 36, in _scan_once
return parse_object((string, idx + 1), encoding, strict, _scan_once, object_
hook) …
Run Code Online (Sandbox Code Playgroud) 我有一个像这样定义的类
class A:
def __init__(self):
self.item1 = None
def __repr__(self):
return str(self.__dict__)
Run Code Online (Sandbox Code Playgroud)
当我做:
>>> import simplejson
>>> myA = A()
>>> simplejson.dumps(myA)
TypeError: {'item1': None} is not JSON serializable
Run Code Online (Sandbox Code Playgroud)
我找不到原因.
我是否需要向A添加任何特定方法以使simplejson序列化我的类对象?
我有兴趣simplejson.loads()
成功解析以下内容:
{foo:3}
Run Code Online (Sandbox Code Playgroud)
它抛出一句JSONDecodeError
"期待财产名称",但实际上它说"我需要在我的财产名称周围加双引号".这对我的用例很烦人,我更喜欢不太严格的行为.我已经阅读了文档,但除了制作我自己的解码器类之外,我没有看到任何明显改变这种行为的东西.
我正在尝试在OpenShift上安装python包,但我看到关于最佳方法的页面缺乏.有人可以建议最好的方式来说oauth2
和simplejson
.我已经尝试将这些包含在内setup.py
,但我不知道这些是否实际可用,或者我必须上传并指向路径.我怎样才能做到这一点?
simplejson ×10
python ×8
json ×5
django ×2
c# ×1
escaping ×1
java ×1
loops ×1
openshift ×1
packages ×1
performance ×1
python-2.7 ×1
rest-assured ×1
twitter ×1