requests接口测试中json格式处理

本文对比了使用Python处理HTTP响应中.text与.json方法的区别,详细介绍了如何利用json库的dumps函数来美化输出,确保输出格式正确且易读。同时,针对GET请求返回非标准JSON格式的问题提供了解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

对比一下.text和.json的展示不同

import requests
url = "xxx"
data = {
	"xxx":"zzz",
	... ...
}
res = reqquests.post(url,data)
print(res.text)
print(res.json)

在这里插入图片描述
虽然json格式进行了重新的编译,但是依然没有一个格式化的格式
现在已经是一个json对象了,那么我们对json对象进行处理就需要json库

import json

然后我们这样处理一下好像可以打到我们的预期效果了
在这里插入图片描述
但是,其实不是特别完善,那么我们能不能对这样的一个接口进行完善性处理呢?答案是肯定的
根据json处理,成一下格式,但是需要转码
这里阐述一下,我们正常的json时已经转码,用dumps后,将json转为字符串的时候,他会序列化一下,就会以ascii码的形式输出出来,
在这里插入图片描述

res = requests.post(url=url,data=data) #post请求
json_res = res.json() # 结果转为json个格式输出
print(json.dumps(json_res,indent=4,ensure_ascii=False)) # dumps转化为字符串,并且设置4个缩进格式,并且不允许返回ascii码

在这里插入图片描述

这里我们的get请求的时候回返回.json失败了,因为get请求返回结果不是标准的json
在这里插入图片描述
遇到json格式错误的时候,就把.json换成.text看一看返回的是不是标准的json格式
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值