返回数据类型为json,提取数据的方法
返回数据中提取数据的方法
比如下面的案例是,取店铺名称
接口返回数据如下:
{"Code":0,"Msg":"ok","Data":{"StoreName":"小贝书屋",
"StoreLogo":"xkdnewyun/systemfile/images/100e478a75754c6f9237cd25e5874ca1.jpg","Contacts":"小贝书屋",
"TelPhone":"18674731640","Introduction":"","IndustryFirstId":"21","IndustryFirst":"亲子",
"IndustrySecondId":"2112","IndustrySecond":"亲子购物","AllProductNum":2,"LatestNum":1},"TraceFlag":null}
取其中“StoreName”值“小贝书屋”的方法和步骤如下
1、首先ipmort json
2、接口返回的数据
r = requests.get(url,data=data,headers= header) #请求url,获得返回的数据信息 text = r.text print(text) #获得的返回数据使用text方法进行获取
3、将响应内容转换为json对象
jsonobj = json.loads(text)#将响应内容转换为Json对象
4、从json对象内取出需要的内容
toCntPercent = jsonobj['Data']['StoreName'] # 从Json对象获取想要的内容
整个过程的代码
打印print(toCntPercent)
打印print(toCntPercent)
如果返回的是一个list数据,则取出数据的方式又有些变化
比如取出下图id
脚本的写法改为:
toCntPercent = jsonobj['Data']['DataList'][0]['Id'] # 从Json对象获取想要的内容
注意id前面的0,代表list里面的第一个id值(list里面可能存在两个id关键字)
或者取多重括号里的数据
listItemId = jsonobj['Data']['DataList'][0]['OrderItem'][0]['Id']
当然,也可以使用正则表达式提取,参考https://www.cnblogs.com/becks/p/14494929.html
另外一种方案:更加简洁,以json格式输出,提取出数据
import requests url = f"https://fabiaoqing.com/jichou/randomrj.html" res = requests.post(url=url).json() a = res['tgrj'] + '\n' print(a)
还有一种情况,返回值如下图
需要提取里面的文字,图中内容返回值在'words_result'中
for item in result['words_result']: print(item['words'])
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· Ollama——大语言模型本地部署的极速利器
· 使用C#创建一个MCP客户端
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现