python如何全面解析接口返回数据
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,本篇内容介绍了"python如何全面解析接口返回数据"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!解
千家信息网最后更新 2026年11月02日python如何全面解析接口返回数据
本篇内容介绍了"python如何全面解析接口返回数据"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
解析接口返回数据
1、把json格式的数据
转换成单个{key,value}的形式,并把每个dict存入list
def parse(self,data): #解析json格式的数据 ,生成list for key, value in data.items(): if isinstance(value, dict): self.parse(value) elif isinstance(value, list): for k in range(len(value)): # 由于list没有items,所以一个一个遍历lis里面的值,然后针对list的每一个项 进行解析 self.parse(value[k]) else: self.L.append({key: value}) return self.L2、把 变成list的request 和expect一一对比
得知预期值和返回值是否是相符合
def compare(self,resjson,targjson): #比较两个数值返回,如果相等,则返回True,否则返回false self.init() res_list = self.parse(resjson) self.init() targ_list = self.parse(targjson) count = len(targ_list) while count: if targ_list[count - 1] in res_list: # list里面,成员运算符,in or not in count -=1 else: return False return True
3、测试一下看是否正确
if __name__ == "__main__": t = Tools() request = { "head": { "clientId": "12", "appUDID": "", "appVersion": "", "channelId": "", "innerMedia": "", "outerMedia": "", "subClientId": "h6", "origin": "", "test":[{"hahah":"haha"}] }, "body": { "userName": "your user name", "password": "password" } } expect = {"username":"your user name","password":"password"} # print(t.parse(request)) print(t.compare(request,expect))结果:返回True or False,因为username两边大小写不一致,所以返回为False
小结:这个parse加compare函数,就可以在接口返回结果时候,直接assert(),得出true or false
完整代码
class Tools: def __init__(self): self.L = [] def init(self): self.L = [] def parse(self,data): #解析json格式的数据 ,生成list for key, value in data.items(): if isinstance(value, dict): self.parse(value) elif isinstance(value, list): for k in range(len(value)): # 由于list没有items,所以一个一个遍历lis里面的值,然后针对list的每一个项 进行解析 self.parse(value[k]) else: self.L.append({key: value}) return self.L def compare(self,resjson,targjson): #比较两个数值返回,如果相等,则返回True,否则返回false self.init() res_list = self.parse(resjson) self.init() targ_list = self.parse(targjson) count = len(targ_list) while count: if targ_list[count - 1] in res_list: # list里面,成员运算符,in or not in count -=1 else: return False return Truepython请求接口,抓取返回的数据
代码如下
# 引入包import urllib2import jsonimport sys url = 'http://alisleepy.top' # 接口地址responseResult = urllib2.urlopen(url, None, timeout=2000)code = responseResult.getcode()print '接口状态码:' + str(code)if code != 200: sys.exit('request failed,please check interface is correct!') # 检查数据,是否符合预期data = json.loads(responseResult.read()) # 反序列化json数据print 'code码:' + str(data['code])print 'msg信息:' + str(data['msg'])"python如何全面解析接口返回数据"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
数据
接口
格式
两个
代码
内容
成员
数值
更多
知识
结果
运算符
生成
运算
实用
一致
学有所成
接下来
信息
函数
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
河南云网互联网络科技有限公司
互联网科技公司起名
中关村互联网 科技集团
广州百单互联网科技有限公司
互联网科技未来
奇酷互联网络科技公司
互联网高科技股票
无锡溥仪互联网科技有限公司
华脉科技工业互联网产品
互联网公司会议桌创意科技软装饰
互联网科技寓意
佳云科技和互联网广告
互联网为啥属于高科技
昊天互联网科技有限公司
互联网保险科技创业
本届互联网博览会上的黑科技
上海创道互联网络科技有限公司
玉溪新华互联网科技怎么选
三亚科技创新互联网基地
北京品多多互联网科技有限公司
南京欣网互联网络科技
互联网电商科技
高科技与互联网
佩信高科技互联网
中盈科技互联网信息有限公司
哈尔滨屹滨互联网科技有限公司
山东星卡互联网科技有限公司官网
工业互联网科技成果转化
科技互联网公司两年变化
保山浩联互联网科技有限公司