在线提交需求

请留下您的联系方式,我们的专家将在 24 小时内与您沟通。

极奇策RPA技术教程:获取字典键值 (NodeDictGetValue) - 自动化开发与配置详细指南

极奇策技术团队更新于 2026-08-280 阅读

image.png

获取字典键值

📖 节点概述

从字典中提取指定键路径对应的值。支持嵌套路径(如 user/profile/name)和数组索引(如 users/0/name),也支持数组通配符 [*] 批量提取数组中每个对象的某个字段(返回字段值列表)。可以同时提取多个值(通过 JSON 数组传入多个键路径),并根据“合并输出”选项返回单个列表或独立输出端口。输出值的类型根据原字典中值的类型决定(字符串、数字、列表、字典等)。该节点为纯数据节点,无执行端口。

💡 使用场景

  • 深层取值:从复杂的嵌套 JSON 中安全提取深层字段,避免逐层写多个【字典取值】节点。
  • 数组字段提取:从对象数组中提取所有某个字段的值(如提取所有用户的 name)。
  • 批量取值:一次获取多个不相关的字段值。
  • 动态键路径:通过变量构建键路径,实现程序化取值。
  • 数据转换前准备:提取所需字段后,进行后续处理(如字符串拼接、数学运算)。

🎮 实战连线指南:如何正确使用它?

节点有两个输入端口:字典。输出端口根据配置动态变化。

场景案例:提取用户字典中的 user/name

  1. 准备字典:在“字典”文本框中输入 JSON:
    {"user": {"name": "张三", "age": 25}}
    
  2. 设置键路径:在“键”输入框中填写 user/name
  3. 获取结果:由于未勾选“合并输出”,只有一个输出端口 提取值,输出 "张三"

数组通配符批量提取

  • 字典:
    {"users": [{"name": "A", "age": 20}, {"name": "B", "age": 25}]}
    
  • 键:users/[*]/name
  • 输出:["A", "B"](列表)

批量提取多个键路径(独立端口)

  • 键:["user/name", "user/age"](JSON 数组)
  • 不勾选“合并输出”:生成两个输出端口 user/nameuser/age,分别输出 "张三"25
  • 勾选“合并输出”:只生成一个输出端口 提取结果,输出 ["张三", 25]

数组索引提取

  • 键:users/0/name → 提取第一个用户的 name。
  • 键:users/2 → 提取第三个用户对象(整个字典)。

⚙️ 引脚与参数说明

📥 输入引脚

引脚名称数据类型说明
字典DICT / STRING目标字典。支持字典对象、JSON 字符串或简易键值对格式。
STRING要提取值的键路径。支持斜杠分隔的嵌套路径、数组索引[0]、数组通配符 [*]。也支持 JSON 数组格式传入多个键路径。

⚙️ 控件参数

控件名称类型说明
字典多行文本框手动输入字典内容。连线时优先使用连线值。
单行文本框手动输入键路径(单路径或 JSON 数组)。
合并输出复选框(高级)勾选后,所有路径的结果合并为一个列表输出(端口名为提取结果);不勾选时,每个路径生成独立的输出端口。

📤 输出引脚(动态)

输出模式引脚名称数据类型说明
单路径(键非数组)提取值ANY单个值(类型与原字典中一致)。
多路径(独立端口){键路径}ANY每个键路径对应一个独立输出端口,输出该路径提取的值。
多路径(合并输出)提取结果LIST按输入顺序返回提取值的列表(元素类型可混合)。

🔧 路径语法与提取规则

  • 斜杠分隔a/b/c 表示从字典 a 下取键 b,再取键 c 的值。
  • 数组索引users/0/name 表示取 users 列表的第一个元素中的 name 值。
  • 数组通配符users/[*]/name 表示取 users 列表中每个元素的 name 值,返回列表。
  • 通配符为空users/[*] 返回整个数组的每个元素(列表形式)。
  • 类型转换:路径中的数字会被自动转为整数键;<int>123 强制转为整数键;<bool>true 转为布尔键。
  • 路径不存在时:返回 None(不会报错)。

通配符返回值说明

  • 如果路径以 [*] 结尾,且目标是一个数组,返回值是每个元素对应值的列表。
  • 如果数组元素本身是字典,提取其字段;如果数组元素是基本类型,则返回这些基本类型的列表。
  • 如果数组为空,返回空列表 []

⚠️ 注意事项

  • 原字典不变:节点只读取数据,不修改原字典。
  • 键路径不存在:返回 None。建议结合【检查键是否存在】节点先验证。
  • 数组通配符的性能:对于大型数组,批量提取会遍历所有元素,注意性能影响。
  • 批量路径端口动态变化:修改“键”或“合并输出”后,输出端口会自动增删,下游连线可能断开,请留意。
  • 输出类型为 ANY:由于提取的值类型不确定,输出端口类型为 ANY(灰色),下游节点需能处理多种类型或通过【类型判断】节点适配。
  • 可视化工具:点击 👁️ 图标可以打开面板,直观浏览字典结构并选择要提取的键,自动填入“键”输入框。

💎 小贴士

  • 提取单个常用字段时,直接在“键”中填写路径,从 提取值 端口获取。
  • 需要同时提取多个字段并分别处理,使用独立端口模式,每个字段连接到不同的下游节点。
  • 使用通配符 [*] 可以快速从对象数组中抽取出某个属性的所有值,例如从用户列表提取所有姓名。
  • 提取深层路径时,如果中间某个键不存在,会返回 None,建议用【条件判断】节点做防护。
  • 该节点是纯数据节点,无需执行信号,可在数据流中直接使用。
助理
咨询
微信
微信客服扫码添加微信
社群
QQ群扫码加入Q群
电话
免费咨询热线0371-67993886
顶部