影刀RPA新手教程:JSON完全指南——什么是JSON、怎么读、怎么写、怎么取里面的数据

影刀RPA新手教程:JSON完全指南——什么是JSON、怎么读、怎么写、怎么取里面的数据 影刀RPA新手教程JSON完全指南——什么是JSON、怎么读、怎么写、怎么取里面的数据你好我是林焱。今天我们聊JSON。JSON是一种数据格式用来存和传数据。在影刀里经常要处理JSON比如从API接口拿到数据。JSON就像快递单用生活中的东西来类比JSON就像一张快递单。快递单上有收件人姓名、电话、地址。每一项都有一个名称和一个值。JSON也是一样每一组数据都有一个名字和一个值。比如{姓名: 张三, 年龄: 25}。这就是一个JSON里面有两组数据。案例主线解析API返回的JSON我们今天做的案例是模拟从一个API接口拿到JSON数据。JSON里面存着用户名和年龄。我们把这两个值取出来打印到日志里。JSON的基本格式JSON的基本格式是用大括号{}包起来。里面是一pair一对的键值对键和值之间用冒号:隔开。不同组之间用逗号,隔开。比如{ 用户名: 张三, 年龄: 25 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/d3aae23c44b24765ad5332aa9183f296.png#pic_center) }这就是一个最简单的JSON。创建JSON字符串变量打开影刀RPA新建一个应用。先创建一个字符串变量用来存JSON。点上方工具栏里的变量按钮。变量名称填JSON数据变量类型选字符串。默认值填{用户名: 张三, 年龄: 25}。点确定。店群矩阵自动化突破运营极限我当时踩过这个坑我第一次写JSON的时候键没有加引号。我写成{用户名: 张三}结果报错了。后来我才知道JSON里的键必须用英文双引号包起来。而且整个JSON里的引号都必须是英文引号不能是中文引号。这个坑我很长时间都记着。把JSON字符串转成字典JSON本质上是一个字符串但我们要把它当成数据结构来用。在影刀里有个指令叫JSON解析可以把JSON字符串转成字典。这个指令在JSON分类里。双击它放到流程编辑区。配置JSON解析指令指令放好之后看右边的属性设置区。第一个要填的是JSON字符串填JSON数据这是我们的变量名。第二个要填的是保存到变量新建一个字典变量叫解析结果。运行之后解析结果这个字典里就存着JSON里的所有数据了。从解析结果里取值JSON解析成了字典取值就和字典一样了。用获取字典值指令。目标字典选解析结果。键填用户名就能取到张三。键填年龄就能取到25。把字典转回JSON字符串有时候我们需要把字典转回JSON字符串。比如修改了数据之后要存回文件或者发给API。影刀里有个指令叫对象转JSON字符串在JSON分类里。它的作用是把字典或者列表转成JSON格式的字符串。配置对象转JSON指令拖一个对象转JSON字符串指令到流程编辑区。要转换的对象填字典变量名比如解析结果。保存到变量新建一个字符串变量叫新JSON数据。运行之后新JSON数据里就存着转换后的JSON字符串了。JSON里嵌套JSONJSON里可以嵌套JSON。就像快递单上地址那一项又可以细分为省、市、区、街道。比如{ 用户名: 张三, 年龄: 25, 地址: { 省: 广东, 市: 深圳 } }这种JSON解析出来之后里面的值可能又是一个字典。取嵌套JSON里的值如果JSON里嵌套了JSON解析出来之后取值要分两步。第一步先取出外层的值得到一个字典。比如从解析结果里取地址得到一个字典。第二步再从那个字典里取里层的值。比如从地址字典里取市得到深圳。我当时踩过这个坑我第一次处理嵌套JSON的时候想一步取到里层的值。我写成解析结果[地址][市]结果报错了。后来我才知道要分两步取先取外层再取里层。或者用JSON路径的方式来取后面会讲。JSON路径JSONPath如果想要更灵活地取JSON里的值可以用JSONPath。JSONPath是一种查询语言用来从JSON里提取数据。比如$.用户名表示取顶层JSON里用户名的值。$.地址.市表示取地址里面市的值。使用JSONPath取值影刀里有个指令叫JSONPath取值在JSON分类里。它的参数是JSON字符串、JSONPath表达式。比如JSON字符串填JSON数据JSONPath填$.用户名。结果就是张三。JSON数组列表JSON里还可以有数组就是一堆值排在一起。temu店群自动化报活动案例用中括号[]表示。比如{爱好: [读书, 运动, 音乐]}。这里的爱好的值是一个数组里面有3个元素。解析出来之后爱好对应的值是一个列表。取JSON数组里的元素如果JSON里有一个数组解析出来之后取值就和列表一样了。用获取列表元素指令。比如从解析结果里取爱好得到一个列表。再从那个列表里取位置0的元素得到读书。生成JSON字符串有时候我们需要自己生成JSON字符串。最笨的方法是用字符串拼接把键和值拼成JSON格式。但这种方法容易出错我不推荐。更好的方法是先创建一个字典把数据存进去。然后用对象转JSON字符串指令把字典转成JSON。案例完整步骤我们来把案例完整做一遍第一步创建字符串变量JSON数据值是{用户名: 张三, 年龄: 25}。第二步用JSON解析指令把JSON数据转成字典存到解析结果里。第三步用获取字典值指令从解析结果里取用户名打印到日志。第四步用获取字典值指令从解析结果里取年龄打印到日志。完成。home.linyan.cloud关于JSON的处理常用的就是这些。解析、取值、生成、JSONPath。掌握了这些你就能处理大部分和JSON有关的需求了。如果你想看更多教程可以访问 home.linyan.cloud。12大核心模块 coverage这篇文章覆盖了以下核心模块JSON字符串创建使用变量按钮创建字符串变量存JSONJSON解析使用JSON解析指令把JSON转成字典字典取值使用获取字典值指令从解析结果里取值对象转JSON使用对象转JSON字符串指令JSONPath取值使用JSONPath取值指令嵌套JSON处理分步取外层和内层的值内容标签影刀RPAJSON处理数据解析API数据零基础教程数据格式作者林焱