gpt4 book ai didi

javascript - 如何在 python 3.4+ 中解码 JavaScript 响应?

转载 作者:行者123 更新时间:2023-12-03 05:13:53 25 4
gpt4 key购买 nike

我从网站收到此回复。我真的不知道如何解码它并获取我想要的信息。

这是 JavaScript 响应:

{header:{code:0,message:{title:"",detail:""}},body:{parameters:{},dataStores:{"kccjStore":{pageSize:100,pageNumber:1,recordCount:3,name:"kccjStore",rowSetName:"pojo_com.neusoft.education.sysu.xscj.xscjcx.model.KccjModel",order:"kclb asc",metaData:{"jxbmc":{dataType:12},"njzypm":{dataType:12},"xh":{dataType:12},"jxbh":{dataType:12},"sftg":{dataType:12},"zzcj":{dataType:12},"cjzt":{dataType:12},"bzw":{dataType:12},"class":{dataType:12},"xs":{dataType:12},"xq":{dataType:12},"jsxm":{dataType:12},"xnd":{dataType:12},"resource_id":{dataType:12},"jxbpm":{dataType:12},"jd":{dataType:12},"kch":{dataType:12},"kcywmc":{dataType:12},"kcmc":{dataType:12},"khfs":{dataType:12},"cjlcId":{dataType:12},"xf":{dataType:12},"kclb":{dataType:12},"zpcj":{dataType:12}},rowSet:{primary:[{"jxbpm":"79\/93","bzw":"00","cjzt":"2","cjlcId":"11895237815","kcywmc":"Mobile Information Engineering Training:Intermediate ","jxbh":"46000092161002","zpcj":"90","resource_id":"11895237815","xnd":"2016-2017","xq":"1","kch":"46000092","kcmc":"移动信息工程实训(中级)","kclb":"11","xf":"3.0","xs":"72.0","zzcj":"90","jd":"4.0","sftg":"1","xh":"14353379","njzypm":"304\/403","class":"class com.neusoft.education.sysu.xscj.xscjcx.model.KccjModel"},{"jxbpm":"74\/128","bzw":"00","cjzt":"2","cjlcId":"12825792491","kcywmc":"Database Systems Lab","jxbh":"46000085161003","jsxm":"桑应朋","khfs":"03","zpcj":"94","resource_id":"12825792491","xnd":"2016-2017","xq":"1","kch":"46000085","kcmc":"数据库系统实验","kclb":"21","xf":"1.0","xs":"36.0","zzcj":"94","jd":"4.4","sftg":"1","xh":"14353379","njzypm":"157\/403","class":"class com.neusoft.education.sysu.xscj.xscjcx.model.KccjModel"},{"jxbpm":"20\/167","bzw":"00","cjzt":"2","cjlcId":"12825622928","kcywmc":"Database Systems","jxbh":"46000084161001","jsxm":"桑应朋","khfs":"01","zpcj":"87","resource_id":"12825622928","xnd":"2016-2017","xq":"1","kch":"46000084","kcmc":"数据库系统","kclb":"21","xf":"2.0","xs":"36.0","zzcj":"87","jd":"3.7","sftg":"1","xh":"14353379","njzypm":"34\/403","class":"class com.neusoft.education.sysu.xscj.xscjcx.model.KccjModel"}]}}}}}

我正在使用 Python 3.4。下面是我的代码

html_doc = opener.open('http://wjw.sysu.edu.cn/api/score?year=2016-2017&term=1&pylb=01').read().decode('utf-8')

提前致谢!

——————————————————

我之前误以为是JSON文件,问了一个不好的问题。我对此感到抱歉。但谢谢你帮助我!希望你们中的一些人可以帮助我解决我的新问题!

最佳答案

您的输入存在一些问题:

  1. 您输入的大括号不平衡。您缺少左大括号,{
  2. JSON 要求所有键都使用双引号引起来。您的输入使用不同的语法,这是有效的 Javascript,但不是有效的 JSON。如果确实需要,您可以使用第三方包将此类对象解析为Python字典,例如 demjson .
>>> import demjson
>>> parsed = demjson.decode('{header:{code:0,message:{title:"",detail:""}}}')
>>> parsed
{u'header': {u'message': {u'detail': '', u'title': ''}, u'code': 0}}

话虽如此,您使用 json.loads 的最初直觉通常是正确的。如果您对输入有任何控制权(例如,如果它是您可以重写的 API 或脚本的输出),您应该重写它以输出严格的 JSON,使其可以通过以下方式解析: json.loads.

关于javascript - 如何在 python 3.4+ 中解码 JavaScript 响应?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41689107/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com