返回数据类型为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