返回顶部
首页 > 资讯 > 后端开发 > 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://lsjlt.com/news/162849.html(转载时请注明来源链接)

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

猜你喜欢
  • 解析python中的jsonpath提取器
    目录为什么要用jsonpathjsonpath的语法jsonpath 解析使用示例为什么要用jsonpath 就跟为什么要用xpath一样,jsonpath的设计灵感来源于xpath...
    99+
    2024-04-02
  • python中的jsonpath提取器怎么用
    这篇“python中的jsonpath提取器怎么用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“python中的jsonpa...
    99+
    2023-06-26
  • Python中JsonPath提取器和正则提取器怎么使用
    这篇文章主要介绍了Python中JsonPath提取器和正则提取器怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python中JsonPath提取器和正则提取器怎么使用文章都会有所收获,下面我们一起来看...
    99+
    2023-07-05
  • python-json校验-jsonpath解析
    目录背景表示法jsonpath的语法示例实战背景 在进行接口自动化测试的时候,对响应结果进行校验,基本上都是对json数据的校验,响应内容十分复杂,当然验证也是一个很庞大的工程 ,不...
    99+
    2022-11-21
    python json校验 python json校验 jsonpath python json
  • Python爬虫10-页面解析数据提取思
    GitHub代码练习地址:正则1:https://github.com/Neo-ML/PythonPractice/blob/master/SpiderPrac15_RE1.py           正则2:match、search、fi...
    99+
    2023-01-31
    爬虫 页面 数据
  • Python数据分析:从数据中提取价值
    背景 数据已渗透到我们生活的各个层面,从智能传感器到庞大数据库。从这些数据中提取有用信息已变得至关避要,以帮助我们制定明智的决策、提升运营效率和创造创新洞察。使用诸如 Pandas、NumPy 等库的编程语言(如:python)扮演着关...
    99+
    2024-02-17
    数据科学 机器语言 数据挖掘 数据可视化
  • python 提取视频中的音频工具类详解
    前言 利用Python的ffmpy库提取视频中的音频。本文提供工具类代码。 环境依赖 需要安装ffmpy,安装指令: pip install ffmpy -i https:/...
    99+
    2024-04-02
  • python文件数据分析治理提取
    目录前提提要要求思路代码运行结果分析1)读取文件2)读取数据3)数据整理4)正则表达式匹配外加数据去重6)数据导出保存前提提要 python2.0有无法直接读取中文路径的问题,需要另...
    99+
    2024-04-02
  • sqlserver怎么解析json提取数据
    在SQL Server中解析JSON数据并提取数据,可以使用内置的JSON函数和方法。以下是一些常用的JSON函数和方法: JSO...
    99+
    2024-04-12
    sqlserver json
  • 在 Python 中读取 gzip 文件的过程解析
    目录Python 中的 gzip 模块压缩文件的重要性在 Python 中使用 gzip 压缩文件使用 gzip 模块时的数据添加在 Python 中读取 gzip 文件在 Pyth...
    99+
    2023-05-19
    Python读取 gzip 文件 Python gzip 文件
  • Python中提取人脸特征的三种方法详解
    目录1.直接使用dlib2.使用深度学习方法查找人脸,dlib提取特征3.使用insightface提取人脸特征安装InsightFace提取特征1.直接使用dlib 安装dlib方...
    99+
    2024-04-02
  • Python基于Pytorch特征图提取的示例分析
    这篇文章给大家分享的是有关Python基于Pytorch特征图提取的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。简述为了方便理解卷积神经网络的运行过程,需要对卷积神经网络的运行结果进行可视化的展示。大致...
    99+
    2023-06-29
  • 服务器日志分析的魔力:从数据中提取有价值的见解
    识别性能瓶颈 服务器日志可以帮助我们识别网站或应用程序中存在的性能问题。通过分析响应时间、请求速率和资源使用情况,我们可以确定导致缓慢响应或其他性能问题的根源。常见的方法包括: 识别缓慢的请求:确定响应时间超过预定义阈值的请求,以深入调...
    99+
    2024-04-02
  • python中的opencv 图像分割与提取
    目录图像分割与提取用分水岭算法实现图像分割与提取算法原理相关函数介绍分水岭算法图像分割实例交互式前景提取图像分割与提取 图像中将前景对象作为目标图像分割或者提取出来。对背景本身并无兴...
    99+
    2024-04-02
  • python怎么提取字典中的数据
    在Python中,可以使用索引或者get()方法来提取字典中的数据。以下是两种常见的方法:1. 使用索引:可以使用字典的键来访问对应...
    99+
    2023-09-20
    python
  • Python实现提取语句中的人名
    目录前言环境依赖代码验证一下总结前言 本文提供将语句中的人名提取出来的工具方法,可以拿去直接使用。 环境依赖 需要安装两个库,其实一个也可以,但是我这边准备了两个库做个比较。 安装命...
    99+
    2024-04-02
  • python怎么提取图片中的文字
    要提取图片中的文字,可以使用Python的第三方库tesseract-ocr。Tesseract是一个开源的OCR引擎,可以识别多种...
    99+
    2023-08-12
    python
  • python怎么提取文字中的数字
    你可以使用正则表达式或者循环结构来提取文字中的数字。方法一:使用正则表达式```pythonimport retext = "hel...
    99+
    2023-08-12
    python
  • Scala提取器使用实例分析
    这篇文章主要介绍了Scala提取器使用实例分析的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Scala提取器使用实例分析文章都会有所收获,下面我们一起来看看吧。Scala 提取器是一个带有unapply方法的对...
    99+
    2023-06-27
  • java怎么从地址串中解析提取省市区
    这篇文章主要讲解了“java怎么从地址串中解析提取省市区”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“java怎么从地址串中解析提取省市区”吧!废话不多说 直接上代码:package&nbs...
    99+
    2023-07-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作