python:解析requests返回的response(json格式)说明
程序员文章站
2022-06-03 13:04:11
我就废话不多说了,大家还是直接看代码吧!import requests, jsonr = requests.get('http://192.168.207.160:9000/api/qualityga...
我就废话不多说了,大家还是直接看代码吧!
import requests, json r = requests.get('http://192.168.207.160:9000/api/qualitygates/project_status?projectid=%s' % (p_uuid) ) state=json.loads(r.text).get('projectstatus').get('status')
返回如下:
{ "projectstatus": { "status": "error", "conditions": [{ "status": "error", "metrickey": "new_security_rating", "comparator": "gt", "periodindex": 1, "errorthreshold": "1", "actualvalue": "5" }, { "status": "error", "metrickey": "new_reliability_rating", "comparator": "gt", "periodindex": 1, "errorthreshold": "1", "actualvalue": "4" }, { "status": "ok", "metrickey": "new_maintainability_rating", "comparator": "gt", "periodindex": 1, "errorthreshold": "1", "actualvalue": "1" }, { "status": "error", "metrickey": "new_coverage", "comparator": "lt", "periodindex": 1, "errorthreshold": "80", "actualvalue": "0.0" }, { "status": "error", "metrickey": "new_duplicated_lines_density", "comparator": "gt", "periodindex": 1, "errorthreshold": "3", "actualvalue": "5.967688757006265" }], "periods": [{ "index": 1, "mode": "previous_version", "date": "2019-05-31t09:35:58+0800" }], "ignoredconditions": false } }
补充知识:使用python的requests库作接口测试——响应结果处理
在实际工作中,很多接口的响应都是json格式的数据,在测试中需要对其进行处理和分析。
设计到json数据处理的方法有两种:序列化和反序列化
python中序列化,简单讲就是将python的字典转换成json格式字符串,以便进行储存或者传输;
反序列化,简单讲就是将json格式字符串转换成python字典,用于对其进行分析和处理。
json和dict格式互转方法:
import json # 序列化成json字符串 d = {‘name':‘jod'} j = json.dumps(d) #反序列化成字典 print json.loads(j)
而在requests库中,不用json.loads方法进行反序列化,而是提供了响应对象的json方法,用来对json格式的响应体进行反序列化
比如:
r = requests.get(url)
r.json()
以上这篇python:解析requests返回的response(json格式)说明就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。