当前位置: 首页 > wzjs >正文

哪个网站可以做经济模拟题技术培训学校机构

哪个网站可以做经济模拟题,技术培训学校机构,h5手机端网站开发,房屋设计说明简介 响应报文分为JSON格式和字符串格式,往往响应报文中有很多个字段和多层嵌套,如何快速的提取字段key和对应的value值呢?有三种提取方式:jsonpath提取、正则表达式、字符串切片。jsonpath是针对JSON格式的数据提取,…

简介

响应报文分为JSON格式和字符串格式,往往响应报文中有很多个字段和多层嵌套,如何快速的提取字段key和对应的value值呢?有三种提取方式:jsonpath提取、正则表达式、字符串切片。jsonpath是针对JSON格式的数据提取,后两种主要针对字符串形式的数据提取。

jsonpath

JsonPath是一种用于在JSON数据中定位和提取特定数据的表达式语言。它类似于XPath用于XML的定位和提取,可以帮助我们灵活地从复杂的JSON结构中获取所需的数据。

jsonpath的安装

Terminal终端输入命令行:

pip install jsonpath

也可以使用国内镜像源

pip install jsonpath -i 镜像源地址

以下是国内的几个镜像源地址:
豆瓣:https://pypi.doubanio.com/simple/
阿里云:https://mirrors.aliyun.com/pupi/simple/
华中理工:https://pypi.hustunique.com/simple/
山东理工:https://pypi.sdulinux.org/simple/
中科大:https://pypi.mirrors.ustc.edu.cn/simple/
清华:https://pypi.tuna.tsinghua.edu.cn/simple/

jsonpath的特点

  • jsonpath可处理的报文数据类型是字典类型
  • 通过jsonpath获取的内容,会以list的形式返回,也就相当于结果以一个值或多个值存在,需要通过list[index]/list[start:end]进一步提取想要的内容。
  • 基于jsonpath处理的json数据,需要同时同步list的数据
  • jsonpath如果表达式输入错误,则会返回False,故jsonpath的处理结果要么是list 要么是False

jsonpath的基本范式

  1. 基本语法:
表达式注释
$根节点,也是所有jsonpath表达式的起点
·当前节点
··递归下级节点
  1. 属性操作
表达式注释
$.property选择指定属性
$[‘property’]选择指定属性,属性名中带有特殊字符时使用,也可用于平常为了避免出现特殊字符时使用
  1. 数组操作
表达式注释
$.arrayName[index]选择指定节点下索引处的元素
$.arrayName[start:end]选择指定节点下索引范围内的元素
  1. 过滤器
表达式注释
$.arrayName[?(@.property == value)]根据条件过滤数组元素,这个可以作为找到某个标志性属性后查找同级其他属性
$.arrayName[?(@.property > value)]同上
  1. 路径组合
表达式注释
$.parent.child选择父节点下的子节点属性
$.parent[*].child选择父节点下所有子节点的某个属性

jsonpath的应用

jsonpath(json_data, “表达式”)

# -*- coding:utf-8 -*-
# @File:test_jsonpath_01.py
# @Date:2025/5/21 22:38
# @Author:wayne
# @description:jsonpath的基础用法import jsonpathdata = {"name": "Alice","age": 25,"email": "alice@example.com","address": {"street": "456 Elm Street","city": "Los Angeles","country": "USA"},"hobbies": ["reading", "traveling", "cooking"],"education": [{"degree": "Bachelor's","major": "Software Engineering","university": "ABC University","year": 2018},{"degree": "Master's","major": "Computer Science","university": "BCD University","year": 2019},{"degree": "Doctor's","major": "Business Administration","university": "XYZ University","year": 2020}],"projects": [{"name": "Project A","description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit.","contributors": ["John", "Sarah", "Mike"],"completed": "true"},{"name": "Project B","description": "Nulla vel sagittis elit. Vivamus auctor massa in lacinia pellentesque.","contributors": ["Alice", "David"],"completed": "false"}],"is-active": "true"
}result = jsonpath.jsonpath(data, '$.name')[0]
print("选择指定属性:", result)
result = jsonpath.jsonpath(data, '$.[is-active]')[0]
print("选择指定属性-特殊符号:", result)result = jsonpath.jsonpath(data, '$.education[1]')
print("数组操作-选择指定节点下索引处的元素:", result)
result = jsonpath.jsonpath(data, '$.education[1:]')
print("数组操作-选择指定节点下索引范围内的元素:", result)result = jsonpath.jsonpath(data, '$.education[?(@.year == 2020)]')
print("过滤器1:", result)
result = jsonpath.jsonpath(data, '$.education[?(@.year > 2018)]')
print("过滤器2:", result)result = jsonpath.jsonpath(data, '$.address.city')[0]
print("路径组合-选择父节点下的子节点:", result)
result = jsonpath.jsonpath(data, '$.education[0].year')[0]
print("路径组合-选择父节点下所有子节点的某个属性:", result)

正则表达式提取

在Python中,用 re 模块来进行表达式的操作。

函数作用
re.search(“正则表达式”, str)用于从文本中提取字符串
re.findall(“正则表达式”, str)用于从文本中提取一个或多个字符串,返回的是一个list列表,包含所有匹配到的字符串

应用

# -*- coding:utf-8 -*-
# @File:test_regular_expression.py
# @Date:2025/5/22 18:55
# @Author:wayne
# @description:正则表达式提取文本
import retext = 'result(["username":"tester", "password":"123456" , "token":"6c598762f156457345d2102a6edce274"])'
pattern = '"token":"(.*?)"'   # (.*?)是个万能的正则表达式,Jmeter的正则表达式提取也可以使用
match = re.search(pattern, text)
print(match)
# 要通过match的group()方法取出来
print(match.group(0))  # 取出全部匹配的字符串:"token":"6c598762f156457345d2102a6edce274"
print(match.group(1))  # 取出匹配的正则部分的字符串:6c598762f156457345d2102a6edce274text = "There are many kinds of apples,white apple,red apple,green apple." \"White apple sell $1.12 per.Red apple sell $1.25 per.Green apple sells $0.99 per"
pattern = r'\d+\.\d{2}'
match_list = re.findall(pattern, text)
print(match_list)  # ['1.12', '1.25', '0.99']
# for match in match_list:
#     print(match)

字符串切片

字符串切片用到 split() 函数,split()函数返回的是一个list列表,用法:
split(‘分隔符号’, num)[index],其中num指切片次数,index取结果列表的下标(索引)

应用

# -*- coding:utf-8 -*-
# @File:test_str_split.py
# @Date:2025/5/22 19:51
# @Author:wayne
# @description:字符串切片data = '''result({"name": "Alice","age": 25,"email": "alice@example.com","address": {"street": "456 Elm Street","city": "Los Angeles","country": "USA"},"hobbies": ["reading", "traveling", "cooking"],"education": [{"degree": "Bachelor's","major": "Software Engineering","university": "ABC University","year": 2018},{"degree": "Master's","major": "Computer Science","university": "BCD University","year": 2019},{"degree": "Doctor's","major": "Business Administration","university": "XYZ University","year": 2020}],"projects": [{"name": "Project A","description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit.","contributors": ["John", "Sarah", "Mike"],"completed": "true"},{"name": "Project B","description": "Nulla vel sagittis elit. Vivamus auctor massa in lacinia pellentesque.","contributors": ["Alice", "David"],"completed": "false"}],"is-active": "true"
})'''# data_list = data.split('(')
# print(data_list)
# data1 = data_list[1]
# print(data1)
# data2 = data1[:-1]
# print(data2)data = data.split("(")[1][:-1]   # [1]:取第2个元素,[:-1]:去掉最后一个字符
print(data)
http://www.dtcms.com/wzjs/215767.html

相关文章:

  • 橡胶塑料制品公司网站建设信息发布平台推广
  • 什么网站可免费发布信息sem竞价广告
  • 阿里云服务器做网站django免费个人网站服务器
  • 建网站 京公网安免费网站在线观看人数在哪
  • zencart官方网站网络宣传怎么做
  • 义乌网站建设哪家好外链交易平台
  • 网站建设套网站优化seo是什么意思
  • 网站建设重点网络营销外包公司
  • asp动态网站制作流程聊石家庄seo
  • 自己做家具网站免费建自己的网站
  • 公司 备案 网站名称东莞疫情最新消息今天新增病例
  • 邢台做网站优化北京营销推广网站建设
  • 免费自助建站哪个网站最好网站域名ip查询
  • html javascript css个人网站seo在哪可以学
  • 国外优秀平面设计网站曼联vs曼联直播
  • 给装修公司做网站怎么开发网站
  • 凡科建站官网电脑版怎么在百度打广告
  • liunx做网站跳转服务器2345网址导航中国最好
  • 全国公共资源交易中心招标网百度搜索排行seo
  • 视频网站策划国际新闻视频
  • 优秀网站设计模板百度seo sem
  • 电子商务网站多少钱黄冈网站推广优化找哪家
  • 小程序建站公司自媒体平台app
  • 怀化二医院网站百度信息流怎么做效果好
  • php企业网站源码推荐信息服务平台有哪些
  • 大型网站建设部署方案360手机助手
  • phpcms v9农业网站模板互联网销售平台
  • 一流的高端企业网站如何点击优化神马关键词排名
  • 如何寻找网站建设需求客户搜索引擎优化哪些方面
  • 青岛网站建设公司在哪口红的推广软文