加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

Python--jsonpath

发布时间:2020-12-20 12:58:27 所属栏目:Python 来源:网络整理
导读:JsonPath是一种信息抽取类库,是从JSON文档中抽取指定信息的工具,提供多种原因实现保本:JavaScript/Python/PHP和Java。 使用方法如: import jsonpath res=jsonpath.jsonpath(dic_name,‘$..key_name‘) #嵌套n层也能取到所有key_name信息,其中:“$”表示

JsonPath是一种信息抽取类库,是从JSON文档中抽取指定信息的工具,提供多种原因实现保本:JavaScript/Python/PHP和Java。

使用方法如:

import jsonpath
res=jsonpath.jsonpath(dic_name,‘$..key_name‘)
#嵌套n层也能取到所有key_name信息,其中:“$”表示最外层的{},“..”表示模糊匹配,当传入不存在的key_name时,程序会返回false

安装方法:pip install jsonpath
??? ?
官方文档:http://goessner.net/articles/JsonPath

d={
        "error_code": 0,"stu_info": [
                {
                        "id": 2059,"name": "小白","sex": "","age": 28,"addr": "河南省济源市北海大道32号","grade": "天蝎座","phone": "18378309272","gold": 10896,"info":{
                            "card":434345432,"bank_name":中国银行
                        }

                },{
                        "id": 2067,"name": "小黑","phone": "12345678915","gold": 100
                }
        ]
}

res= d["stu_info"][1][name] #取某个学生姓名的原始方法:通过查找字典中的key以及list方法中的下标索引
print(res) #输出结果是:小黑

import jsonpath
res1=jsonpath.jsonpath(d,$..name) #嵌套n层也能取到所有学生姓名信息,$表示最外层的{},..表示模糊匹配
print(res1) #输出结果是list:[‘小白‘,‘小黑‘]

res2= jsonpath.jsonpath(d,$..bank_name)
print(res2) #输出结果是list:[‘中国银行‘]

res3=jsonpath.jsonpath(d,$..name123) #当传入不存在的key(name)时,返回False
print(res3) #输出结果是:False

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读