Python深层解析json数据之JsonPath

接口自动化中,面对大量或深层次的JSON响应数据,使用JsonPath可以方便地提取值。JsonPath是一种用于解析多层嵌套JSON的工具,提供多种语言实现,通过简单的语法进行数据提取。在Python中,可以通过`pip install jsonpath`安装,然后用`jsonpath.jsonpath(response, '$..key_name')`获取值,其中`$`代表顶层,`..`用于模糊匹配。相比XPath,JsonPath结构清晰,匹配更简单。" 82503778,66157,5GNR资源网格与DMRS/PBCH/CSI-RS分析,"['5G通信', '无线通信', '5GNR技术', '信号处理', '网络资源管理']
摘要由CSDN通过智能技术生成

         我们在做接口自动化时,一般接口响应的都是json数据体,对响应数据进行提取使用或断言,当数据量很大或层级很深时,就会变得很麻烦,于是就可以用到jsonpath模块,解决json路径深取值难的问题。

一、 jsonpath介绍

用来解析多层嵌套的json数据;JsonPath 是一种信息抽取类库,是从JSON文档中抽取指定信息的工具,提供多种语言实现版本,包括:Javascript, Python, PHP 和 Java。

官网文档http://goessner.net/articles/JsonPath

二、安装使用

pip install jsonpath

import jsonpath

jp=jsonpath.jsonpath(response, '$..key_name')

“$”表示最外层的{},“..”表示模糊匹配,输出结果是list,当传入不存在的key_name时,程序会返回false

三、JsonPath与Xpath语法对比

Json结构清晰,可读性高,复杂度低,非常容易匹配,下表中对应了XPath的用法

四、案例

案例1:
import jsonpath


json_data1={
        "error_code": 0,
        "stu_info": [
                {
                        "id": 1001,
                        "name": "橙汁",
                        "sex": "女",
                        "age": 33,
                        "addr": "上海市浦东新区城南路500弄105号",
                        "grade": "天蝎座",
                        "phone": "18300000000",
                        "gold": 10896,
                      
  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王大力测试进阶之路

打赏博主喝瓶水吧!!!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值