广告
返回顶部
首页 > 资讯 > 后端开发 > Python >解析python中的jsonpath提取器
  • 352
分享到

解析python中的jsonpath提取器

2024-04-02 19:04:59 352人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

目录为什么要用JSONpathjsonpath的语法jsonpath 解析使用示例为什么要用jsonpath 就跟为什么要用xpath一样,jsonpath的设计灵感来源于xpath

为什么要用jsonpath

就跟为什么要用xpath一样,jsonpath的设计灵感来源于xpath。一个强大的json数据提取工具。让用户不用编写脚本就可以提取到相应的json数据。

jsonpath的语法

jsonpath可以什么这两种模式来检索数据:
以点为分隔
$.store.book[0].title
$.store.book[0,1] #可以取到第一个和第二个book值
$.store.book[*].title #可以取到所的的book值
以中括号为分隔
$['store']['book'][0]['title']
对于输入.路径,内中路径将始终使用更通用的中括号模式。 (我猜是因为jsonpath在python中是dict,访问方式刚好是用中括号)
还支持[start:end:step]模式
"$.store.book[0:3:2].title" #和Python中的range步长计算是一致的
@符号表达式:即可以用来代表长度,也可以用来代表name。
$.store.book[(@.length-1)].title #取到最后一个book的title
$.store.book[?(@.price < 10)].title #取到价格小于10的书的title

jsonpath 解析

接下来讲一个非常强大并且方便的 jsonpath 专门用于 json 解析,解决路径深的老大难问题!
先安装依赖包

pip install jsonpath

学习jsonpath 不得不提到xpath,这两者之间的语法是差不多的

XpathJSONPath描述
/$跟节点
.@现行节点
/. or []取子节点
..n/a取父节点 JsonPath不支持
//..相对节点 就是不管位置,选择所有符合条件的条件
  • |* |匹配所有元素节点

[] |[] |迭代器标示(可以在里面做简单的迭代操作,如数组下标,根据内容选值等)
&#124 |[,] |支持迭代器中做多选
[] |?() |支持过滤操作
n/a |() |支持表达式计算
() |n/a |分组,JsonPath不支持

使用示例

$是查找的根节点,传参数是python的dict 类型,当查找到的时候返回一个list结果,查找失败的时候返回 False.

import jsonpath
result = {
    "code": 0,
    "data": [
        {
            "age": 20,
            "create_time": "2021-09-15",
            "id": 1,
            "mail": "2833479@qq.com",
            "name": "yoyo",
            "sex": "M"
        },
        {
            "age": 21,
            "create_time": "2021-09-16",
            "id": 2,
            "mail": "12344@qq.com",
            "name": "yoyo111",
            "sex": "M"
        }
    ],
    "msg": "success!"
}
msg = jsonpath.jsonpath(result, '$.msg')
print(msg)   # 输出结果 ['success!']
names = jsonpath.jsonpath(result, '$..name')
print(names)   # 输出结果 ['yoyo', 'yoyo111']
no = jsonpath.jsonpath(result, '$..yoyo')
print(no)   # 找不到是结果是 False

这样就可以不用管层级结构也能取值了。

到此这篇关于python的jsonpath 提取器的文章就介绍到这了,更多相关python jsonpath 提取器内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: 解析python中的jsonpath提取器

本文链接: https://www.lsjlt.com/news/162849.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 解析python中的jsonpath提取器
    目录为什么要用jsonpathjsonpath的语法jsonpath 解析使用示例为什么要用jsonpath 就跟为什么要用xpath一样,jsonpath的设计灵感来源于xpath...
    99+
    2022-11-12
  • python中的jsonpath提取器怎么用
    这篇“python中的jsonpath提取器怎么用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“python中的jsonpa...
    99+
    2023-06-26
  • Python中JsonPath提取器和正则提取器怎么使用
    这篇文章主要介绍了Python中JsonPath提取器和正则提取器怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python中JsonPath提取器和正则提取器怎么使用文章都会有所收获,下面我们一起来看...
    99+
    2023-07-05
  • Python爬虫10-页面解析数据提取思
    GitHub代码练习地址:正则1:https://github.com/Neo-ML/PythonPractice/blob/master/SpiderPrac15_RE1.py           正则2:match、search、fi...
    99+
    2023-01-31
    爬虫 页面 数据
  • 在 Python 中读取 gzip 文件的过程解析
    目录Python 中的 gzip 模块压缩文件的重要性在 Python 中使用 gzip 压缩文件使用 gzip 模块时的数据添加在 Python 中读取 gzip 文件在 Pyth...
    99+
    2023-05-19
    Python读取 gzip 文件 Python gzip 文件
  • python 提取视频中的音频工具类详解
    前言 利用Python的ffmpy库提取视频中的音频。本文提供工具类代码。 环境依赖 需要安装ffmpy,安装指令: pip install ffmpy -i https:/...
    99+
    2022-11-12
  • python之pyAudioAnalysis:音频特征提取分析文档示例详解
    PyAudioAnalysis是一个开源的Python库,用于从音频文件中提取特征并进行分析。它提供了一系列音频处理函数,可以帮助开发者实现音频分类、情感识别、语音分析等多种任务。在本文中,我们将详细介绍如何使用PyAudioAnalysi...
    99+
    2023-10-23
    python 音视频 开发语言 pyAudioAnalysis
  • Python基于Pytorch特征图提取的示例分析
    这篇文章给大家分享的是有关Python基于Pytorch特征图提取的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。简述为了方便理解卷积神经网络的运行过程,需要对卷积神经网络的运行结果进行可视化的展示。大致...
    99+
    2023-06-29
  • Python中提取人脸特征的三种方法详解
    目录1.直接使用dlib2.使用深度学习方法查找人脸,dlib提取特征3.使用insightface提取人脸特征安装InsightFace提取特征1.直接使用dlib 安装dlib方...
    99+
    2022-11-11
  • java怎么从地址串中解析提取省市区
    这篇文章主要讲解了“java怎么从地址串中解析提取省市区”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“java怎么从地址串中解析提取省市区”吧!废话不多说 直接上代码:package&nbs...
    99+
    2023-07-02
  • 深入解析opencv骨架提取的算法步骤
    目录前言一.算法步骤1.算法步骤2.分析二.代码实现1.预处理2. 骨架提取实现前言 个人感觉骨架提取提取的就是开运算过程的不可逆。 一.算法步骤 1.算法步骤 首先上一下比较官方的...
    99+
    2022-11-10
  • 爬虫解析提取数据的方法有哪些
    本篇文章为大家展示了爬虫解析提取数据的方法有哪些,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。 一、分析网页以经典的爬取豆瓣电影 Top250 信息为例。每条电影信息在 ol class ...
    99+
    2023-06-15
  • python 中的 return 解析
    return 语句用于退出函数,向调用方返回一个表达式。执行到 return 语句时,会退出函数,return 之后的语句不再执行。 如: def my_print(x):     ...
    99+
    2022-11-13
  • Python解析器的解析过程是怎样的
    今天就跟大家聊聊有关Python解析器的解析过程是怎样的,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。首先先让大家看一下Python解析器的全流程:我们先用编辑器编写好源代码,保存成...
    99+
    2023-06-17
  • 【Python】解析Python中的条件
    1.if语句 if语句有好几种格式,比如: if condition: statement 使用 if ... else ...: if condition: statement(1) else: state...
    99+
    2023-01-31
    条件 Python
  • python怎么提取字典中的数据
    在Python中,可以使用索引或者get()方法来提取字典中的数据。以下是两种常见的方法:1. 使用索引:可以使用字典的键来访问对应...
    99+
    2023-09-20
    python
  • python中的opencv 图像分割与提取
    目录图像分割与提取用分水岭算法实现图像分割与提取算法原理相关函数介绍分水岭算法图像分割实例交互式前景提取图像分割与提取 图像中将前景对象作为目标图像分割或者提取出来。对背景本身并无兴...
    99+
    2022-11-11
  • Python实现提取语句中的人名
    目录前言环境依赖代码验证一下总结前言 本文提供将语句中的人名提取出来的工具方法,可以拿去直接使用。 环境依赖 需要安装两个库,其实一个也可以,但是我这边准备了两个库做个比较。 安装命...
    99+
    2022-11-13
  • python怎么提取图片中的文字
    要提取图片中的文字,可以使用Python的第三方库tesseract-ocr。Tesseract是一个开源的OCR引擎,可以识别多种...
    99+
    2023-08-12
    python
  • python怎么提取文字中的数字
    你可以使用正则表达式或者循环结构来提取文字中的数字。方法一:使用正则表达式```pythonimport retext = "hel...
    99+
    2023-08-12
    python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作