AI-数据采集-数据提取-jsonpath模块(七)

举报
咔吧咔吧 发表于 2020/10/28 11:49:10 2020/10/28
【摘要】 数据提取-jsonpath模块 知识点 ● jsonpath模块的使用场景 ● jsonpath模块的使用 1. jsonpath模块的使用场景 如果有一个多层嵌套的复杂字典,想要根据key和下标来批量提取value,这是比较困难的。jsonpath模块就能解决这个痛点。 jsonpath可以按照key对python字典进行...

    数据提取-jsonpath模块

        知识点

        ● jsonpath模块的使用场景

        ● jsonpath模块的使用

    1. jsonpath模块的使用场景

    如果有一个多层嵌套的复杂字典,想要根据key和下标来批量提取value,这是比较困难的。jsonpath模块就能解决这个痛点。

    jsonpath可以按照key对python字典进行批量数据提取


    

    2. jsonpath模块的使用方法

        2.1 jsonpath模块的安装

        jsonpath是第三方模块,需要额外安装

pip install jsonpath

       2.2 jsonpath模块提取数据的方法

from jsonpath import jsonpath
ret = jsonpath(a, 'jsonpath语法规则字符串')

        

       2.3 jsonpath语法规则

    image.png


    2.4 jsonpath使用示例

book_dict = { 
  "store": {
    "book": [ 
      { "category": "reference",
        "author": "Nigel Rees",
        "title": "Sayings of the Century",
        "price": 8.95
      },
      { "category": "fiction",
        "author": "Evelyn Waugh",
        "title": "Sword of Honour",
        "price": 12.99
      },
      { "category": "fiction",
        "author": "Herman Melville",
        "title": "Moby Dick",
        "isbn": "0-553-21311-3",
        "price": 8.99
      },
      { "category": "fiction",
        "author": "J. R. R. Tolkien",
        "title": "The Lord of the Rings",
        "isbn": "0-395-19395-8",
        "price": 22.99
      }
    ],
    "bicycle": {
      "color": "red",
      "price": 19.95
    }
  }
}

    python代码解析

from jsonpath import jsonpath

# 返回列表,如果取不到将返回False
print(jsonpath(book_dict, '$..author'))

    

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。