python之jsonpath
Python jsonpath
2023-09-27 14:25:18 时间
https://www.cnblogs.com/Zhan-W/p/15650408.html
data = { "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
}
}
}
例子(里面有个. 和.. 的用法不错)
import jsonpath
import jsonpath
testdata = {
"code": 0,
"status": 1,
"data": {
"list": [
{
"stockOutId": "1467422726779043840",
"orderId": "1467422722362441728",
"id": "1467422722362441728",
"stockOutStatus": {
"name": "待出库",
"value": 0,
"description": "待出库"
},
"orderStatus": {
"name": "待付款",
"value": 0,
"description": "待付款"
},
},
{
"stockOutId": "1467512423597473792",
"orderId": "1467512420523048960",
"id": "1467512420523048960",
"stockOutStatus": {
"name": "待出库",
"value": 0,
"description": "待出库"
},
"stockOutNo": "CK2021120583602001"
}
],
"pageIndex": 0,
"pageSize": 50,
"total": 2,
"pageCount": 1,
"data": {
"addRepairOrder": True,
"cancelOrder": True
}
},
"name":123,
"message": "操作成功。",
"isSuccessed": True
}
# # --------------------------------------------------------常规匹配:
# print(testdata["message"])
# ---------------------------------------------------------使用jsonpath匹配
# jsonpath匹配(取出来是个列表) -----把第一层‘name’字段的值都取出来
print(jsonpath.jsonpath(testdata, '$.name'))
# jsonpath匹配(取出来是个列表) -----把所有为‘name’字段的值都取出来
print(jsonpath.jsonpath(testdata, '$..name'))
# # 去列表
# print(jsonpath.jsonpath(testdata, '$..name')[0])
# # 匹配data下的所有键的值,已list类型返回
# print(jsonpath.jsonpath(testdata, '$.data.*'))
以前jmeter也有类似的笔记
https://www.cnblogs.com/kaibindirver/p/11951874.html
https://www.cnblogs.com/kaibindirver/p/8939899.html
JSONPath解析器在线试验
http://www.atoolbox.net/Tool.php?Id=792
相关文章
- 一道有趣的大厂测试面试题,你能用 Python or Shell 解答吗?
- Python实战小游戏飞机大战详解
- Python-OpenCV中不用函数split()的实现图像多通道分离的方法——ndraary对象切片实现
- 《Python游戏编程快速上手》——导读
- 10张架构图包含Python所有方向的学习路线,你们要的体系全在这
- SQL 教程之 通过 SQL 和 Python 集成将自动化提升到新的高度streamlit
- python 去重
- 【华为OD机试真题 java、c++、python、JsNode】查找重复代码(100%通过+复盘思路)
- python之FTP上传和下载
- Python爬虫之续Urllib&&Jsonpath库的使用
- 最新版MacOS系统轻松配置基础依赖库、环境变量、Java、Python、NodeJS等开发环境
- 【python】 字符串“-d aaa -i 10.xx.xxx.xx -p io“ 替换-i之后的字符串, 新思路