WeAutomate RPA Software Platform V100R001C00 Studio Development Guide(OFFE00432610_PMD86ZH A)
RPA
RPA 机器人开发指南
文档版本 01
发布日期 2021-03-24
华为技术有限公司
版权所有 © 华为技术有限公司 2021。 保留一切权利。
非经本公司书面许可,任何单位和个人不得擅自摘抄、复制本文档内容的部分或全部,并不得以任何形式传
播。
商标声明
和其他华为商标均为华为技术有限公司的商标。
本文档提及的其他所有商标或注册商标,由各自的所有人拥有。
注意
您购买的产品、服务或特性等应受华为公司商业合同和条款的约束,本文档中描述的全部或部分产品、服务
或特性可能不在您的购买或使用范围之内。除非合同另有约定,华为公司对本文档内容不做任何明示或默示
的声明或保证。
由于产品版本升级或其他原因,本文档内容会不定期进行更新。除非另有约定,本文档仅作为使用指导,本
文档中的所有陈述、信息和建议不构成任何明示或暗示的担保。
华为技术有限公司
地址: 深圳市龙岗区坂田华为总部办公楼 邮编:518129
网址: https://www.huawei.com
客户服务邮箱: [email protected]
客户服务电话: 4008302118
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 i
RPA
RPA 机器人开发指南 目 录
目 录
1 RPA 机器人开发指南 .................................................................................. 1
1.1 介绍 .................................................................................................................................... 1
1.1.1 HUAWEI AntRobot 的整体介绍 ......................................................................................... 1
1.1.2 HUAWEI AntRobot Robot .................................................................................................. 2
1.1.3 HUAWEI AntRobot Studio .................................................................................................. 2
1.1.4 HUAWEI AntRobot Management Center ............................................................................. 2
1.2 安装&配置 ......................................................................................................................... 2
1.2.1 Studio 安装&配置 .............................................................................................................. 2
1.2.2 证书管理 ............................................................................................................................ 3
1.2.3 管理中心配置..................................................................................................................... 5
1.3 基本概念 ............................................................................................................................ 8
1.3.1 界面布局说明..................................................................................................................... 8
1.3.1.1 HUAWEI AntRobot Studio 主界面 ..................................................................................... 8
1.3.1.2 国际化 ................................................................................................................................ 8
1.3.1.3 工具栏功能介绍 ................................................................................................................. 9
1.3.1.3.1 录制回放模块..................................................................................................................... 9
1.3.1.3.2 调试模块 ...........................................................................................................................10
1.3.1.3.3 其他功能模块....................................................................................................................10
1.3.2 原子活动界面....................................................................................................................12
1.4 第一个例子 .......................................................................................................................15
1.4.1 打开记事本输入文字并保存 .............................................................................................15
1.5 录制和回放 .......................................................................................................................20
1.5.1 录制和回放 Web 程序 .......................................................................................................20
1.5.2 录制和回放 Windows 本地应用程序 ................................................................................22
1.5.3 录制和回放本地 JAVA 应用程序 ......................................................................................23
1.6 逻辑 ...................................................................................................................................24
1.6.1 循环 ...................................................................................................................................25
1.6.1.1 while 循环语法 ..................................................................................................................25
1.6.1.2 dowhile 循环语法 ..............................................................................................................25
1.6.2 分值判断 ...........................................................................................................................27
1.6.2.1 if 条件控制语法 ................................................................................................................27
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 ii
RPA
RPA 机器人开发指南 目 录
1.6.3 遍历 ...................................................................................................................................28
1.6.3.1 for 循环遍历语法 ..............................................................................................................28
1.6.4 异常捕获 ...........................................................................................................................29
1.6.4.1 try-catch .............................................................................................................................30
1.6.5 Block 语句块 .....................................................................................................................31
1.6.6 Subprocess 和 CallScript 调用子脚本 ................................................................................31
1.7 高级特性 ...........................................................................................................................32
1.7.1 eval 计算 ...........................................................................................................................32
1.7.1.1 eval 的常见用法 ................................................................................................................32
1.7.1.1.1 用法一 将变量的类型赋给另一个变量 ............................................................................32
1.7.1.1.2 用法二 将表达式的值赋给另一个变量 ............................................................................33
1.7.1.1.3 用法三 从集合中删除元素 ...............................................................................................34
1.7.1.1.4 用法四 向字典中添加一个键值对 ...................................................................................35
1.7.2 C#调用 ..............................................................................................................................35
1.7.3 python 调用 .......................................................................................................................37
1.7.4 powershell 调用 .................................................................................................................39
1.7.5 sendkey ..............................................................................................................................41
1.7.5.1 网页 ...................................................................................................................................41
1.7.5.2 Win32 应用程序 ................................................................................................................42
1.7.5.3 JaveSwing 应用、JavaFx 应用、Jab 应用 .........................................................................43
1.7.6 浏览器的参数配置 ............................................................................................................44
1.7.7 Chrome/Firefox IE 页面元素拾取能力 ..............................................................................45
1.7.8 参数和变量的使用 ............................................................................................................49
1.7.9 IE 回放的 com 模式 ..........................................................................................................50
1.7.9.1 概述 ...................................................................................................................................50
1.7.9.2 与普通模式的区别 ............................................................................................................50
1.7.9.3 支持的命令列表 ................................................................................................................52
1.7.10 自定义控件 .......................................................................................................................54
1.7.10.1 背景 ...................................................................................................................................54
1.7.10.2 手工编排自定义控件 ........................................................................................................54
1.7.10.2.1 环境准备 ...........................................................................................................................54
1.7.10.2.2 help.json 开发(提供给 Studio 显示) ..............................................................................56
1.7.10.2.3 register.json 开发(提供给 Robot 识别命令) ..................................................................60
1.7.10.2.4 action_ext.py 开发(具体功能实现) ...............................................................................60
1.7.10.2.5 actionx.rpax 编写(版本信息以及作者) .........................................................................61
1.7.10.2.6 xml 编写 ............................................................................................................................62
1.7.10.2.7 三方件依赖(有使用到 python 三方件且不在 Robot 自带的 python 内,进行此操作) ...62
1.7.10.2.8 Tips(扩展名,参数名需要按照 python 命名规范,字母数字下划线) ...........................63
1.7.10.2.9 打包 ...................................................................................................................................63
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 iii
RPA
RPA 机器人开发指南 目 录
1.7.10.2.10 导入 ...................................................................................................................................64
1.7.10.2.11 使用 ...................................................................................................................................65
1.7.10.3 使用插件开发自定义控件 .................................................................................................65
1.7.10.3.1 下载插件和模板 ................................................................................................................65
1.7.10.3.2 安装插件 ...........................................................................................................................66
1.7.10.3.3 插件的使用 .......................................................................................................................68
1.7.10.3.4 基本信息 ...........................................................................................................................68
1.7.10.3.5 控件注册 ...........................................................................................................................69
1.7.10.3.6 控件配置 ...........................................................................................................................69
1.7.10.3.7 依赖设置 ...........................................................................................................................72
1.7.10.3.8 打包 ...................................................................................................................................73
1.7.10.3.9 导入和使用 .......................................................................................................................74
1.8 原子活动 ...........................................................................................................................74
1.8.1 网页 ...................................................................................................................................74
1.8.1.1 actionchains 起始 ...............................................................................................................74
1.8.1.2 传值到 prompt 并确认 .......................................................................................................75
1.8.1.3 编辑框追加文本 ................................................................................................................76
1.8.1.4 点击 alert 框的确认 ...........................................................................................................78
1.8.1.5 页面后退 ...........................................................................................................................79
1.8.1.6 点击 confirm 取消 .............................................................................................................80
1.8.1.7 点击 prompt 取消 ..............................................................................................................81
1.8.1.8 点击 confirm 确认 .............................................................................................................82
1.8.1.9 清空编辑框 .......................................................................................................................83
1.8.1.10 鼠标单击事件....................................................................................................................84
1.8.1.11 长按鼠标左键....................................................................................................................87
1.8.1.12 关闭当前窗口....................................................................................................................89
1.8.1.13 获取当前页面 url ..............................................................................................................90
1.8.1.14 取消选定下拉框 ................................................................................................................91
1.8.1.15 鼠标双击事件....................................................................................................................93
1.8.1.16 将某元素拖拽到某位置 ....................................................................................................95
1.8.1.17 将某元素拖拽到相对于它的某个位置 ..............................................................................98
1.8.1.18 拖拽元素到另一个元素 .................................................................................................. 100
1.8.1.19 截取元素图片.................................................................................................................. 103
1.8.1.20 执行 js 代码 ..................................................................................................................... 105
1.8.1.21 快速输入 ......................................................................................................................... 107
1.8.1.22 页面前进 ......................................................................................................................... 109
1.8.1.23 获取元素的属性值 .......................................................................................................... 110
1.8.1.24 获取元素中子元素个数 .................................................................................................. 112
1.8.1.25 获取当前页面 cookie....................................................................................................... 114
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 iv
RPA
RPA 机器人开发指南 目 录
1.8.1.26 获取下载文件.................................................................................................................. 115
1.8.1.27 获取元素,返回一个锚点 ............................................................................................... 116
1.8.1.28 获取元素个数.................................................................................................................. 118
1.8.1.29 获取元素的屏幕坐标 ...................................................................................................... 120
1.8.1.30 获取表格 ......................................................................................................................... 122
1.8.1.31 获取表格数据列数 .......................................................................................................... 124
1.8.1.32 表格取值 ......................................................................................................................... 125
1.8.1.33 获取表格数据行数 .......................................................................................................... 127
1.8.1.34 获取元素的文本 .............................................................................................................. 128
1.8.1.35 获取当前页面的页面标题 ............................................................................................... 130
1.8.1.36 获取所有窗口句柄 .......................................................................................................... 131
1.8.1.37 判断当前页面元素是否存在 ........................................................................................... 132
1.8.1.38 判断当前页面元素是否存在 ........................................................................................... 134
1.8.1.39 按下键盘 ......................................................................................................................... 137
1.8.1.40 松开键盘 ......................................................................................................................... 139
1.8.1.41 鼠标移动到某位置 .......................................................................................................... 141
1.8.1.42 鼠标移动到某元素 .......................................................................................................... 142
1.8.1.43 鼠标移动到某元素相对位置 ........................................................................................... 144
1.8.1.44 打开新的浏览器 .............................................................................................................. 146
1.8.1.45 打开指定网页.................................................................................................................. 148
1.8.1.46 获取网页源代码 .............................................................................................................. 150
1.8.1.47 actionchains 终止 ............................................................................................................. 151
1.8.1.48 退出浏览器 ..................................................................................................................... 152
1.8.1.49 刷新页面 ......................................................................................................................... 153
1.8.1.50 在某位置松开鼠标 .......................................................................................................... 154
1.8.1.51 鼠标右击 ......................................................................................................................... 156
1.8.1.52 截取屏幕图片.................................................................................................................. 158
1.8.1.53 滑动滚动条 ..................................................................................................................... 159
1.8.1.54 元素滚动到视图 .............................................................................................................. 160
1.8.1.55 选择下拉菜单.................................................................................................................. 162
1.8.1.56 切换 iframe 框架 ............................................................................................................. 164
1.8.1.57 切换窗口 ......................................................................................................................... 166
1.8.1.58 设置窗口大小.................................................................................................................. 169
1.8.1.59 传入功能键 ..................................................................................................................... 171
1.8.1.60 发送数据到焦点元素 ...................................................................................................... 173
1.8.1.61 设置某元素文本信息 ...................................................................................................... 174
1.8.1.62 输入文本 ......................................................................................................................... 176
1.8.1.63 等待元素消失.................................................................................................................. 178
1.8.1.64 等待元素出现.................................................................................................................. 180
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 v
RPA
RPA 机器人开发指南 目 录
1.8.2 公共 ................................................................................................................................. 182
1.8.2.1 给变量赋值 ..................................................................................................................... 182
1.8.2.2 变量赋值 ......................................................................................................................... 184
1.8.2.3 退出循环 ......................................................................................................................... 185
1.8.2.4 跳出当次循环.................................................................................................................. 186
1.8.2.5 延时操作 ......................................................................................................................... 187
1.8.2.6 下载文件 ......................................................................................................................... 189
1.8.2.7 运行 py 表达式 ................................................................................................................ 191
1.8.2.8 调用 c#函数 ..................................................................................................................... 192
1.8.2.9 调用 py 函数 ................................................................................................................... 194
1.8.2.10 退出机器人或者脚本 ...................................................................................................... 196
1.8.2.11 获取日志信息.................................................................................................................. 198
1.8.2.12 获取字典键值.................................................................................................................. 199
1.8.2.13 发送短信 ......................................................................................................................... 200
1.8.2.14 语音电话 ......................................................................................................................... 202
1.8.2.15 调用 PowerShell .............................................................................................................. 204
1.8.2.16 调用 restApi ..................................................................................................................... 205
1.8.2.17 结束进程 ......................................................................................................................... 207
1.8.2.18 确认窗口 ......................................................................................................................... 208
1.8.2.19 打印数据 ......................................................................................................................... 209
1.8.2.20 数学运算 ......................................................................................................................... 210
1.8.2.21 正则匹配 findall .............................................................................................................. 212
1.8.2.22 正则匹配 search............................................................................................................... 213
1.8.2.23 调用 restApi ..................................................................................................................... 215
1.8.2.24 比较字符串 ..................................................................................................................... 218
1.8.2.25 是否包含指定字符串 ...................................................................................................... 220
1.8.2.26 统计字符串数量 .............................................................................................................. 221
1.8.2.27 查找字符串位置 .............................................................................................................. 222
1.8.2.28 分割字符串 ..................................................................................................................... 223
1.8.2.29 字符串长度统计 .............................................................................................................. 224
1.8.2.30 删除字符串两边字符 ...................................................................................................... 225
1.8.2.31 自定义异常输出 .............................................................................................................. 226
1.8.3 Win32 应用程序 .............................................................................................................. 227
1.8.3.1 选中 ................................................................................................................................. 227
1.8.3.2 鼠标左键单击.................................................................................................................. 229
1.8.3.3 关闭窗口 ......................................................................................................................... 234
1.8.3.4 收起控件 ......................................................................................................................... 235
1.8.3.5 鼠标左键双击.................................................................................................................. 237
1.8.3.6 鼠标拖拽 ......................................................................................................................... 242
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 vi
RPA
RPA 机器人开发指南 目 录
1.8.3.7 展开控件 ......................................................................................................................... 242
1.8.3.8 获取控件信息.................................................................................................................. 244
1.8.3.9 获取焦点选中的控件 ...................................................................................................... 246
1.8.3.10 获取文本值 ..................................................................................................................... 247
1.8.3.11 获取子控件列表集 .......................................................................................................... 250
1.8.3.12 获取相邻后一个控件 ...................................................................................................... 252
1.8.3.13 获取父控件 ..................................................................................................................... 254
1.8.3.14 获取相邻前一个控件 ...................................................................................................... 257
1.8.3.15 窗口最大化 ..................................................................................................................... 259
1.8.3.16 窗口最小化 ..................................................................................................................... 260
1.8.3.17 移动窗口 ......................................................................................................................... 262
1.8.3.18 窗口居中 ......................................................................................................................... 263
1.8.3.19 设置窗口大小.................................................................................................................. 264
1.8.3.20 鼠标右键单击.................................................................................................................. 266
1.8.3.21 查找控件 ......................................................................................................................... 271
1.8.3.22 选择下拉框 ..................................................................................................................... 273
1.8.3.23 键盘输入 ......................................................................................................................... 275
1.8.3.24 窗口置顶 ......................................................................................................................... 278
1.8.3.25 显示桌面 ......................................................................................................................... 280
1.8.3.26 打开文件/应用程序 ......................................................................................................... 281
1.8.3.27 等待控件消失.................................................................................................................. 283
1.8.3.28 等待控件出现.................................................................................................................. 285
1.8.3.29 滚动条下拉 ..................................................................................................................... 288
1.8.3.30 滚动条上拉 ..................................................................................................................... 291
1.8.4 JavaSwing 应用 ............................................................................................................... 293
1.8.4.1 左键单击 ......................................................................................................................... 293
1.8.4.2 等待点击 ......................................................................................................................... 294
1.8.4.3 等待按钮消失.................................................................................................................. 295
1.8.4.4 选择单选框 ..................................................................................................................... 297
1.8.4.5 取选中框的值.................................................................................................................. 298
1.8.4.6 点击下拉列表.................................................................................................................. 299
1.8.4.7 取下拉列表值.................................................................................................................. 300
1.8.4.8 选择下拉列表.................................................................................................................. 302
1.8.4.9 居中弹窗 ......................................................................................................................... 303
1.8.4.10 关闭对话框 ..................................................................................................................... 304
1.8.4.11 等待窗体消失.................................................................................................................. 305
1.8.4.12 等待窗体出现.................................................................................................................. 307
1.8.4.13 保存文件 ......................................................................................................................... 308
1.8.4.14 等待主容器加载 .............................................................................................................. 309
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 vii
RPA
RPA 机器人开发指南 目 录
1.8.4.15 点击页签 ......................................................................................................................... 310
1.8.4.16 获取 label 的值 ................................................................................................................ 311
1.8.4.17 等待页签匹配.................................................................................................................. 313
1.8.4.18 等待页签出现.................................................................................................................. 314
1.8.4.19 点击列表选项.................................................................................................................. 315
1.8.4.20 获取选中列表项 .............................................................................................................. 317
1.8.4.21 选择列表选项.................................................................................................................. 318
1.8.4.22 点击菜单 ......................................................................................................................... 320
1.8.4.23 等待进度条加载 .............................................................................................................. 321
1.8.4.24 点击单选按钮.................................................................................................................. 322
1.8.4.25 拖动滚动条 ..................................................................................................................... 323
1.8.4.26 点击面板 ......................................................................................................................... 325
1.8.4.27 右击面板 ......................................................................................................................... 326
1.8.4.28 拖动滑块 ......................................................................................................................... 327
1.8.4.29 拖动窗格分割线 .............................................................................................................. 328
1.8.4.30 点击选项卡式窗格 .......................................................................................................... 329
1.8.4.31 点击单元格 ..................................................................................................................... 331
1.8.4.32 点击表头 ......................................................................................................................... 332
1.8.4.33 双击单元格 ..................................................................................................................... 333
1.8.4.34 获取目标行号.................................................................................................................. 335
1.8.4.35 获取表格总列数 .............................................................................................................. 336
1.8.4.36 获取表格总行数 .............................................................................................................. 338
1.8.4.37 获取单元格的内容 .......................................................................................................... 339
1.8.4.38 右击单元格 ..................................................................................................................... 341
1.8.4.39 右击表头 ......................................................................................................................... 342
1.8.4.40 右击选中单元格 .............................................................................................................. 343
1.8.4.41 全选表格 ......................................................................................................................... 344
1.8.4.42 批量选择列号.................................................................................................................. 346
1.8.4.43 批量选择行号.................................................................................................................. 347
1.8.4.44 单元格包含匹配值 .......................................................................................................... 348
1.8.4.45 等待单元格达到匹配值 .................................................................................................. 350
1.8.4.46 等待列达到匹配值 .......................................................................................................... 351
1.8.4.47 获取输入框值.................................................................................................................. 352
1.8.4.48 右击输入框 ..................................................................................................................... 354
1.8.4.49 点击输入框 ..................................................................................................................... 355
1.8.4.50 输入框输值 ..................................................................................................................... 356
1.8.4.51 点击开关按钮.................................................................................................................. 357
1.8.4.52 点击树的节点.................................................................................................................. 359
1.8.4.53 双击树的路径.................................................................................................................. 360
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 viii
RPA
RPA 机器人开发指南 目 录
1.8.4.54 右击树的节点.................................................................................................................. 362
1.8.4.55 选择树的路径.................................................................................................................. 363
1.8.4.56 点击面板坐标.................................................................................................................. 364
1.8.4.57 拖拽已选中的目标 .......................................................................................................... 366
1.8.4.58 右击 viewport 上的坐标 .................................................................................................. 367
1.8.4.59 连接 Java 程序................................................................................................................. 368
1.8.4.60 退出 java 应用 ................................................................................................................. 369
1.8.4.61 键盘按键 ......................................................................................................................... 370
1.8.5 JavaFx 应用 ..................................................................................................................... 371
1.8.5.1 左键单击 ......................................................................................................................... 371
1.8.5.2 点击复选框 ..................................................................................................................... 372
1.8.5.3 选择选择框 ..................................................................................................................... 373
1.8.5.4 选择颜色选择器 .............................................................................................................. 374
1.8.5.5 取下拉列表值.................................................................................................................. 376
1.8.5.6 选择下拉列表.................................................................................................................. 377
1.8.5.7 选择日期选择器 .............................................................................................................. 378
1.8.5.8 保存文件 ......................................................................................................................... 379
1.8.5.9 点击超链接 ..................................................................................................................... 381
1.8.5.10 点击页签 ......................................................................................................................... 382
1.8.5.11 获取 label 的值 ................................................................................................................ 383
1.8.5.12 等待页签消失.................................................................................................................. 384
1.8.5.13 点击列表 ......................................................................................................................... 385
1.8.5.14 点击菜单 ......................................................................................................................... 387
1.8.5.15 菜单按钮点击.................................................................................................................. 388
1.8.5.16 菜单按钮选择.................................................................................................................. 389
1.8.5.17 菜单项容器点击 .............................................................................................................. 390
1.8.5.18 点击单选按钮.................................................................................................................. 391
1.8.5.19 拖动滚动条 ..................................................................................................................... 392
1.8.5.20 设置滚动面板区域 .......................................................................................................... 394
1.8.5.21 拖动滑块 ......................................................................................................................... 395
1.8.5.22 遍历单行文本域 .............................................................................................................. 396
1.8.5.23 选择拆分菜单按钮 .......................................................................................................... 397
1.8.5.24 滑动分割面板.................................................................................................................. 399
1.8.5.25 选择面板 ......................................................................................................................... 400
1.8.5.26 点击单元格 ..................................................................................................................... 401
1.8.5.27 点击表头 ......................................................................................................................... 402
1.8.5.28 双击单元格 ..................................................................................................................... 404
1.8.5.29 右击单元格 ..................................................................................................................... 405
1.8.5.30 右击表头 ......................................................................................................................... 406
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 ix
RPA
RPA 机器人开发指南 目 录
1.8.5.31 获取输入框值.................................................................................................................. 407
1.8.5.32 点击框输值 ..................................................................................................................... 408
1.8.5.33 输入框输值 ..................................................................................................................... 410
1.8.5.34 选择标题面板.................................................................................................................. 411
1.8.5.35 点击开关按钮.................................................................................................................. 412
1.8.5.36 点击树的路径.................................................................................................................. 413
1.8.5.37 等待窗体消失.................................................................................................................. 414
1.8.5.38 等待窗体出现.................................................................................................................. 416
1.8.5.39 连接 Java 程序................................................................................................................. 417
1.8.5.40 退出 java 应用 ................................................................................................................. 418
1.8.5.41 键盘按键 ......................................................................................................................... 418
1.8.6 图像处理 ......................................................................................................................... 419
1.8.6.1 单击区域内图片 .............................................................................................................. 419
1.8.6.2 单击图片 ......................................................................................................................... 420
1.8.6.3 图片比对 ......................................................................................................................... 421
1.8.6.4 双击区域内图片 .............................................................................................................. 423
1.8.6.5 双击图片 ......................................................................................................................... 424
1.8.6.6 输入字符串 ..................................................................................................................... 425
1.8.6.7 设置窗口外形.................................................................................................................. 426
1.8.6.8 键盘事件 ......................................................................................................................... 427
1.8.6.9 鼠标事件 ......................................................................................................................... 428
1.8.6.10 右键区域内图片 .............................................................................................................. 430
1.8.6.11 右键图片 ......................................................................................................................... 431
1.8.6.12 等待图片出现.................................................................................................................. 432
1.8.6.13 等待图片消失.................................................................................................................. 434
1.8.7 控制台操作 ..................................................................................................................... 435
1.8.7.1 关闭远程服务器连接 ...................................................................................................... 435
1.8.7.2 登录远程服务器 .............................................................................................................. 436
1.8.7.3 远程服务器执行命令 ...................................................................................................... 438
1.8.7.4 关闭服务器连接 .............................................................................................................. 440
1.8.7.5 连接远程服务器 .............................................................................................................. 441
1.8.7.6 从服务器下载文件 .......................................................................................................... 444
1.8.7.7 获取服务端目录文件列表 ............................................................................................... 445
1.8.7.8 创建服务器目录 .............................................................................................................. 446
1.8.7.9 删除服务端目录 .............................................................................................................. 447
1.8.7.10 删除服务端目标文件 ...................................................................................................... 448
1.8.7.11 向服务器上传文件 .......................................................................................................... 449
1.8.8 邮件 ................................................................................................................................. 451
1.8.8.1 删除邮件 ......................................................................................................................... 451
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 x
RPA
RPA 机器人开发指南 目 录
1.8.8.2 获取邮件文件路径 .......................................................................................................... 452
1.8.8.3 imap 获取邮件 ................................................................................................................. 453
1.8.8.4 mapi 获取邮件 ................................................................................................................. 457
1.8.8.5 outlook 发送邮件 ............................................................................................................. 461
1.8.8.6 pop 获取邮件 .................................................................................................................. 463
1.8.8.7 smtp 发送邮件 ................................................................................................................. 468
1.8.9 Excel 表格操作................................................................................................................ 472
1.8.9.1 插入图片 ......................................................................................................................... 472
1.8.9.2 增加 sheet 页 ................................................................................................................... 474
1.8.9.3 打开 excel 文件 ............................................................................................................... 475
1.8.9.4 自动填充 ......................................................................................................................... 477
1.8.9.5 筛选表格数据.................................................................................................................. 478
1.8.9.6 计算单元格偏移后的坐标 ............................................................................................... 480
1.8.9.7 关闭工作簿 ..................................................................................................................... 482
1.8.9.8 复制粘贴 ......................................................................................................................... 483
1.8.9.9 拷贝粘贴 sheet ................................................................................................................ 484
1.8.9.10 创建透视表 ..................................................................................................................... 486
1.8.9.11 创建表格 ......................................................................................................................... 488
1.8.9.12 删除列 ............................................................................................................................. 489
1.8.9.13 删除单元格 ..................................................................................................................... 490
1.8.9.14 删除行 ............................................................................................................................. 491
1.8.9.15 执行 excel 中的宏 ........................................................................................................... 492
1.8.9.16 获取单元格属性 .............................................................................................................. 493
1.8.9.17 获取单元格颜色 .............................................................................................................. 494
1.8.9.18 获取列数 ......................................................................................................................... 496
1.8.9.19 获取行数 ......................................................................................................................... 497
1.8.9.20 获取 sheet 名称 ............................................................................................................... 498
1.8.9.21 获取所有 sheet 名称 ........................................................................................................ 499
1.8.9.22 插入列 ............................................................................................................................. 500
1.8.9.23 插入行 ............................................................................................................................. 502
1.8.9.24 调用外部的 vba 函数 ...................................................................................................... 503
1.8.9.25 结束 Excel 进程 ............................................................................................................... 504
1.8.9.26 获取内容位置.................................................................................................................. 505
1.8.9.27 合并单元格 ..................................................................................................................... 507
1.8.9.28 获取区域包含的单元格列表 ........................................................................................... 508
1.8.9.29 获取单元格文本 .............................................................................................................. 509
1.8.9.30 获取单元格公式 .............................................................................................................. 511
1.8.9.31 获取某列单元格文本 ...................................................................................................... 512
1.8.9.32 获取单元格批注文本 ...................................................................................................... 513
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 xi
RPA
RPA 机器人开发指南 目 录
1.8.9.33 获取 range/sheet 批注文本 .............................................................................................. 514
1.8.9.34 获取区域文本.................................................................................................................. 516
1.8.9.35 获取某行单元格文本 ...................................................................................................... 517
1.8.9.36 提取 sheet 内容 ............................................................................................................... 519
1.8.9.37 刷新透视表 ..................................................................................................................... 520
1.8.9.38 删除重复行 ..................................................................................................................... 521
1.8.9.39 删除 sheet 页 ................................................................................................................... 522
1.8.9.40 重命名 sheet 页 ............................................................................................................... 523
1.8.9.41 另存为工作簿.................................................................................................................. 525
1.8.9.42 保存工作簿 ..................................................................................................................... 527
1.8.9.43 选定区域单元格 .............................................................................................................. 527
1.8.9.44 激活 sheet ........................................................................................................................ 528
1.8.9.45 设置范围背景颜色 .......................................................................................................... 530
1.8.9.46 写入单元格 ..................................................................................................................... 531
1.8.9.47 写入范围单元格 .............................................................................................................. 532
1.8.10 Word 文档操作 ................................................................................................................ 533
1.8.10.1 文档末尾添加图片 .......................................................................................................... 533
1.8.10.2 文档末尾追加文本 .......................................................................................................... 534
1.8.10.3 打开 word ........................................................................................................................ 535
1.8.10.4 关闭 word ........................................................................................................................ 536
1.8.10.5 导出为 pdf 文件 .............................................................................................................. 536
1.8.10.6 添加表格 ......................................................................................................................... 537
1.8.10.7 读取 word 文档 ............................................................................................................... 541
1.8.10.8 替换图片 ......................................................................................................................... 542
1.8.10.9 替换 word 文档 ............................................................................................................... 543
1.8.10.10 更改书签的内容 .............................................................................................................. 545
1.8.11 文件处理 ......................................................................................................................... 546
1.8.11.1 复制文件/目录 ................................................................................................................ 546
1.8.11.2 创建文件/目录 ................................................................................................................ 550
1.8.11.3 列出目录下的文件 .......................................................................................................... 551
1.8.11.4 移动文件 ......................................................................................................................... 553
1.8.11.5 删除文件/目录 ................................................................................................................ 554
1.8.11.6 重命名文件 ..................................................................................................................... 555
1.8.11.7 将图片生成为 pdf 文件 ................................................................................................... 556
1.8.11.8 PDF 合并 ......................................................................................................................... 557
1.8.11.9 PDF 转为图片 ................................................................................................................. 558
1.8.11.10 读取 json 文件 ................................................................................................................. 560
1.8.11.11 读取 pdf 文件 .................................................................................................................. 561
1.8.11.12 读取文本文件.................................................................................................................. 562
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 xii
RPA
RPA 机器人开发指南 目 录
1.8.11.13 读取 xps 文件 .................................................................................................................. 563
1.8.11.14 PDF 拆分 ......................................................................................................................... 566
1.8.11.15 解压文件 ......................................................................................................................... 567
1.8.11.16 写 csv 文件 ...................................................................................................................... 568
1.8.11.17 写 html 文件 .................................................................................................................... 571
1.8.11.18 写 json 文件 ..................................................................................................................... 573
1.8.11.19 写文本文件 ..................................................................................................................... 575
1.8.11.20 写 excel 文件 ................................................................................................................... 578
1.8.11.21 压缩文件 ......................................................................................................................... 580
1.8.12 二维数据处理.................................................................................................................. 582
1.8.12.1 将 csv 文件转为 excel 文件格式 ..................................................................................... 582
1.8.12.2 获取表格数据.................................................................................................................. 583
1.8.12.3 将数据存到 pandas 表 ..................................................................................................... 584
1.8.12.4 排序 pandas 表................................................................................................................. 585
1.8.12.5 执行 sql 语句 ................................................................................................................... 586
1.8.12.6 df 表格导出为 csv 文件 ................................................................................................... 587
1.8.12.7 df 表格导出为 excel 文件 ................................................................................................ 588
1.8.12.8 DataFrame 转置 ............................................................................................................... 589
1.8.13 系统 ................................................................................................................................. 591
1.8.13.1 截图 ................................................................................................................................. 591
1.8.13.2 时间戳转化为时间格式 .................................................................................................. 592
1.8.13.3 时间转化为时间戳 .......................................................................................................... 593
1.8.13.4 使用 eSpace 发送信息 ..................................................................................................... 594
1.8.13.5 获取剪贴板 ..................................................................................................................... 597
1.8.13.6 根据当前时间获取时间节点 ........................................................................................... 598
1.8.13.7 判断文件存在.................................................................................................................. 600
1.8.13.8 选择文件/目录 ................................................................................................................ 601
1.8.13.9 保存到剪贴板.................................................................................................................. 603
1.8.13.10 使用扬声器发出提示音 .................................................................................................. 604
1.8.13.11 获取主机名 ..................................................................................................................... 605
1.8.13.12 获取 ip 地址 .................................................................................................................... 605
1.8.13.13 获取 mac 地址信息 ......................................................................................................... 606
1.8.13.14 输入对话框 ..................................................................................................................... 607
1.8.14 数据库 ............................................................................................................................. 608
1.8.14.1 连接数据库 ..................................................................................................................... 608
1.8.14.2 调用存储过程.................................................................................................................. 610
1.8.14.3 关闭数据库连接对象 ...................................................................................................... 611
1.8.14.4 连接数据库 ..................................................................................................................... 612
1.8.14.5 执行 sql 语句 ................................................................................................................... 614
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 xiii
RPA
RPA 机器人开发指南 目 录
1.8.14.6 执行查询 sql 语句 ........................................................................................................... 617
1.8.14.7 断开数据库 ..................................................................................................................... 619
1.8.14.8 删除 mongodb 数据库中匹配到的所有数据 ................................................................... 620
1.8.14.9 查询 mongodb 数据库的数据 .......................................................................................... 621
1.8.14.10 向 mongodb 数据库插入数据 .......................................................................................... 622
1.8.14.11 修改 mongodb 数据库匹配到的数据 .............................................................................. 624
1.8.15 图像识别 ......................................................................................................................... 625
1.8.15.1 OCR 识别身份证图片 ..................................................................................................... 625
1.8.15.2 OCR 识别结婚证 ............................................................................................................. 627
1.8.15.3 OCR 识别表格图片 ......................................................................................................... 629
1.8.15.4 OCR 识别火车票 ............................................................................................................. 631
1.8.15.5 OCR 识别增值税发票 ..................................................................................................... 633
1.8.15.6 离线识别图片内容 .......................................................................................................... 635
1.8.15.7 在线识别图片内容 .......................................................................................................... 636
1.8.15.8 对二维码进行解析并返回数据 ....................................................................................... 639
1.8.15.9 二维码传输方案接收数据 ............................................................................................... 640
1.8.15.10 二维码传输方案发送数据 ............................................................................................... 642
1.8.15.11 拍照 ................................................................................................................................. 644
1.8.15.12 数据生成二维码 .............................................................................................................. 645
1.8.16 Jab 应用 ........................................................................................................................... 648
1.8.16.1 左键单击 ......................................................................................................................... 648
1.8.16.2 等待点击 ......................................................................................................................... 649
1.8.16.3 等待按钮消失.................................................................................................................. 650
1.8.16.4 选择复选框 ..................................................................................................................... 651
1.8.16.5 取选中框的值.................................................................................................................. 652
1.8.16.6 点击下拉列表.................................................................................................................. 653
1.8.16.7 取下拉列表值.................................................................................................................. 654
1.8.16.8 选择下拉列表.................................................................................................................. 655
1.8.16.9 居中弹窗 ......................................................................................................................... 656
1.8.16.10 关闭对话框 ..................................................................................................................... 657
1.8.16.11 等待窗体消失.................................................................................................................. 658
1.8.16.12 等待窗体出现.................................................................................................................. 659
1.8.16.13 等待主容器加载 .............................................................................................................. 660
1.8.16.14 点击标签 ......................................................................................................................... 661
1.8.16.15 获取 label 的值 ................................................................................................................ 662
1.8.16.16 等待标签匹配.................................................................................................................. 663
1.8.16.17 等待标签出现.................................................................................................................. 664
1.8.16.18 点击列表选项.................................................................................................................. 665
1.8.16.19 获取选中列表项 .............................................................................................................. 667
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 xiv
RPA
RPA 机器人开发指南 目 录
1.8.16.20 点击菜单 ......................................................................................................................... 668
1.8.16.21 左击菜单控件.................................................................................................................. 669
1.8.16.22 左击 Panel 类型的窗口 ................................................................................................... 670
1.8.16.23 等待进度条加载 .............................................................................................................. 671
1.8.16.24 点击单选按钮.................................................................................................................. 672
1.8.16.25 拖动滚动条 ..................................................................................................................... 673
1.8.16.26 点击面板 ......................................................................................................................... 674
1.8.16.27 右击面板 ......................................................................................................................... 675
1.8.16.28 拖动滑块 ......................................................................................................................... 677
1.8.16.29 拖动窗格分割线 .............................................................................................................. 678
1.8.16.30 点击选项卡式窗格 .......................................................................................................... 679
1.8.16.31 点击单元格 ..................................................................................................................... 680
1.8.16.32 点击表头 ......................................................................................................................... 681
1.8.16.33 双击单元格 ..................................................................................................................... 682
1.8.16.34 获取目标行号.................................................................................................................. 683
1.8.16.35 获取表格总列数 .............................................................................................................. 685
1.8.16.36 获取表格总行数 .............................................................................................................. 686
1.8.16.37 获取单元格的内容 .......................................................................................................... 687
1.8.16.38 右击单元格 ..................................................................................................................... 689
1.8.16.39 右击表头 ......................................................................................................................... 690
1.8.16.40 全选表格 ......................................................................................................................... 691
1.8.16.41 批量选择行号.................................................................................................................. 692
1.8.16.42 单元格包含匹配值 .......................................................................................................... 693
1.8.16.43 等待单元格达到匹配值 .................................................................................................. 694
1.8.16.44 等待列达到匹配值 .......................................................................................................... 696
1.8.16.45 获取输入框值.................................................................................................................. 697
1.8.16.46 右击输入框 ..................................................................................................................... 698
1.8.16.47 点击输入框 ..................................................................................................................... 699
1.8.16.48 输入框输值 ..................................................................................................................... 700
1.8.16.49 点击开关按钮.................................................................................................................. 701
1.8.16.50 点击树的节点.................................................................................................................. 702
1.8.16.51 双击树的节点.................................................................................................................. 704
1.8.16.52 右击树的节点.................................................................................................................. 705
1.8.16.53 点击面板坐标.................................................................................................................. 706
1.8.16.54 拖拽已选中的目标 .......................................................................................................... 707
1.8.16.55 右击 viewport 上的坐标 .................................................................................................. 708
1.8.16.56 键盘按键 ......................................................................................................................... 709
1.8.17 UI 通用操作 .................................................................................................................... 711
1.8.17.1 左击控件 ......................................................................................................................... 711
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 xv
RPA
RPA 机器人开发指南 目 录
1.8.17.2 双击控件 ......................................................................................................................... 711
1.8.17.3 右击控件 ......................................................................................................................... 712
1.8.18 管理中心操作.................................................................................................................. 713
1.8.18.1 从 APP 下载文件 ............................................................................................................ 713
1.8.18.2 上传文件至 APP ............................................................................................................. 715
1.8.18.3 调用 App 服务 ................................................................................................................. 716
1.8.18.4 删除文件 ......................................................................................................................... 717
1.8.18.5 下载文件 ......................................................................................................................... 718
1.8.18.6 查询文件 ......................................................................................................................... 720
1.8.18.7 上传文件 ......................................................................................................................... 721
1.8.18.8 查询全局参数.................................................................................................................. 722
1.8.18.9 添加单条数据到队列 ...................................................................................................... 723
1.8.18.10 添加多条数据到队列 ...................................................................................................... 725
1.8.18.11 消费队列数据.................................................................................................................. 726
1.8.18.12 从队列里查询数据 .......................................................................................................... 728
1.8.18.13 设置队列数据的值 .......................................................................................................... 730
1.8.18.14 设置队列数据的预期时间 ............................................................................................... 732
1.8.18.15 设置队列数据的处理进度 ............................................................................................... 734
1.8.18.16 设置队列数据的状态 ...................................................................................................... 735
1.8.18.17 设置队列数据的 json 数据 .............................................................................................. 737
1.8.18.18 更新全局参数.................................................................................................................. 738
1.9 安全风险说明.................................................................................................................. 740
1.10 附录 ................................................................................................................................. 740
1.10.1 附录一 文件校验类型说明 ............................................................................................. 740
1.10.2 附录二 快捷键说明 ........................................................................................................ 740
1.10.3 附录三 配置文件说明 .................................................................................................... 741
1.10.4 附录四 Robot 支持的异常列表 ...................................................................................... 743
1.10.5 附录五 Chrome 浏览器导出数字证书 ............................................................................ 775
1.10.6 附录六 sendkeys 功能键对照表 ..................................................................................... 780
1.11 FAQ ................................................................................................................................. 782
1.11.1 未申请许可 ..................................................................................................................... 782
1.11.2 未导入 web 驱动 ............................................................................................................. 783
1.11.3 申请许可和导入 web 驱动异常,服务未启动,请重启应用 ......................................... 784
1.11.4 安装 Studio 的时候安装目录带有中文特殊字符、“.”和空格 ...................................... 784
1.11.5 常见回放问题.................................................................................................................. 784
1.11.5.1 回放时,工作目录路径中含有空格,导致回放失败 ..................................................... 784
1.11.5.2 studio 回放失败 ............................................................................................................... 784
1.11.5.3 回放时,程序报错 OSError: [WinError 126]找不到指定模块 ........................................ 785
1.11.5.4 Java 应用程序回放,如何配置 JRE .............................................................................. 785
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 xvi
RPA
RPA 机器人开发指南 目 录
1.11.5.5 对于回放过程中,什么情况下可能需要将 delay 值加长 ............................................... 785
1.11.5.6 studio 服务证书怎么删除 ................................................................................................ 785
1.11.5.7 Win10 环境下 Robot.exe 回放过程当中,鼠标点击到 app 之外的地方,或者鼠标点击的
控件位置不准确,且日志当中不报错 ................................................................................................................... 785
1.11.5.8 为什么有时 win32 算子处理过程时间过长? ................................................................ 786
1.11.5.9 程序报错 com.sun.tools.attach.AttachNotSupportedException:no providers installed ........ 786
1.11.5.10 当 Parameters 和 Variables 的 Name 都是“demo”, Parameters 的 Value 值会覆盖
Variables 的 Value 值吗?当 robot 命令的返回值 return 也是“demo”,执行该命令后,会覆盖 Parameters 和
Variables 的 Name 同是“demo”的 Value 值吗 ..................................................................................................... 786
1.11.5.11 录制从 ie 浏览器打开的 java 小程序为什么失败? ....................................................... 786
1.11.6 极少部分操作系统默认缺少 C++依赖库,而 Robot 包需要依赖执行机系统环境中缺少
的 C++库 787
1.11.7 Pandas 报错 importerror DLL load failed........................................................................ 788
1.11.8 IE 录制常见问题 ............................................................................................................. 789
1.11.8.1 IE 浏览器没有按要求配置 .............................................................................................. 789
1.11.8.2 获取的 XPATH 与 CHROME 手动获取一致,用 SELENUIM 回放无法获取元素 ........ 789
1.11.9 IE 回放常见问题 ............................................................................................................. 790
1.11.9.1 quit 命令无法关闭多选项卡............................................................................................ 790
1.11.9.2 无法加载运行脚本或 active 控件 .................................................................................... 790
1.11.9.3 点击 IE 回放,反复出现 IE 浏览器的窗口..................................................................... 790
1.11.9.4 点击回放报错.................................................................................................................. 791
1.11.9.5 IE 页面多个元素 ID 相同问题 ........................................................................................ 791
1.11.9.6 点击链接,打开新窗口,会重新跳转到登录界面(cookie or session lost) ................. 792
1.11.9.7 senkeys 命令相关 ............................................................................................................ 792
1.11.9.8 IE 进程残留问题 ............................................................................................................. 792
1.11.9.9 com 回放报找不到命令................................................................................................... 792
1.11.9.10 com 回放 click 命令不触发 ............................................................................................. 793
1.11.9.11 com 回放报入参格式校验类型的错误 ............................................................................ 793
1.11.9.12 com 模式元素定位格式不匹配 ....................................................................................... 793
1.11.9.13 点击弹框命令,弹框被阻止,导致接下来的流程出现问题.......................................... 793
1.11.10 Jab 录制和回放常见问题 ................................................................................................ 794
1.11.11 Chrome 和 firefox 浏览器录制回放相关 ......................................................................... 794
1.11.11.1 firefox 浏览器,使用本地配置时(use_local_config 为 True),本地配置为中文,自动化
打开的窗口有部分窗口的浏览器界面不是中文 .................................................................................................... 794
1.11.11.2 项目使用 firefox 浏览器进行回放,使用本地浏览器配置(use_local_config 为 True),
本地语言修改为英语(英国),在回放时点击一个链接跳转到一个新窗口后,浏览器的语言显示为中文........ 795
1.11.11.3 web 元素捕获,firefox 浏览器捕获插件安装步骤: ..................................................... 795
1.11.11.4 Chrome 回放控件抓取插件无效 ..................................................................................... 795
1.11.11.5 Chrome 回放提示加载插件失败 ..................................................................................... 795
1.11.11.6 当在 web 自动化流程中下载 exe,msi 或 bat 等可能涉及计算机安全的文件类型时,左
下角会出现浏览器的安全弹框,显示“此类型的文件可能会损害您的计算机。您仍然要保留 xxx 吗?" ........ 796
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 xvii
RPA
RPA 机器人开发指南 目 录
1.11.12 windows7、8、2012server 常见问题 .............................................................................. 796
1.11.12.1 在 2012server 操作系统的执行机中,由于系统缺少中文字体库,当工程 xml 中命令描
述等使用中文时,可能导致 robot 及 studio 的终端日志输出不了中文,从而导致回放时终端日志显示异常.... 796
1.11.12.2 Window7,ImportError: DLL load failed while importing win32api:参数错误 .............. 796
1.11.12.3 citrix 报“DLL load failed:找不到指定的模块”错误,如下图红框所示,windows2008
和 windows2012 环境下分别怎么解决 ................................................................................................................... 797
1.11.12.4 中文乱码问题 windows Server 2012 系统默认就是英文的,desc 为中文或项目路径带中
文时可能出现乱码、错误等 ................................................................................................................................... 798
1.11.12.5 windows server2012 在全局 license 的情况下或加解密或管理中心操作下的相关原子命
令,报错 RobotConnectionError("Communication with Studio or Agent failed.") .................................................... 798
1.11.13 web 元素捕获,firefox 浏览器捕获插件安装步骤: ..................................................... 801
1.11.14 路径参数如何使用特殊字符 ........................................................................................... 801
1.11.15 Studio 高缩放比下显示问题 ........................................................................................... 802
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 xviii
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1 RPA 机器人开发指南
1.1 介绍
1.2 安装&配置
1.3 基本概念
1.4 第一个例子
1.5 录制和回放
1.6 逻辑
1.7 高级特性
1.8 原子活动
1.9 安全风险说明
1.10 附录
1.11 FAQ
1.1 介绍
1.1.1 HUAWEI AntRobot 的整体介绍
RPA 被认为是广义的业务流程自动化的一部分。 RPA 或机器人流程自动化是一种使计
算机软件能够模拟和集成通常由人类与数字系统进行交互的动作的技术。 RPA 机器人
能够捕获数据,运行应用程序,触发响应,基于预定义规则做出决定并与其他系统通
信。 RPA 要针对高度手动,重复,基于规则,系统异常率低的标准数字输入的流程。
在传统的工作流自动化工具中,软件开发人员会使用内部应用程序编程接口( API )
或专用语言生成一系列操作,以自动化任务和与后端系统的接口。相反,RPA 系统通
过观察用户在应用程序的图形用户界面( GUI )中执行该任务,然后通过直接在
GUI 中重复这些任务来执行自动化操作。这可以降低在可能没有 API 的产品中使用自
动化的障碍。另一个方面,业务的快速发展和迭代使基于 API 的开发方式很难跟上业
务发展的需求。和 API 集成的开发方式相比,RPA 的开发速度有数量级的提升。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 1
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
RPA 工具与图形用户界面测试工具具有很强的技术相似性。这些工具可以自动执行与
GUI 的交互,并且通常通过重复用户执行的一组演示动作来实现。 RPA 工具不同于此
类系统,其功能包括允许在多个应用程序之内和之间处理数据,例如,接收包含发票
的电子邮件,提取数据,然后将其输入财 务系统。
RPA 在实施中也存在一些风险。包括为现有软件创建更复杂的维护环境的风险,部分
应用使用图形用户界面来集成在某些场景下不是最高效和稳定的。
总体来说, RPA 被认为是数字化转型最有效的方法之一。 RPA 解决方案可以看作是
虚拟机器人劳动力,其操作管理由业务线(仅由 IT 支持)进行,就像人工劳动力一
样。
Huawei AntRobot RPA 包括 Studio(机器人流程设计器),Management Center(机器人
管理中心)和 Robot(机器人执行器)。它们之间的关系可以类比为电影编剧、导演和
演员的关系。Studio 根据需求设计和实现 RPA 自动化流程(类似于编剧设定场景和对
白),Robot 负责执行 Studio 设计好的自动化流程(类似于演员完成根据剧本完成表
演)。管理中心负责调度和编排各个自动化流程(类似于导演现场调度演员的表演)。
1.1.2 HUAWEI AntRobot Robot
执行本地触发或通过 Management Center 发起的工作流程。流程一般在 Studio 中设计和
开发。
1.1.3 HUAWEI AntRobot Studio
仅通过基本的编程知识即可帮助您直观,快速地设计自动化工作流程。在 Studio 中,
可以使用内置录制器,拖放活动以可视方式构建自动化流程。Studio 内置 Robot,可以
方便地在 Studio 中通过图形化界面触发业务流程的执行。
1.1.4 HUAWEI AntRobot Management Center
使您可以控制,管理和监控机器人。它也是存储机器人使用的库,可重用组件,资产
和流程的地方。Management Center 是通过浏览器访问的服务器应用程序,通过它可以
控制,管理和监控机器人:
创建并维护与机器人的连接,并将机器人分组(控制)
自动化过程作为任务分配给机器人(管理)
记录任务的执行并跟踪(监控)
1.2 安装&配置
建议将 studio 安装在 C:\Program Files 下。
证书和审计日志放在用户目录做用户隔离。
Windows2012 操作系统不支持 studio。
1.2.1 Studio 安装&配置
请参考开发者在线课程
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 2
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
为保证 studio 正常安装并使用,请预留足够的空间>3G
1.2.2 证书管理
证书管理是为了加强服务端和客户端之间信息交互的安全性,防止用户个人信息被恶意攻击
窃取。
由 CA 机构发布的可信证书不需要导入,比如 https://www.baidu.com/
证书获取
1. web:以 chrome 浏览器为例,请参考附录 1.10.5
2. 远程服务器:请找对应服务器管理员获取
“证书管理”页面用于 Huawei AntRobot Studio 与管理中心建立安全连接的证书和资产
包(机器人)证书。
1.打开 Huawei AntRobot Studio,点击设置——》证书管理。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 3
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
2.点击服务证书导入按钮,选择服务证书文件,点击确定。
3.点击吊销列表导入按钮,选择证书吊销列表文件,点击确定。
4.点击资产包证书更新按钮,手动输入或者点击选择新证书的路径、新密钥库路径,输
入新密钥库密码,点击确定。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 4
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
导入的服务证书和吊销列表必须是.zip 格式。
1.2.3 管理中心配置
管理中心配置页面用于 studio 与管理中心的连接设置,包括管理中心主机、端口、设
计器 ID、机机账号和机机密码。
允许通过以下两种方式修改连接配置:
导入从管理中心下载的配置包(推荐)
手动修改并保存
管理中心配置页面:
1.基本配置:
方式一:手动输入设计器 id、管理中心主机、管理中心端口,点击保存
方式二:点击导入配置,选择从管理中心下载的配置包导入。如果该配置包的校验证
书不存在于信任证书库中,需要对该证书的安全性进行确认。点击信任此证书,提示
导入成功。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 5
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
2.代理配置。在“是否开启代理”设置项勾选“是”复选框,然后输入代理账号、代理
密码、代理主机和代理端口,点击保存按钮,此时会弹出保存成功提示。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 6
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
代理账号、代理密码、代理主机均不能为空,代理端口可不填。
3.接入连接。输入机机账号和机机密码。先点击“检查连接”,提示连接成功后,再点
击保存,提示保存成功。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 7
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.3 基本概念
1.3.1 界面布局说明
1.3.1.1 HUAWEI AntRobot Studio 主界面
① 最左上方为菜单栏,依次为开始、设计、设置、帮助;
② 最上方是工具栏,有 Web 录制按钮,App 录制按钮,运行按钮,调试按钮,保存
按钮,发布按钮;
③ 左边为工作流项目显示和原子活动显示区域;
④ 中间为文件编辑区域,可编辑的文件包括 main.xml 或子脚本;
⑤ 中间的右上角工具依次为简洁模式、撤销、恢复、放大、缩小、概览、自动布局、
收起侧边栏、清空;
⑥ 最右边为属性查看编辑区域,当单击不同的文件,会显示不同文件的属性和可编
辑当前脚本的输入输出参数;
⑦ 最下面的是编译或运行时的日志信息查看和常量以及参数的编辑区域,当 Studio
启动运行后会打印日志在该区域。Studio 支持语言版本:中文简体、英文,在上方的
“帮助”菜单栏下的“切换语言”菜单栏中即可切换语言。
1.3.1.2 国际化
Studio 支持语言版本:中文简体、英文,在上方的“帮助 ”菜单栏下的“切换语言 ”
菜单栏中即可切换语言。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 8
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.3.1.3 工具栏功能介绍
工具栏中的每个工具都有自己的作用,鼠标悬浮在每个工具上面会显示该工具的具体
功能。
1.3.1.3.1 录制回放模块
录制回放模块包括 Web 录制、App 录制、运行,分别对应图中的工具栏图标。
Web 录制:录制一个 Web 程序,可选择录制并插入到流程最末、清空并录制、新建子
脚本并录制。比如打开百度,一个录制操作中包含很多用户的鼠标点击、键盘输入等
操作。
App 录制:录制一个本地的 Windows 应用程序或者远程桌面应用程序,可选择录制并
插入到流程最末、清空并录制、新建子脚本并录制。比如打开本地的记事本程序,然
后输入文本,最后单击“ 保存”进行保存,和 Web 录制一样,一个录制操作中包含
很多用户的鼠标点击、键盘输入等操作。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 9
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
运行:运行即回放,可以运行当前脚本也可运行主脚本。是指将录制好的文件通过
Studio 的回放功能重新播放一遍。
停止回放:当点击运行后,按钮会显示停止回放。停止回放是指在回放的过程中单击
“停止回放 ” 按钮,回放就会在当前位置停止。
1.3.1.3.2 调试模块
调试模块分为:调试当前脚本、调试主脚本。主要是通过在工作流图中右键设置断点,
录制程序会从断点处一步一步向下运行,这有助于发现录制过程中的一些问题。
如下图所示,四个按钮是从左到右依次为“重新开始”“下一步” 、“下一个断点” 、
“退出 ”,“下一步 ”对应键盘上的 F6 键,“下一个断点”对应键盘上的 F8 键,单击
“下一步 ”,录制程序会从断点处一步一步向下运行,进行调试,单击 “下一个断
点 ”,录制程序会直接跳到下一个断点处往下进行调试。
1.3.1.3.3 其他功能模块
其他功能模块包括简洁模式、撤销、恢复、放大、缩小、概览、自动布局、收起侧边
栏、清空,分别对应图中的工具栏图标。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 10
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
简洁模式:当点击开启为简洁模式时,原子命令图元处不显示参数,只能在参数属性
栏中编辑,反之,原子命令图元处可以编辑必填参数。
撤销:恢复当前的操作到上一步,即回到上一步操作。
恢复:和撤销相反,当停留在之前的操作时,单击恢复可以回到之前操作的下一步,
直至所做的操作是最新的。
放大缩小:对画布中的工作流图进行放大和缩小。
概览:画布的整体缩略图。
自动布局:让工作流图显示在画布的正中间。
收起侧边栏:收起画布两边的侧边栏。
清空:清空当前画布所有的控件
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 11
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.3.2 原子活动界面
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 12
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
原子活动界面主要是 Studio 提供的一些命令,通过单击这些命令,用户能够很快了解
某个命令的属性以及该命令的使用方法。不同的命令有不同的属性参数,属性参数是
用户需要输入的地方,带“*”是必填的其它是非必填的。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 13
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
示例是为了让我们更好的了解该命令的用法,结合参数说明能够帮我们加深对该命令
的了解。
帮助是为了让我们弄清楚每个命令的含义以及用法,在填属性参数的时候可以结合起
来看,会更清楚怎么去填这些属性参数。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 14
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.4 第一个例子
1.4.1 打开记事本输入文字并保存
在学习 studio 的录制之前,我们可以先直接录制一个打开 Windows 记事本程序,输入
文字,并保存的 case,来验证 Huawei AntRobot Studio 录制功能。该 case 过程如下:
1.双击打开本地的 Huawei AntRobot Studio 软件,如图下所示:
2.在主界面中鼠标单击工具栏的开始工具:
①打开项目:打开一个 Studio 工程,选择 Studio 工程目录下的文件夹,即可打开该工
程。
②选择最近编辑的项目
③从模板创建
④新建项目:在弹出的创建项目界面,输入项目名称、保存路径、描述,带*号的为必
填项,然后单击“ 创建”。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 15
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
目录结构如下:
工程的输入( Input)执行结果输出(Output)文件、截图(ScreenShot)、脚本文件
(Project)、图像识别的截图(Pic)、项目基本信息(Robot.json)、项目基本信息
(Robot.xml)、一键打开项目(***.rpa 文件)。
3.创建完项目后,鼠标单击工具栏中的 App 录制工具,如下图所示:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 16
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
4. 在弹出的录制界面中的单击“Record”按钮,如下图所示:
5.打开 Windows 记事本程序,输入"Hello world!”。
6.单击“文件 ”,在弹出的下拉菜单中选择“保存 ” 。
7.单击保存后,在弹窗中文件名处输入“helloworld”,然后再单击“保存 ”。
8. 完成保存后,单击记事本的“关闭 ”按钮关闭记事本。
9.最后单击录制界面的 Finish 按钮完成录制,点击 Save And Close 保存录制并关闭
Recorder,如下图所示:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 17
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
10.打开 Studio,即可看到完整的操作流程图,如下图所示:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 18
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
11. 单击 Studio 上的运行按钮,将启动机器人的回放,如下图所示:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 19
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.5 录制和回放
录制时,如果是敏感数据如密码,录制无法判断哪个为密码输入框,用户需要在录制完成后
右键设置加密标志,此时会在值列加上一个钥匙的图标,此类数据将作为敏感数据加密存储,
不会在页面明文显示,也不会导出。如果用户需要导出,建议使用动态传参@{},在云管理
中心创建任务时再设置参数值。
studio 不支持本地网页的录制,拾取和回放。
1.5.1 录制和回放 Web 程序
首先,打开 Huawei AntRobot Studio,单击 Web 录制图标,会弹出华为 RPA 网页录制器
的对话窗口,填入需要录制的网址,然后单击“开始”,选择相应的浏览器。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 20
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
Studio 录制程序会自动打开您输入的网址,然后您可以在打开的页面上进行操作,
Studio 录制程序会自动记录您的操作步骤并翻译成 Huawei AntRobot Robot 的执行脚本。
选中某个命令(该命令有对应的值),然后右键,在弹出的选项中选择“设置加密标
志”,该命令的值的左边就会出现一个钥匙的图标,如下图所示:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 21
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
录制结束后,单击 "停止"结束录制。然后单击 “保存”保存录制好的脚本。录制完
成并保存之后,可以在 Studio 中单击“运行”按钮直接执行录制好的流程。
在执行之前,有几点需要尤其注意:
(1)需要检查一下录制脚本,删除不必要的录制动作,如鼠标的来回拖动,错误的单击
等等。使整个自动化流程更紧凑。
(2)录制程序中会经常出现元素识别取值不准的问题。一般在这种情况下会报错,需要
检查出错信息,并做调整。
(3)录制只能录制顺序流 ,如果流程中涉及 if/else 分支,while/for loop 循环等,需要
手工拖动加入。
1.5.2 录制和回放 Windows 本地应用程序
录制支持 windows 系统自带软件 notepad,控制面板,资源管理器,win 10 设
置,putty,winrar,notepad++,visual studio 2017,金蝶云星空客户端,powerbuilder 等其他软件的录制。
首先,打开 Huawei AntRobot Studio, 单击 App 录制图标,会弹出 App 录制的对话窗口,
如下图所示:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 22
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.点击“Record”按钮,然后录制相关操作。
2.开始录制后,您可以正常操作应用程序,录制程序会帮您把操作记录下来并转换成
Robot 执行程序。
3.完成录制后,依次单击 "Finish"和“Save And Close”键结束录制和保存执行脚本并
关闭弹窗。
4.录制完成并保存之后,可以在 Studio 中单击“运行”按钮直接执行录制好的流程。
和 Web 执行录制程序一样,在执行之前,有几点需要尤其注意:
(1)需要检查一下录制脚本,删除或合并不必要的录制动作,如输入内容的合并等,使
整个自动化流程更紧凑。
(2)录制程序中也会出现元素识别取值不准或其他问题。在这种情况下会报错,需要检
查出错信息,并做调整。
(3)录制只能录制顺序流,如果流程中涉及 if/else 分支,while/for loop 循环等,需要手
工拖动加入。
1.5.3 录制和回放本地 JAVA 应用程序
首先,打开 Huawei AntRobot Studio,点击 App 录制图标,会弹出 Recorder 的对话窗口,
如图所示:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 23
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.点击“Record”按钮,然后录制相关操。
2.开始录制后,您可以正常操作应用程序,录制程序会帮您把操作记录下来并转换成
Robot 执行程序。
3.完成录制后,依次单击 "Finish"和“Save And Close”键结束录制和保存执行脚本并
关闭弹窗。
4.录制完成并保存之后,可以在 Studio 中单击“运行”按钮直接执行录制好的流程。
和 Web、Windows 本地执行录制程序一样,在执行之前,有几点需要注意:
(1)需要检查一下录制脚本,删除或合并不必要的录制动作,如输入内容的合并等,使
整个自动化流程更紧凑。
(2)录制程序中也会出现元素识别取值不准或其他问题。在这种情况下会报错,需要检
查出错信息,并做调整。
(3)录制只能录制顺序流,如果流程中涉及 if/else 分支,switch 分支,while/for loop 循
环等,需要手工拖动加入。
1.6 逻辑
Huawei Antrobot 自动化流程一般情况下分为两大类,一类为简单情况下顺序执行即可。
另一类稍微复杂一点,在自动化话流程中加入了逻辑判断,例如在一个条件下执行一
个逻辑分支,在另一个条 件下执行另一个逻辑分支。或者对一个列表中的数据进行循
环操作。或者条件判断有多个分支,根据不同的条件判断走不同的分支。这些条件的
逻辑判断都是实际场景中经常碰到的。下面就简单介绍下 Huawei Antrobot 中的逻辑语
句,其中包括 for 循环,while 循环,dowhile 循环,if 条件判断,try-catch 异常捕获,
Block 语句块逻辑语句,CallScript 调用子脚本,subScript 调用子脚本。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 24
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.6.1 循环
1.6.1.1 while 循环语法
Action 属性:
name type is_required help
timeout number - 循环超时时长,单位为 ms
condition - True while 循环条件
Huawei Antrobot while 循环语法如下:
while 语句表示,执行到这个语句时,先判断 condition 中的 boolean expression,如果该
评估表达式为 True,则执行包含在 while 之间的业务逻辑,执行完成后继续评估
condition 中的 boolean expression ,直到评估表达式为 False,不进入循环。一般情况
下,在业务逻辑中会包含改变 boolean expression 评估值的逻辑,在条件满足时,会进
入循环。while 语句在每次执行包含在其中的业务逻辑时,都需要先进行布尔表达式的
评估,有可能一次都不会执行包含在其中的业务逻辑。
1.6.1.2 dowhile 循环语法
Action 属性:
name type is_required help
timeout number - 循环超时时长,单位为 ms
condition - True do while 循环条件
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 25
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
Huawei Antrobot dowhile 循环语法如下:
dowhile 语句表示,执行到这个语句时,运行包含在 dowhile 之间的业务逻辑至少一次,
运行后再去评估 condition 中的 boolean expression,如果该评估表达式为 True,继续执
行包含在 dowhile 之间的业务逻辑,执行完成后继续评估 condition 中的 boolean
expression,直到评估表达式为 False,跳出循环。一般情况下,在业务逻辑中会包含改
变 boolean expression 评估值的逻辑,在条件不满足时,会跳出循环。dowhile 语句无论
如何都会执行包含在其中的业务逻辑一次,再进行布尔表达式的评估来决定后续动作。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 26
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.6.2 分值判断
1.6.2.1 if 条件控制语法
name type is_required help
condition - True if 判断条件
Huawei Antrobot if 语句语法如下:
上述 condition 中的 boolean expression 只要是合格的 python 表达式即可。例如:
(1) 数字比较的条件表达式
变量 var 数据类型是 int,我们在 condition 中可以使用 <if condition="@{var} > 90">这
种数字比大小的方法进行。
(2) 字符串比较的条件表达式
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 27
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
变量 var 的数据类型是 string,我们可以使用"=="来比较两个字符串是否相等
<if condition="@{var} == 'This is a string'">
(3) 判断一个元素是否在一个 List 中存在
变量 var 的数据类型是 List,在 Python 中我们可以使用"in"来标识一个元素是否在一个
List 中存在。
<if condition="5 in @{var}">
上述语句的意思是判断数字“5”存不存在于集合中。
1.6.3 遍历
1.6.3.1 for 循环遍历语法
name type is_required help
list - True for 循环的数组。可以支持
python 表达式,如 range(5),
则代表 for 循环循环 5 次。
For 循环中可使用 int 型的内
置变量@{forloop},代表当前
正在迭代遍历的次数,次数
从 0 开始。
item - True 单个 for 循环实例
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 28
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
Huawei Antrobot for 循环语法如下:
for 语句表示,执行语句可以是单个语句或语句块。判断条件可以是任何表达式,任何
非零、或非空(null)的值均为 true。当判断条件为 false 时,循环结束,否则循环就一
直执行下去。上述的语句表示循环 list 集合里面的数据,然后打印循环参数以及打印循
环到的 list 集合里面的数据。
1.6.4 异常捕获
异常类型的捕获请参考查阅附录四——Robot 支持的异常列表
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 29
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.6.4.1 try-catch
Try 属性:
name type is_required help
redo_times string - 有 redo_times 属性时,catch
处理异常后再返回 try 从失
败的 action 位置开始继续执
行,直到无 error 或者
redo_times 的值的执行次数
为 0 为止
from_error_node list True 错误重试时,选择是否从错
误的 action 开始执行,默认
为 True
Catch 属性:
name type is_required help
exception string True 需要匹配的异常名(根异常
Exception)
Huawei Antrobot try-catch 语法如下:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 30
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
执行 try 语句块,点击 id=uid 的页面元素,点击成功则执行 finally 语句块,并且打印
success。点击失败则抛出异常,匹配 try 语句块中抛出的异常名和 catch 的 exception 属
性的异常名,匹配成功则打开百度;若打开百度失败,则重新开始执行 try 语句块,重
复以上的执行过程,最多重复 2 次;最后执行 finally 语句块,打印 success。
1.6.5 Block 语句块
block 是一个语句块,没有输入输出,有 name、desc 属性,作用域为所在脚本。表示
一段处理逻辑,方便流程管理,内部可包含其他任意控件。
1. 双击 Block 语句块:
2. 进入到 block 的编排画布:
3. xml 显示格式如下:
1.6.6 Subprocess 和 CallScript 调用子脚本
callScript、subprocess 都可以调用任何子脚本,如果使用 callScript 调用,则子脚本中
使用到的变量是有作用域的。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 31
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.7 高级特性
1.7.1 eval 计算
1.7.1.1 eval 的常见用法
在 Huawei AntRobot 中 eval 命令可以动态的计算表达式的值,可以用来操作常见的数
据类型,例如字符串,列表,集合,元组,字典等,所以可以说是一个瑞士军刀式的
命令,下面就来列举几个例子了解下它的用法。
1.7.1.1.1 用法一 将变量的类型赋给另一个变量
上面的代码中,先创建一个变量 variable,然后再执行 eval 命令,eval 命令的作用是把
变量 variable 的类型赋值给变量 typeOfVariable 。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 32
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.7.1.1.2 用法二 将表达式的值赋给另一个变量
上面的代码中,是把表达式“3==3”的结果赋值给变量 variable,然后再将 variable 的
类型赋值给变量 typeOfVariable,最后打印出来。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 33
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.7.1.1.3 用法三 从集合中删除元素
上面的代码中,定义了一个集合 fruits,eval 命令的作用是执行集合的删除操作,删除
集合中的元素“pear”,最后打印集合更新后的结果。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 34
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.7.1.1.4 用法四 向字典中添加一个键值对
上面的代码中,定义了一个字典 tel,eval 命令的作用是执行字典的添加键值对操作,
向 tel 中添加一个新的键值对“'David' :'63289438'”,最后打印字典更新后的结果。
1.7.2 C#调用
该命令需要依赖.net4.0 环境,部分 win7 系统的.net 版本是低于 4.0,该命令无法运行。
exec.CSharp
描述:调用 c#函数
输入:无
参数
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 35
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_is_requi default range help
red
*function string True - - c#文件中的
空间名.类
名.方法名,
以点号分隔
*file-name string True - - dll 文件名,文
件放在
Robot/cfg/p
lugin 下,不
需要.dll 后
缀,或要执行的
dll 文件的绝
对路径
class-args string - - - c#中 class
的参数,以逗
号分隔多个
参数
function- string - - - c#中方法的
args 参数,以分号
分隔多个参
数。支持的
python 数据
类型包括:
int/float/bool
/str/list/tuple
/dict/set。当
参数为 str
型时,必须
加上双引
号,当参数
为除 str 外
的所有类型
时(包括引
入变量的形
式),无须
加上双引
号。当参数
为路径字符
串时,为防
止被转义,
请在前面加
个 r,如
r"path"。
timeout number - - - 执行失败后
的重试超时
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 36
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_is_requi default range help
red
时间
delay number - - - 等待多少
ms 后再执
行当前
action
输出
name type default range help
return string execCsharp_ret - 调用 c#函数返
回结果
return_type list - string|int|float|b 返回值的类型
ool
示例
新建一个名称为“a”,类型是 number,参数值为 111 的参数,调用在 Robot/cfg/plugin
下的 calculate.dll 文件 C#函数;方法名:ConsoleApp3.calculate.Sub;class 参数:
para1,para2 方法参数:@{a};111
1.7.3 python 调用
exec.py
描述:调用 py 函数或脚本
输入:无
参数
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 37
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_is_requi default range help
red
*file-name file True - - 要执行的
python 脚本
的绝对路径
function string - - - 要调用的函
数名,不填写
时默认调用
整个 python
脚本。调用
整个 python
脚本时,需
要依赖用户
的 python
环境
function- string - - - 调用的函数
args 或者脚本中
需要传入的
参数。调用
函数时支持
的参数类型
包括:
int/float/bool
/str/list/tuple
/dict/set。调
用脚本时只
支持 str 的
参数类型。
参数的填入
支持直接填
写值或者引
入变量@{}
的形式,多
个参数之间
以分号分
隔。当参数
为 str 型
时,必须加
上双引号,
当参数为除
str 外的所有
类型时(包
括引入变量
的形式),
无须加上双
引号。当参
数为路径字
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 38
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_is_requi default range help
red
符串时,为
防止被转
义,请在前
面加个 r,
如 r"path"。
timeout number - - - 执行失败后
的重试超时
时间
delay number - - - 等待多少
ms 后再执
行当前
action
输出
name type default range help
return string execpy_ret - 调用 py 函数返
回的结果
return_type list - string|int|float|b 返回值的类型
ool
示例
调用 D:\\test\\python\\x.py 文件中的 fun_name 方法,同时传入 value1,value2,value3 这三
个参数
1.7.4 powershell 调用
invokePowerShell
描述:调用 PowerShell 命令
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 39
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输入:无
参数
name type is_is_requi default range help
red
*value string True - - 需要执行的
PowerShell
命令或者
PowerShell
脚本名
timeout number - - - 执行失败后
的重试超时
时间
delay number - - - 等待多少
ms 再执行
当前 action
输出
name type default range help
return string invokePowerSh - 调用
ell_ret Powershell 返
回结果
return_type list - string|int|float|b 返回值的类型
ool
示例
调用 Get-Process 的 PowerShell 命令来获取当前进程信息,返回值 a1 为 Get-Process 的
回显
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 40
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.7.5 sendkey
功能键请参考查阅附录六——sendkeys 功能键对照表
1.7.5.1 网页
sendKeys
描述:传入功能键或组合键
输入:
name type help
referenc strin 指定的浏览器,不填则指定 open 命令打开的浏览器(温馨提示:
e g 如果你想要操作 new_browser 命令打开的浏览器,那么必须在此
处指定浏览器)
参数:
name type is_requir defau rang help
ed lt e
target string True - - 元素定位机制,取值方
式:id/name/class/link/xpath/css=%s 以及
anchor=%s,%s,%s,以前面写出的七种
方式开头取值来定位元素位置,其中
anchor 是查找以 anchor 开头,查找距
离锚点最近的元素,取值方式:anchor=
锚点,位置,tagName, anchor 方式中的参
数 1:锚点(通过 getElement 命令返回
的变量,使用时直接使用返回的变量即
可,不需要使用@{});参数 2: 待查找
的元素位置(left,right,top,bottom,auto,
如果是 auto,则在上下左右中查找最近
的一个);参数 3:待查找元素的
tagName(*、A、INPUT 等)
value string True - - 功能键或组合键;功能键基本格式:{功能
键},不区分大小写,例如:{Ctrl}、{Enter};
组合键的格式{功能键}字符、{功能
键}{功能键}字符,例如:{ctrl}a、
{ctrl}{shift}a
timeou numb - - - 本 action 的执行的超时时间(ms)
t er
delay numb - - - 等待多少 ms 再执行当前 action
er
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 41
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 对页面中 id="kw"的元素传入 enter 键
<action driver_type="selenium">
<command>sendKeys</command>
<params>
<param name="target">id=kw</param>
<param name="value">{Enter}</param>
<param name="delay">1000</param>
</params>
</action>
1.7.5.2 Win32 应用程序
sendKeys
描述:键盘输入;当 reference 和 target&targettype&by 都不存在时,且当前屏幕没有
含鼠标焦点的编辑框时,键盘输入值会丢失输入:辑框时,键盘输入值会丢失。
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或
setActive 或获取控件的命
令的返回值);当 reference
参数和
target&by&targettype 不为
空时,target&by&targettype
为 reference 对象的子控件
参数:
name type is_required default range help
target string - - - 控件名称
by list - - ClassName | 控件名称类
Name | 型
Automationi
d
| Path
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 42
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
targettype list True - AppBarCont 控件类型
rol |
ButtonContr
ol |
CalendarCo
ntrol |
CheckBoxC
ontrol |
ComboBox
Control |
CustomCont
rol |
DataGridCo
ntrol
|
DataItemCo
ntrol |
DocumentC
ontrol |
EditControl |
GroupContr
ol |
HeaderContr
ol |
1.7.5.3 JaveSwing 应用、JavaFx 应用、Jab 应用
sendkeys
描述:键盘按键
输入:无
参数:
name type is_requir defau rang help
ed lt e
value string True - - 键盘的目标值;基本格式:{功能键},不区
分大小写,例如:{Ctrl},{Enter};组合键的
格式:{功能键}字符, 例如:{ctrl}a
timeou numb False - - 本 action 的执行的超时时间(ms)
t er
delay numb False - - 等待多少 ms 再执行当前 action
er
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 43
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 模拟按下键盘 enter 键
<action driver_type="swing" reference="MDIFrame">
<command>sendkeys</command>
<params>
<param name="value">{Enter}</param>
<param name="delay">1000</param>
</params>
</action>
1.7.6 浏览器的参数配置
浏览器配置参数如下图:
name type is_is_requi default range help
red
selenium_dri list - - chrome|ie|fir driver 类型
ver_type efox
executable_ string - - - driver 路径
path
driver_optio string - - - chrome 的启
ns_argument 动项配置,
s 只针对谷歌
浏览器;配
置选项参
考:
https://peter.
sh/experime
nts/chromiu
m-
command-
line-
switches/
experimental string - - - chrome 配
_option 置,只针对
谷歌浏览器
certification list - - disable|enabl 证书警告
e
pageLoadStr list - - normal|eager web 页面加
ategy |none 载策略,只针
对谷歌浏览
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 44
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_is_requi default range help
red
器
implicitly_w string - - - 等待时间,
ait_ms 是
webdriver
提供的一个
超时等待,
单位是毫
秒。等待一
个元素被发
现,或一个
命令完成,
如果超出了
设置时间则
抛出异常
示例
1.7.7 Chrome/Firefox IE 页面元素拾取能力
不支持本地网页的元素拾取。
1. 打开 Huawei AntRobot Studio 软件,拖动原子活动里面的一个命令,如拖动网页下
的"click"命令,如下图所示:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 45
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
2. 拖动"click"到 studio 画布中间,如下图所示:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 46
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
3. 再单击"target 参数"中的元素拾取图标(在这之前先打开浏览器进入一个网页),
如下图所示:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 47
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
4. 然后找到想要拾取元素的网页,点击选中想要拾取的元素,如下图所示:
5. 拾取完成后,单击鼠标即可,studio 画布中间会显示拾取的元素,如下图所示:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 48
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.7.8 参数和变量的使用
变量的作用域分为全局、脚本内,全局作用域的变量就是外部输入的,即 case 中 input 目录
下定义的变量。可以在任何地方使用。优先使用局部变量
原子活动的输入框可以通过参数和常量进行动态赋值,参数支持 Boolean、Number、String、
Array、Object、Sensitive、Credential、Attachment 八种类型,其中 Sensitive 是敏感数据类型,
当设置参数为 Sensitive 时,数据会被加密且不存储,在管理中心创建任务时再设置参数;常
量仅支持 Boolean、Number、String、Array、Object 五种类型。
studio 里面添加全局参数如下图所示:
studio 里脚本内(局部变量)添加参数如下图所示:
添加的参数如果需要引用,需要在画布中点击需要引用的命令,然后在 Action 参数中
的相关参数输入框中输入想要引用的参数,使用"@{}"包住想要引用的参数名称,如下
图所示:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 49
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
在 studio 里面导出项目,打开导出项目里面的 parameters.json 文件,如下图所示,定义
为 Sensitive 的参数,值会被清空:
1.7.9 IE 回放的 com 模式
1.7.9.1 概述
IE 回放的 com 模式,是网页命令的高级特性。通过将脚本属性中的 use_com 项置为
true 开启 com 模式。普通模式下 IE 回放只能在网页命令新打开的浏览器页面中执行,
com 模式增加了对已打开的 IE 浏览器页面进行回放的支持。通过 com 模式的
selectWindow 命令切换到已打开的页面,并进行回放。2.12.0 版本之后,增加对
Chrome 的 IE Tab 插件打开的浏览器页面进行回放的支持
1.7.9.2 与普通模式的区别
com 模式的网页命令与普通模式的网页命令有少许区别。主要在于,部分在普通模式
下的定位机制在 com 模式不支持。
差异点 com 模式 普通模式
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 50
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
差异点 com 模式 普通模式
元素定位 支持:id/name/class/xpath=%s 元素定位机制,取值
机制 以上述的四种格式定位元 式:id/name/class/link/xpath/css=%s 以及
素;在 xpath=%s 格式场景 anchor=%s,%s,%s,以前面写出的七种
下,只支持 方式开头取值来定位元素位置,其中
xpath=//*[@id='%s']或 anchor 是查找以 anchor 开头,查找距离
xpath=/%s/%s[1]/%s[2]的格 锚点最近的元素,取值方式:anchor=锚
式。元素标签搭配索引定位 点,位置,tagName, anchor 方式中的参数
元素,这种场景下,%s 表示 1:锚点(通过 getElement 命令返回的变
标签名为%s 的第 1 个元 量,使用时直接使用返回的变量即可,
素,%s[n]表示标签名为%s 不需要使用@{});参数 2:待查找的元素位
的第 n 个元素。 置(left,right,top,bottom,auto,如果是
2.12.0 版本之后,增加对以下 auto,则在上下左右中查找最近的一个);
五种高级语法的支持: 参数 3:待查找元素的 tagName(*、A、
INPUT 等)
1.xpath=//input[contains(@na
me,"%s)]
2.xpath=//*[starts-
with(@name,%s)]
3.xpath=//div[id=%s]
4.xpath=//*[text()=%s]
5.xpath=//*[contains(text(),%s)
]
selectWin 支持:url/title/xpath=%s,以上 窗口定位机制新方式(推荐 IE 浏览器使
dow 的定 述的 3 种方式开头取值来定 用):index=number,url/title/text/选择
位机制 位窗口位置,其中 url 表示窗 器(css/id/xpath/link/class/name)=%s,以
口的页面网址,title 表示窗 上述的 10 种方式开头取值来定位窗口位
口的页面标题,xpath 表示用 置,其中 index 表示窗口的顺序位置,
元素定位机制定位的元素 url 表示窗口的页面网址,title 表示窗口
的页面标题,text 表示页面中元素的文
本信息,选择器表示使用页面中的元素
来定位并切换窗口,当窗口切换失败
时,会返回原来的窗口
窗口定位机制旧方式(推荐 Chrome 和
Firefox 浏览器使用,不支持 IE 浏览
器):浏览器窗口切换的目标窗口,取
值 win_ser_%num,num 表示切换窗口
的顺序位置
selectFram 支持:index/id/name/temp=%s, 定位窗口的方式,取值方
e 的定位 分别以 index,id,name,src 定位 式:index/id/name/css/relative=%s, 分别以
机制 窗口位置,其中 index=num index,id,name,css,relative 定位窗口位
表示要切换窗口的顺序位 置,其中 index=num 表示要切换窗口的
置;relative=parent/top,parent 顺序位置;relative=parent/top,parent 表示
表示切换至父窗体,top 表示 切换至父窗体,top 表示切换到顶级窗体
切换到顶级窗体
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 51
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.7.9.3 支持的命令列表
方法名 功能
actionchain actionchain 是 selenium 驱动中高级命令的开始命令,
在 ie 回放中无意义。实现此命令适配 IE 录制使回放
不会失败。
answeronnextprompt prompt 框中点击确认
append 编辑框追加 value 值
assertAlert 点击 alert 框的确认
back 页面后退
chooseCancelOnNextConfirm 点击 confirm 框的取消
ation
chooseCancelOnNextPrompt 点击 prompt 框的取消
chooseOkOnNextConfirmatio 点击 confirm 框的确认
n
clear 清空编辑框
click 鼠标单击事件
clickAndHold 长按鼠标左键
close 关闭当前窗口
currentUrl 获取当前页面 url
doubleClick 鼠标双击事件
dragAndDrop 将某个元素拖拽到某个元素的位置松开
draganddropforhtml5 拖拽 html5 的元素到另一个元素中然后松开
dragAndDropByOffset 拖拽指定元素到距离此元素的某个位置然后松开
executeScript 执行 js 代码
forward 页面前进
getAttribute 获取页面中元素的属性值
getChildElementCount 获取元素中某类直接子元素的个数
getCookie 获取当前页面的 cookie
getElement 获取元素
getElementCount 通过 xpath 获取某类元素的个数
getelementpos 获取页面中元素相对于屏幕左上角的坐标
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 52
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
getTable 获取表格中的数据
getTableCols 获取表格数据的列数
getTableRecord 根据给定行和列信息获取表格中特定数据
getTableRows 获取表格数据的行数
getText 获取元素的文本信息
hasElement 判断当前页面元素是否存在,存在返回 True,不存在
返回 False;返回的 True 和 Flase 的数据类型是 bool
类型
moveByOffset 鼠标移动到页面中距离当前位置一定距离的位置
moveToElement 鼠标移动到某个元素的位置
movetoelementwithoffset 鼠标移动到距离某个元素一定距离的位置
new_browser 打开新的浏览器
open 打开指定网页
pageSource 获取当前页面的网页源代码
perform perform 是 actionchain 的 selenium 驱动中高级命令的
结束命令,在 ie 回放中无意义。实现此命令适配 IE
录制使回放不会失败。
quit 退出浏览器
refresh 刷新页面
release 释放鼠标
rightClick 鼠标右击
scroll 滑动滚动条;只能滚动页面,不能滚动元素
scrollIntoView 将当前的元素滚动到浏览器窗口的可视区域内;注
意:可能导致页面错乱
select 选择下拉菜单元素
selectFrame 切换 iframe 框架
selectWindow 切换窗口
selectWindowSize 设置窗口大小
sendKeys 传入功能键或组合键
type 清空并输入文本
fastType 与 type 命令一致
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 53
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
waitDisappear 等待元素消失
waitShow 等待元素出现
1.7.10 自定义控件
1.7.10.1 背景
RPA 的本质其实是用专业的代码(pro-code)将用户常用的软件操作流程封装成可拖
拉拽的原子活动,以在用户层面实现 no-code 的方式编排业务流程,完成自动化的过程。
随着用户的增加,用户所操作的软件系统、流程的差异同步递增,版本集成的原子活
动必然很难满足快速多变的用户诉求。
当前 RPA 集成原子活动 300+,一个原子活动的需求到开发落地、版本发布,标准流程
3 个月(随 GDE 发布),最快也要 1 个月的时间周期,交付周期已经很难满足业务的
需求。
1.7.10.2 手工编排自定义控件
1.7.10.2.1 环境准备
1. studio 界面左侧边栏选择控件下的自定义扩展
2. 点击下载模板到自定义目录并解压
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 54
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
3. 打开工程 ext_template_1_0_1,目录结构如下:
一级目录 二级目录 三级目录 四级目录 描述
ext_xxx_1_0_1 - - - 扩展包文件夹
名。格式:
ext_扩展包名_
版本号(此处版
本号由 1.0.1 改
为 1_0_1)
com - - 公共目录。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 55
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
一级目录 二级目录 三级目录 四级目录 描述
xxx - 公司名
*action_ext.py 入口文件,该
参数为必要文
件。
xxx.py 依赖文件
lib - - 存放 python 三
方库 whl 文件
*help.json - - 帮助信息,方
便 studio 载入
*register.json - - robot 动态导包
描述文件
*actionx.rpax - - 工程文件
requirements.txt - - 三方库依赖
4. 设置 python 解释器,比如 studio 安装在 C:\Program Files\Huawei\AntRobot\studio
2.11.0\python\python.ex
1.7.10.2.2 help.json 开发(提供给 Studio 显示)
帮助文件具体字段描述(请使用模板编辑开发,除 commands 内,其他参数请不要动):
1. *commands:命令列表,列表内一个字典存放一个命令:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 56
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
a. Samples:示例列表,列表内一个字典存放一个示例
i. desc:sample 的 zh_CN 和 en_US 描述信息
ii. code:action 的 xml 示例代码。(str)遇到“号需要转义。”→\"
b. output:输出列表,对应 studio 输出。列表内一个字典存放一个输出。目前
只有 return 和 return_type,有返回值时加入此参数
i. 与 parameters 取值类似
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 57
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
c. input:输入列表,对应 studio 输入。列表内一个字典存放一个输入。目前只
有 reference,有需要引用之前 return 对象的,加入此参数。示例:reference
i. name:“reference”
ii. type:“string”,固定格式
iii. is_required:是否为必填。(true|false)
iv. help:zh_CN 和 en_US 为帮助信息
d. *Parameters:参数列表,对应 studio 的 Action 属性。列表内一个字典存放一
个参数。
i. name:参数名(str)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 58
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
ii. type:参数类型(str)。固定取值:number(取值只能是数字),string,
file(studio 展示选择文件对话框按钮),list(必须为列表格式),dir
(studio 展示选择文件夹对话框按钮),boolean(true|false),new_file
(新增文件类型),password(studio 输入框为密码输入框)
iii. is_required:是否为必填。(true|false)
iv. default:默认值(str)。没有则为 null
v. range:取值范围,当 type 为 list 时填写此参数。(str)使用|分隔。例:
“LButtonDown|LButtonUp|MouseWheel|RButtonDown|RButtonUp”
vi. help:参数的 zh_CN 和 en_US 帮助信息
e. display_name:命令的 zh_CN 和 en_US 简要帮助信息
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 59
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
f. help:命令的 zh_CN 和 en_US 详细帮助信息
g. deprecated:是否不推荐使用。(true|false)
h. *command:命令名(str)
1.7.10.2.3 register.json 开发(提供给 Robot 识别命令)
1. com.xxx 为对应插件文件导包路径(xxx 表示三级目录的公司名)
2. action_ext 为模块名(固定格式),Test 为类名,add 为命令名,对应的
action_ext.py 里 action 命令方法名 action_add。
1.7.10.2.4 action_ext.py 开发(具体功能实现)
1. 入口方法必须为 action_开头
2. 继承 BaseAction 提供的实例属性
3. 命令入口接收定义的参数名(默认拿到的是字符串类型参数值)。(如 add 命令有必
填参数 target 和默认参数 value,入口方法直接使用形参拿参数 action_add(self,
target, value="1")
4. 使用 UT 调试(需配置 Robot 自带的 python 解释器),验证具体功能。Context 类
与 ActionOutParam 类是出入参需要用到的,实例化后赋值给对应的 action.context
和 action.out_param。
属性名 类型 描述
self.logger obj 使用 logger 对象记录日
志,日志级
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 60
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
属性名 类型 描述
(info\error\warning\debug)
self.console_logger obj 使用 console_logger 对象实
时打印日志到控制台,日
志级
(info\error\warning\debug)
self.ret_value obj 指定 action 属性 return 的
返回值
self.reference obj 引用之前 action 的 return
对象名,搭配
self.context.get_reference 使
用
self.command str 命令名。(用户需按
python 方法名定义)
self.params dict 可以通过此参数获取 xml
里对应的参数值。例如
self.params.get("target", ""),
默认拿到的都是 str 类型。
当入口使用了形参接收,
可以不用此参数。
self.out_param obj out_param 对象有三个属
性:
out_param_name(对应
action 属性 return 返回值
名)
out_param_type(对应
return_type 值)
out_param_value(返回值
经过 save 方法,根据
return_type 将 ret_value 强
转类型赋值给此属性)。
self.context obj 提供 get_project_path()方
法拿到@{WORK_DIR}的
值(工程路径)
提供
get_reference(self.reference)
方法拿到之前 action return
的对象
1.7.10.2.5 actionx.rpax 编写(版本信息以及作者)
1. rpax 文件必须为 json 数据格式
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 61
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
2. name,version 为必填项
1.7.10.2.6 xml 编写
1. 如果使用 studio 编排,拖动图元至画布会自动加载
driver_type&ext_name&ext_version 这三个属性。
2. 如果手动编排,需要根据 actionx.rpax 手动添加。
<action driver_type="extension" ext_name="ext_add" ext_version="1.0.1">
<command>add</command>
<params>
<param name="target">100</param>
<param name="value">200</param>
</params>
</action>
1.7.10.2.7 三方件依赖(有使用到 python 三方件且不在 Robot 自带的 python 内,进行此操作)
action 开发者需要更新 requirements.txt 并将 whl 包下载到 lib 文件夹下。切换到 Studio
安装目录 C:\Program Files\Huawei\AntRobot\studio 2.11.0 执行命令
①project_path 为拓展包路径
②加粗字体:跟拓展包名对应
python\robot.exe -m pip download -d %project_path%\ext_xxx_1_0_1\lib -
r %localappdata%\HuaweiRPA\ext\ext_xxx_1_0_1\requirements.txt
此命令依赖 pip.ini 文件或者需要使用-i http://mirrors.tools.huawei.com/pypi/simple/ --
trusted-host rnd-mirrors.huawei.com 指定下载源。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 62
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.7.10.2.8 Tips(扩展名,参数名需要按照 python 命名规范,字母数字下划线)
1. 当修改(新增)命令名时,以下需要同步修改
a. help.json 里 commands 字段的 command
b. register.json 列表内的命令
c. action_ext.py 的方法名
d. 新增命令名,直接在模板内复制 commands 字段内一个字典,按照 help.json
指导开发
2. 当修改包名(版本号)时
a. 一级目录文件夹名字需要修改:ext_扩展包名_版本号。(此处版本号需做修改。
如 1.0.1 需改为 1_0_1)
b. actionx.rapx 文件中,name 和 version 字段需要修改
3. 当修改类名时
a. 修改 action_ext.py 中命令依赖的类名时,register.json 里也需要同步修改
4. 开发者要发布扩展时,尽量将缓存文件删除(.idea/,__pycache__),再打包成
zip
1.7.10.2.9 打包
将整个拓展工程包打成.zip,提供给 studio 或者管理中心导入使用
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 63
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.7.10.2.10 导入
使用 Studio 导入扩展包
若依赖文件 requirements.txt 不为空,切换到 Studio 安装目录 C:\Program
Files\Huawei\AntRobot\studio 2.11.0 执行命令:
①加粗字体:跟拓展包名对应
python\robot.exe -m pip install --upgrade --no-index --find-
links=%localappdata%\HuaweiRPA\ext\ext_xxx_1_0_1\lib -
r %localappdata%\HuaweiRPA\ext\ext_xxx_1_0_1\requirements.txt
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 64
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.7.10.2.11 使用
自定义控件跟内置的使用方式一致,拖拽控件至画布,依据帮助及示例完成扩展使用。
1.7.10.3 使用插件开发自定义控件
Pycharm (专业版或者社区版) 2019.2.6 至 Pycharm 2020.2.5 中的任一版本
Python 环境
1.7.10.3.1 下载插件和模板
1. 打开 Studio,进入设计器页面,点击自定义扩展新建按钮:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 65
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
2.点击下载控件构建插件,选择下载目录,点击保存即可下载完成:
1.7.10.3.2 安装插件
1. 打开 Pycharm,选择 File->Setting,进入设置页面
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 66
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
2.搜索 Plugins 进入插件管理页面,点击 install plugin from disk 选择下载好的插件包,
安装完成后重启 Pycharm 即可:
3.打开拓展模板,将扩展包名设置为工程目录:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 67
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.7.10.3.3 插件的使用
插件入口为菜单栏 AntRobot->Action Builder
点击后弹出配置页面,依据配置页面的提示进行相关配置即可:
1.7.10.3.4 基本信息
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 68
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.7.10.3.5 控件注册
1.7.10.3.6 控件配置
1. 基本信息:控件的简要描述和详细帮助信息
2. 参数:
a. 类型(提供给 Studio 展示):
number:输入类型只能是数字类型
string:没有限制
password:仅提供给 Studio 遮挡输入使用
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 69
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
list:搭配取值范围使用(校验是否在取值范围内)
file:提供给 Studio 展示文件选择按钮
dir:提供给 Studio 展示文件夹选择按钮
b. 取值范围:例如 smtp.sendEmail 的 port 参数,有 578,465 和 25。对应的填
写为 578|465|25。使用|号分隔多值
c. 参数更多设置:
i. 校验表达式(可以搭配使用,多个校验器使用逗号分隔):
1) ip:IP 地址。例:ip
2) min,max:数字 。例:min=0,max=7200000
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 70
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
3) min_len,max_len:字符串长度,默认最大长度 65535。例:
min_len=4
4) host:域名。例:host
5) excludes:不能包含特殊字符。例:excludes=*\/?*[]*
6) email_address:邮箱地址。例:email_address
7) file_suffix:支持的文件后缀 。例 file_suffix=xlsx|xlsm|xls|xlsb
8) int:整数类型。例如:int
ii. 依赖参数(例如 option=='pid',只有当 option 为 pid 才显示此参数):Studio
联动显示依赖参数。例:killProcess 的 pid 参数,只有在 option 为 pid 时,
才会出现。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 71
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
3. 输入:有需要引用之前控件 return 对象,加入输入 reference。例:网页的 open 控
件。
4. 输出:当前控件有返回值时加入此参数。例:eval 控件。
1.7.10.3.7 依赖设置
下载依赖需要指定镜像源下载(推荐配置 pip.ini 文件)
插件会将依赖包(非安装包)下载到扩展包的 pylib 目录下
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 72
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
模板内固定导包代码,请勿删除
1.7.10.3.8 打包
打包:在依赖页面点击导出,提供给 Studio/管理中心导入使用
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 73
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.7.10.3.9 导入和使用
1. 与手工编排的扩展一样,使用 Studio 导入,从左树拖拽使用.
2. 由于加入了 PyLib 机制,插件导出的自定义扩展,使用时可以不用再安装三方依
赖库(已经安装好在 PyLib 里)
1.8 原子活动
HUAWEI AntRobot 采用提示、角色权限分离、高危命令白名单限制等手段对机器人进行安
全防护,但由于业务场景需要,用户可录制任意操作、自行开发如 python 脚本等可执行脚本、
执行 sql 语句以及使用 sendKeys 命令传入功能键或组合键,由此带来的安全风险需要用户自
行承担,用户可以选择不下发和执行该类机器人。
机器人执行时,根据编排的原子活动可能操作文件系统,执行本地程序,对文件系统、CPU、
内存会有一定占用,这取决于机器人编排的原子活动,用户需在编排时考虑对操作系统的影
响。
对文件有引用或处理的原子命令仅支持部分文件类型,类型列表见 1.10.1 附录一 文件校验
类型说明。
1.8.1 网页
1.8.1.1 actionchains 起始
actionChains
描述:actionchains 高级命令,actionchains 命令的起始
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
timeout number - - - 本 action 的执
行的超时时间
(ms)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 74
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 开始执行 actionchains 命令
<action driver_type="selenium">
<command>actionchains</command>
</action>
1.8.1.2 传值到 prompt 并确认
answerOnNextPrompt
描述:传入值到 prompt 框中并点击确认
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
value string - - - 传入信息
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 75
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 传入"yes"到 prompt 弹框中并点击确认
<action driver_type="selenium">
<command>answerOnNextPrompt</command>
<params>
<param name="value">yes</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.3 编辑框追加文本
append
描述:编辑框追加 value 值,value 值的字符长度受限于编辑框的 maxlength 属性
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
来定位元素位
置,其中
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 76
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
value string True - - 向输入框中输
入的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 77
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1. 向 id="uid"的编辑框中 append "paswerd"
<action driver_type="selenium">
<command>append</command>
<params>
<param name="target">id=uid</param>
<param name="value">paswerd</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.4 点击 alert 框的确认
assertAlert
描述:点击 alert 框的确认
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 78
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1. 点击警示框的"确认"按钮
<action driver_type="selenium">
<command>assertalert</command>
<params>
<param name="delay">1000</param>
</params>
</action>
1.8.1.5 页面后退
back
描述:页面后退
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 页面后退
<action driver_type="selenium">
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 79
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<command>back</command>
<params>
<param name="delay">1000</param>
</params>
</action>
1.8.1.6 点击 confirm 取消
chooseCancelOnNextConfirmation
描述:点击 confirm 框的取消
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 confirm 确认弹框的"取消"按钮
<action driver_type="selenium">
<command>chooseCancelOnNextConfirmation</command>
<params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 80
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="delay">1000</param>
</params>
</action>
1.8.1.7 点击 prompt 取消
chooseCancelOnNextPrompt
描述:点击 prompt 框的取消
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 prompt 弹框的"取消"按钮
<action driver_type="selenium">
<command>chooseCancelOnNextPrompt</command>
<params>
<param name="delay">1000</param>
</params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 81
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</action>
1.8.1.8 点击 confirm 确认
chooseOkOnNextConfirmation
描述:点击 confirm 框的确认
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 confirm 确认弹框的"确认"按钮
<action driver_type="selenium">
<command>chooseOkOnNextConfirmation</command>
<params>
<param name="delay">1000</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 82
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.1.9 清空编辑框
clear
描述:清空编辑框
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 83
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
timeout number - - - 本 action 的错
误重试的超时
时间(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 清空 id="uid"编辑框中的数据
<action driver_type="selenium">
<command>clear</command>
<params>
<param name="target">id=uid</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.10 鼠标单击事件
click
描述:鼠标单击事件
输入:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 84
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss/text=%s(tex
t 能搭配索引
一起使用;比
如:text=更
多[1],查找网
页上第二个文
本值为更多的
元素;索引不
确定请使用别
的元素定位机
制)以及
anchor=%s,
%s,%s, 以
前面写出的七
种方式开头取
值来定位元素
位置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 85
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 鼠标单击 id="uid"的元素
<action driver_type="selenium">
<command>click</command>
<params>
<param name="target">id=uid</param>
<param name="delay">1000</param>
</params>
</action>
2. 鼠标左键键点击页面中文本值为"更多"的元素
<action driver_type="selenium">
<command>click</command>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 86
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<params>
<param name="target">text=更多</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.11 长按鼠标左键
clickAndHold
描述:actionchains 高级命令,长按鼠标左键
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 87
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 长按鼠标左键点击 id="uid"的元素
<action driver_type="selenium">
<command>clickAndHold</command>
<params>
<param name="target">id=uid</param>
<param name="delay">1000</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 88
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.1.12 关闭当前窗口
close
描述:关闭当前窗口
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要关闭
new_browser 命令新打开的浏
览器的窗口,那么必须在此处
指定浏览器)
参数:
name type is_required default range help
target list - - others 可选项,关闭
窗口的方式;
others 表示关
闭其他窗口,
不填则关闭当
前窗口
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 关闭当前窗口
<action driver_type="selenium">
<command>close</command>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 89
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
2. 关闭其他窗口
<action driver_type="selenium">
<command>close</command>
<params>
<param name="option">others</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.13 获取当前页面 url
currentUrl
描述:获取当前页面 url
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 90
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
return string currentUrl_ret - 当前页面 url
return_type list - string 返回值的类型
示例:
1. 获取当前页面的 URL
<action driver_type="selenium" return="currentUrl_ret1">
<command>currenturl</command>
<params>
<param name="delay">1000</param>
</params>
</action>
1.8.1.14 取消选定下拉框
deselect
描述:取消选定下拉框元素
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 91
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
方式开头取值
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
value string True - - 选择选项元素
的方法,取值
方式:
index/label/val
ue=%s,分别表
示通过索引、
文本信息、以
及 value 值获
取元素
timeout number - - - 本 action 的执
行的超时时间
(ms)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 92
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 取消选择 id="se10"的下拉菜单中第一个选项
<action driver_type="selenium">
<command>deselect</command>
<params>
<param name="target">id=sel0</param>
<param name="value">index=0</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.15 鼠标双击事件
doubleClick
描述:actionchains 高级命令,鼠标双击事件
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 93
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
ss/text=%s(tex
t 能搭配索引
一起使用;比
如:text=更
多[1],查找网
页上第二个文
本值为更多的
元素;索引不
确定请使用别
的元素定位机
制)以及
anchor=%s,
%s,%s, 以
前面写出的七
种方式开头取
值来定位元素
位置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 94
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 鼠标双击 id="uid"的元素
<action driver_type="selenium">
<command>doubleClick</command>
<params>
<param name="target">id=uid</param>
<param name="delay">1000</param>
</params>
</action>
2. 鼠标左键双击页面中文本值为"更多"的元素
<action driver_type="selenium">
<command>doubleClick</command>
<params>
<param name="target">text=更多</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.16 将某元素拖拽到某位置
dragAndDrop
描述:actionchains 高级命令,将某个元素拖拽到某个元素的位置松开
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 95
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 96
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
素的
tagName(*、
A、INPUT
等)
value string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 97
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 将 xpath="//*[@id='nextHeadMainContainer']/div[1]/div/div[1]/ul/li[4]/a"对应的元素拖动到
id="nextContainer"的元素松开
<action driver_type="selenium">
<command>dragAndDrop</command>
<params>
<param
name="target">xpath=//*[@id='nextHeadMainContainer']/div[1]/div/div[1]/ul/li[4]/a</param>
<param name="value">id=nextContainer</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.17 将某元素拖拽到相对于它的某个位置
dragAndDropByOffset
描述:actionchains 高级命令,拖拽指定元素到距离此元素的某个位置然后松开
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 98
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
value string True - - 距离被拖拽元
素的左上角的
坐标位置,取
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 99
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
值方
式:%d,%d
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 将 xpath="//*[@id='nextHeadMainContainer']/div[1]/div/div[1]/ul/li[4]/a"对应的元素拖动到坐标
"100,100"处松开
<action driver_type="selenium">
<command>dragAndDropByOffset</command>
<params>
<param
name="target">xpath=//*[@id='nextHeadMainContainer']/div[1]/div/div[1]/ul/li[4]/a</param>
<param name="value">100,100</param>
</params>
</action>
1.8.1.18 拖拽元素到另一个元素
dragAndDropForHtml5
描述:拖拽 html5 的元素到另一个元素中然后松开
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 100
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
value string True - - 被拖拽元素目
的位置的定位
机制,取值方
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 101
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 102
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 拖动 id="drag1"对应的元素到 id="drag2"对应的元素中
<action driver_type="selenium">
<command>dragAndDropForHtml5</command>
<params>
<param name="target">id=drag1</param>
<param name="value">id=drag2</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.19 截取元素图片
elementShot
描述:截取元素图片
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 103
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
方式开头取值
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
value new_file True - - 截取图片后保
存路径,支持
的图片格
式:bmp/png/tif
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 104
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 截取页面中 id="uid"对应的元素的图片并保存为"D:\test.png"
<action driver_type="selenium">
<command>elementShot</command>
<params>
<param name="target">id=uid</param>
<param name="value">D:\test.png</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.20 执行 js 代码
executeScript
描述:执行 js 代码
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
value string True - - 可运行的 js
脚本;
webdriver 执
行 js 脚本的
超时时间为
30s,30 后会
抛出超时异
常,如果设置
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 105
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
的 timeout 参
数大于 30s,
会进行重试
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string executeScript - 执行 js 代码返回
结果
return_type list - string 返回值的类型
示例:
1. 执行 JavaScript 语句"window.alert('这是一个测试 Alert 弹窗');"
<action driver_type="selenium">
<command>executeScript</command>
<params>
<param name="value">window.alert('这是一个测试 Alert 弹窗');</param>
<param name="delay">1000</param>
</params>
</action>
2. 日期选择控件,操作比较复杂。我们可以直接定位到元素,直接给日期 input 赋值
<action driver_type="selenium">
<command>executeScript</command>
<params>
<param name="value">document.querySelector("#beginDate").value="2020-04-
17"</param>
<param name="delay">1000</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 106
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</params>
</action>
3. 某些元素,需要频繁滚动,显示后才能够点击。可以直接用 js 触发点击
<action driver_type="selenium">
<command>executeScript</command>
<params>
<param name="value">document.querySelector("#btn").click()</param>
<param name="delay">1000</param>
</params>
</action>
4. div 的滚动
<action driver_type="selenium">
<command>executeScript</command>
<params>
<param name="value">document.querySelector("#divId").scrollTo(0,100)</param>
<param name="delay">1000</param>
</params>
</action>
5. 元素文本获取并返回(gettext 命令无法获取时使用)
<action driver_type="selenium">
<command>executeScript</command>
<params>
<param name="value">return document.querySelector("#divId").textContent</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.21 快速输入
fastType
描述:快速输入
输入:
name type help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 107
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 108
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
value string True - - 要键入的数据
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 快速向 id="uid"的输入框中重新输入内容"selenese test"
<action driver_type="selenium">
<command>fastType</command>
<params>
<param name="target">id=uid</param>
<param name="value">selenese test</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.22 页面前进
forward
描述:页面前进
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 109
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 页面前进
<action driver_type="selenium">
<command>forward</command>
<params>
<param name="delay">1000</param>
</params>
</action>
1.8.1.23 获取元素的属性值
getAttribute
描述:获取页面中元素的属性值
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 110
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
器)
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 111
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
等)
value string True - - 元素的属性名
称
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string getAttribute_ret - 页面中元素的属
性值
return_type list - string 返回值的类型
示例:
1. 获取页面中 id="kw"的元素的 id 属性值
<action driver_type="selenium">
<command>getAttribute</command>
<params>
<param name="target">id=kw</param>
<param name="value">id</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.24 获取元素中子元素个数
getChildElementCount
描述:获取页面元素中某类子元素的个数
输入:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 112
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s, 分别
以
id,name,class,l
ink,xpath,css
定位需要查找
的元素
value string True - - 要获取的子元
素,et:div/a/p/t
able..
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string getChildElement - 子元素个数
Count_ret
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 113
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
return_type list - int 返回值的类型
示例:
1. 获取页面中 xpath="//*[@id='ntp-contents']"对应的元素的子元素中的 div 元素的数量
<action return="cs_num" driver_type="selenium">
<command>getChildElementCount</command>
<params>
<param name="target">xpath=//*[@id='ntp-contents']</param>
<param name="value">div</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.25 获取当前页面 cookie
getCookie
描述:获取当前页面的 cookie 的某个值
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
value string True - - 页面
Application 中
cookie 的
name
timeout number - - - 本 action 的执
行的超时时间
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 114
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string getCookie_ret - 当前页面的
cookie 的某个值
return_type list - string 返回值的类型
示例:
1. 获取浏览器中 key="delPer"的 cookie 的值
<action driver_type="selenium">
<command>getCookie</command>
<params>
<param name="value">delPer</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.26 获取下载文件
getDownloadFile
描述:获取下载文件;当你下载文件时,可以使用这个命令来监控文件是否下载完成;返回值
是下载文件列表
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 115
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
器)
参数:
name type is_required default range help
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string getDownloadFile - 下载文件的列表
_ret 集
return_type list - list 返回值的类型
示例:
1. 获取下载文件
<action driver_type="selenium" return="file">
<command>getDownloadFile</command>
<params>
<param name="delay">1000</param>
</params>
</action>
1.8.1.27 获取元素,返回一个锚点
getElement
描述:获取元素
输入:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 116
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 117
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string getElement_ret - 元素锚点
return_type fixed_string object - 返回值的类型
示例:
1. 根据 xpath="//*[@id='bbs_title_bar']/div[1]/h3/span[1]/span"获取页面中的元素
<action driver_type="selenium" return="achor">
<command>getElement</command>
<params>
<param name="target">xpath=//*[@id='bbs_title_bar']/div[1]/h3/span[1]/span</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.28 获取元素个数
getElementCount
描述:通过 xpath 获取某类元素的个数
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 118
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s, 分别
以
id,name,class,l
ink,xpath,css
定位需要查找
的元素
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string getElementCount - 元素的个数
_ret
return_type list - int 返回值的类型
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 119
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
示例:
1. 获取页面中满足 xpath="//*[@id='ntp-contents']"的元素的数量
<action return="cs_num" driver_type="selenium">
<command>getElementCount</command>
<params>
<param name="target">xpath=//*[@id='ntp-contents']</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.29 获取元素的屏幕坐标
getElementPos
描述:获取页面中元素相对于屏幕左上角的坐标
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
来定位元素位
置,其中
anchor 是查找
以 anchor 开
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 120
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
area list True center left- 选择坐标的偏
top|center|right 好位置,left-
-bottom top 表示元素
左上角的坐
标,center 表
示元素的中心
坐标,right-
bottom 表示
元素右下角的
坐标
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 121
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:
name type default range help
return string position_ret - 页面中元素相对
于屏幕的坐标
return_type list - string 返回值的类型
示例:
1. 获取页面中 id="kw"的元素中心处相对于屏幕的坐标
<action driver_type="selenium" desc="获取元素屏幕坐标" fail_on_error="True"
reference="browser_ret" return="position_ret">
<command>getElementPos</command>
<params>
<param name="target">id=kw</param>
<param name="value">center</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.30 获取表格
getTable
描述:获取表格中的数据;获取多页表格数据时,如果获取数据不完整,可能是网络原因导致
元素未加载完成,请视网络情况设置 next-page-delay 参数等待元素加载完成
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 122
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
target string - - - 下一页的元素
定位机制,取
值方
式:id/name/cla
ss/link/xpath/c
ss=%s, 以 id
开头查找表示
下一页的元
素;以 name 开
头查找表示下
一页的元素;
以 class 开头
查找表示下一
页的元素;以
link 开头通过
链接文本查找
表示下一页的
元素;以 xpath
开头通过
xpath 查找表
示下一页的元
素;以 css 开头
通过 css 查找
表示下一页的
元素。
by string - - - 数据表格所在
的容器标签
(例如 table 标
签,div 标
签),元素定
位机制,取值
方
式:id/name/cla
ss/link/xpath/c
ss=%s, 分别
以
id,name,class,l
ink,xpath,css
定位需要查找
的元素
next-page- number - - - 点击下一页的
delay 延迟时间(ms)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 123
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string getTable_ret - 表格中的数据
return_type list - list 返回值的类型
示例:
1. 获取页面中 class="layui-table-box"的 div 元素块中 table 表格数据
<action return="table" driver_type="selenium">
<command>getTable</command>
<params>
<param name="target">class="layui-laypage-next"</param>
<param name="by">css=".layui-table-view"</param>
<param name="delay">1500</param>
</params>
</action>
1.8.1.31 获取表格数据列数
getTableCols
描述:获取表格数据的列数
输入:
name type help
reference string 指定的表格
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 124
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
参数:
name type is_required default range help
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string getTableCols_ret - 表格数据的列数
return_type list - int 返回值的类型
示例:
1. 获取表格数据的列数
<action reference="cs_getTable" return="cs_num" driver_type="selenium">
<command>getTableCols</command>
<params>
<param name="delay">1000</param>
</params>
</action>
1.8.1.32 表格取值
getTableRecord
描述:根据给定行和列信息获取表格中特定数据
输入:
name type help
reference string 指定的表格
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 125
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
参数:
name type is_required default range help
value string True - - 指定获取要获
取的表格数据
的行和列信
息,三种取值
方式,第一
种:row=行
数,第二种:
col=表头,第
三种:行数,
表头
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string getTableRecord_r - 单元格的数据
et
return_type list - string 返回值的类型
示例:
1. 获取 pandas 表的第 3 行,第"城市"列的数据
<action reference="cs_getTable" return="cs_TableRecord" driver_type="selenium">
<command>getTableRecord</command>
<params>
<param name="value">3,城市</param>
<param name="delay">1000</param>
</params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 126
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</action>
1.8.1.33 获取表格数据行数
getTableRows
描述:获取表格数据的行数
输入:
name type help
reference string 指定的表格
参数:
name type is_required default range help
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string getTableRows_ret - 表格数据的行数
return_type list - int 返回值的类型
示例:
1. 获取表格数据的行数
<action reference="cs_getTable" return="cs_num" driver_type="selenium">
<command>getTableRows</command>
<params>
<param name="delay">1000</param>
</params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 127
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</action>
1.8.1.34 获取元素的文本
getText
描述:获取元素的文本信息
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 128
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string getText_ret - 元素的文本信息
return_type list - string 返回值的类型
示例:
1. 获取页面中 xpath="//*[@id='nextHeadMainContainer']/div[1]/div/div[1]/ul/li[4]/a"对应的元素的
文本内容
<action return="cs_lang" driver_type="selenium">
<command>getText</command>
<params>
<param
name="target">xpath=//*[@id='nextHeadMainContainer']/div[1]/div/div[1]/ul/li[4]/a</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 129
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="delay">1000</param>
</params>
</action>
1.8.1.35 获取当前页面的页面标题
getTitle
描述:获取当前页面的页面标题
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string getTitle_ret - 当前页面的页面
标题
return_type list - string 返回值的类型
示例:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 130
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1. 获取当前页面的页面标题
<action driver_type="selenium" return="title">
<command>getTitle</command>
<params>
<param name="delay">1000</param>
</params>
</action>
1.8.1.36 获取所有窗口句柄
getWindowHandles
描述:获取当前浏览器所有的窗口句柄;返回值是包含当前所有窗口句柄的列表
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string windowhandles - 所有窗口句柄
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 131
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
return_type list - string 返回值的类型
示例:
1. 获取当前浏览器所有的窗口句柄
<action driver_type="selenium" return="handles">
<command>getWindowHandles</command>
<params>
<param name="delay">1000</param>
</params>
</action>
1.8.1.37 判断当前页面元素是否存在
hasElement
描述:判断当前页面元素是否存在,存在返回 True,不存在返回 False;返回的 True 和 Flase 的数
据类型是 bool 类型
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 132
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
check_type list - present visible|present 根据元素状态
判断元素是否
存在,
‘visible’表
示元素在页面
中可见,
‘present’表
示元素在页面
中存在,无则
默认是
‘present’。
delay number - - - 等待多少 ms
再执行当前
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 133
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
action
timeout number - 1000 - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string hasElement_ret - 元素是否存在的
结果
return_type list - bool 返回值的类型
示例:
1. 查看页面中 id="uid"的元素是否存在
<action return="exsit" driver_type="selenium">
<command>hasElement</command>
<params>
<param name="target">id=uid</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.38 判断当前页面元素是否存在
isElementExist
描述:判断当前页面元素是否存在,存在返回 True,不存在返回 False;返回的 True 和 Flase 的数
据类型是字符串类型
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 134
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
器)
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 135
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
等)
check_type list - present visible|present 根据元素状态
判断元素是否
存在,
‘visible’表
示元素在页面
中可见,
‘present’表
示元素在页面
中存在,无则
默认是
‘present’。
delay number - - - 等待多少 ms
再执行当前
action
timeout number - 1000 - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string isElementExist_re - 元素是否存在的
t 结果
return_type list - string 返回值的类型
示例:
1. 查看页面中 id="uid"的元素是否存在
<action return="exsit" driver_type="selenium">
<command>isElementExist</command>
<params>
<param name="target">id=uid</param>
<param name="delay">1000</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 136
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.1.39 按下键盘
key_Down
描述:actionchains 高级命令,按下键盘上的某个键
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string - - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 137
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
value string True - - 键盘上的
key,取值方
式:Keys.%s,
et:Keys.Tab/K
eys.Enter
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 对元素 id="uid"的元素按下 enter 键
<action driver_type="selenium">
<command>key_Down</command>
<params>
<param name="target">id=uid</param>
<param name="value">Keys.ENTER</param>
<param name="delay">1000</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 138
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.1.40 松开键盘
key_Up
描述:actionchains 高级命令,松开键盘上的某个键
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string - - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 139
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
value string True - - 键盘上的
key,取值方
式:Keys.%s,
et:Keys.Tab/E
nter
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 对元素 id="uid"的元素松开 enter 键
<action driver_type="selenium">
<command>key_Up</command>
<params>
<param name="target">id=uid</param>
<param name="value">Keys.ENTER</param>
<param name="delay">1000</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 140
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.1.41 鼠标移动到某位置
moveByOffset
描述:actionchains 高级命令,鼠标移动到页面中距离当前位置一定距离的位置
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
value string True - - 距离鼠标当前
位置的横向距
离和纵向距
离,取值方
式:%d,%d
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 鼠标移动到距离当前"100,100"的位置
<action driver_type="selenium">
<command>moveByOffset</command>
<params>
<param name="value">100,100</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 141
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="delay">1000</param>
</params>
</action>
1.8.1.42 鼠标移动到某元素
moveToElement
描述:actionchains 高级命令,鼠标移动到某个元素的位置
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 142
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 鼠标移动到 xpath="//*[@id='nextHeadMainContainer']/div[1]/div/div[1]/ul/li[4]/a"对应的元素
<action driver_type="selenium">
<command>moveToElement</command>
<params>
<param
name="target">xpath=//*[@id='nextHeadMainContainer']/div[1]/div/div[1]/ul/li[4]/a</param>
<param name="delay">1000</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 143
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.1.43 鼠标移动到某元素相对位置
moveToElementWithOffset
描述:actionchains 高级命令,鼠标移动到距离某个元素一定距离的位置
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 144
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
value string True - - 距离 target 元
素的距离,取
值方
式:%d,%d
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 鼠标移动到距离 xpath="//*[@id='nextHeadMainContainer']/div[1]/div/div[1]/ul/li[4]/a"对应的元
素"100,100"的位置
<action driver_type="selenium">
<command>moveToElementWithOffset</command>
<params>
<param
name="target">xpath=//*[@id='nextHeadMainContainer']/div[1]/div/div[1]/ul/li[4]/a</param>
<param name="value">100,100</param>
<param name="delay">1000</param>
</params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 145
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</action>
1.8.1.44 打开新的浏览器
new_browser
描述:打开新的浏览器
输入:无
参数:
name type is_required default range help
selenium_driv list - - chrome|ie|firef driver 类型;
er_type ox 无默认是
chrome 浏览
器
executable_pa file - - - driver 路径;
th 无则是 studio
设置选项中导
入的 driver
browser_binar file - - - 浏览器的二进
y_path 制文件路径
use_local_conf list - - True|False 选择是否使用
ig 本地浏览器配
置;值为
True 或者
False,无则
默认是
False;为
True 时,不
可在
driver_options
_arguments 参
数中配置无界
面模式, 否
则会引起配置
项冲突。
driver_options string - - - 浏览器启动项
_arguments 配置,et:谷歌
浏览器的设置
--headless(无
界面执行);--
lang=zh-
CN(设置浏览
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 146
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
器的语言)。
火狐浏览器的
设置--
headless(无界
面执行)。 更
多 chrome 配
置选项参考:
https://peter.sh
/experiments/c
hromium-
command-
line-switches/
experimental_ string - - - chrome 配
option 置,只针对谷
歌浏览器,et:
设置下载路
径:{"prefs":{"
download.defa
ult_directory":
"path"}}. 更
多配置选项参
考:
https://chromi
um.googlesour
ce.com/chromi
um/src/+/mast
er/chrome/co
mmon/pref_na
mes.cc
pageLoadStrat list - - normal|eager|n web 页面加载
egy one 策略,只针对
谷歌浏览器
implicitly_wait string - - - 等待时间,是
_ms webdirver 提
供的一个超时
等待,单位是
毫秒。等待一
个元素被发
现,或一个命
令完成,如果
超出了设置时
间则抛出异常
timeout number - - - 超时时间(ms)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 147
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
delay number - - - 延迟时间(ms)
输出:
name type default range help
return string browser_ret - 浏览器对象
return_type fixed_string container - 返回值的类型
示例:
1. 启动谷歌浏览器
<action driver_type="selenium" return="browser1">
<command>new_browser</command>
</action>
2. 启动 ie 浏览器
<action driver_type="selenium" return="browser2">
<command>new_browser</command>
<params>
<param name="selenium_driver_type">ie</param>
</params>
</action>
3. 启动火狐浏览器
<action driver_type="selenium" return="browsr3">
<command>new_browser</command>
<params>
<param name="selenium_driver_type">firefox</param>
</params>
</action>
1.8.1.45 打开指定网页
open
描述:打开指定网页
输入:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 148
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True - - 目标 url(温
馨提示:url
中需要填写对
应的协议,例
如:http,
https,file
等,不可以直
接输入网址,
例如
www.example.
com,正确格
式请参考示
例)
by list - - _blank 可选项,新空
白页的打开方
式;_blank 新
打开一个窗
口,不填则在
当前窗口打开
目标网页
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 149
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
示例:
1. 用浏览器打开华为官网
<action driver_type="selenium">
<command>open</command>
<params>
<param name="target">https://www.huawei.com/</param>
<param name="delay">1000</param>
</params>
</action>
2. 用浏览器打开 URL 对应的链接
<action driver_type="selenium">
<command>open</command>
<params>
<param name="target">@{URL}</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.46 获取网页源代码
pageSource
描述:获取当前页面的网页源代码
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 150
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string pageSource_ret - 当前页面的网页
源代码
return_type list - string 返回值的类型
示例:
1. 获取当前页面的网页源代码
<action driver_type="selenium" return="pageSource_ret1">
<command>pagesource</command>
<params>
<param name="delay">1000</param>
</params>
</action>
1.8.1.47 actionchains 终止
perform
描述:actionchains 高级命令,actionchains 命令的终止
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 151
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
器)
参数:
name type is_required default range help
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 终止执行 actionchains 命令
<action driver_type="selenium">
<command>perform</command>
</action>
1.8.1.48 退出浏览器
quit
描述:退出浏览器
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要退出
new_browser 命令新打开的浏
览器,那么必须在此处指定浏
览器)
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 152
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 退出浏览器
<action driver_type="selenium">
<command>quit</command>
</action>
1.8.1.49 刷新页面
refresh
描述:刷新页面
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 153
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
action
输出:无
示例:
1. 页面刷新
<action driver_type="selenium">
<command>refresh</command>
<params>
<param name="delay">1000</param>
</params>
</action>
1.8.1.50 在某位置松开鼠标
release
描述:actionchains 高级命令,在某个元素位置松开鼠标左键
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 154
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 在页面中 name="edit"对应的元素位置松开鼠标左键
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 155
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<action driver_type="selenium">
<command>release</command>
<params>
<param name="target">name=edit</param>
<param name="delay">1000</param>
</params>
>
</action>
1.8.1.51 鼠标右击
rightClick
描述:鼠标右击
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss/text=%s(tex
t 能搭配索引
一起使用;比
如:text=更
多[1],查找网
页上第二个文
本值为"更多"
的元素;索引
不确定请使用
别的元素定位
机制)以及
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 156
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
anchor=%s,
%s,%s, 以
前面写出的七
种方式开头取
值来定位元素
位置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 157
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
示例:
1. 鼠标右键点击页面中 id="uid"的元素
<action driver_type="selenium">
<command>rightClick</command>
<params>
<param name="target">id=uid</param>
<param name="delay">1000</param>
</params>
</action>
2. 鼠标右键点击页面中文本值为"更多"的元素
<action driver_type="selenium">
<command>rightClick</command>
<params>
<param name="target">text=更多</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.52 截取屏幕图片
screenShot
描述:截取指定位置(纵向滚动条位置)的图片
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 158
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
target string - - - 纵向滚动条始
末位置;可以
没有,则截取
当前浏览器正
文显示区域
value new_file True - - 截取图片后保
存路径,支持
的图片格
式:bmp/png/jp
g/tif
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 截取浏览器当前网页 0 到 1200 位置的图片
<action driver_type="selenium">
<command>screenShot</command>
<params>
<param name="target">0,1200</param>
<param name="value">D:\test.png</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.53 滑动滚动条
scroll
描述:滑动滚动条;只能滚动页面,不能滚动元素
输入:
name type help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 159
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
value string True - - 滚动条的位
置,横向滚动
条的位置,纵
向滚动条的位
置,取值方
式:0,1000;
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 滚动滑动条
<action driver_type="selenium">
<command>scroll</command>
<params>
<param name="value">0,1000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.54 元素滚动到视图
scrollIntoView
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 160
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
描述:将当前的元素滚动到浏览器窗口的可视区域内;注意:可能导致页面错乱
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 161
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 将元素滚动到视图中
<action driver_type="selenium">
<command>scrollIntoView</command>
<params>
<param name="target">xpath=//*[@id="content"]/div[3]/app-process-defects-
grid/div/div[2]</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.55 选择下拉菜单
select
描述:选择下拉菜单元素
输入:
name type help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 162
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 163
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
value string True - - 选择选项元素
的方法,取值
方式:
index/label/val
ue=%s,分别表
示通过索引、
文本信息、以
及 value 值获
取元素
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 选择 id="se10"的下拉菜单中第一个选项
<action driver_type="selenium">
<command>select</command>
<params>
<param name="target">id=sel0</param>
<param name="value">index=0</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.56 切换 iframe 框架
selectFrame
描述:切换 iframe 框架
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 164
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True - - 定位窗口的方
式,取值方
式:index/id/na
me/css/xpath/r
elative=%s,
分别以
index,id,name,
css,xpath,relati
ve 定位窗口
位置,其中
index=num 表
示要切换窗口
的顺序位
置;relative=pa
rent/top,parent
表示切换至父
窗体,top 表示
切换到顶级窗
体
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 165
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
示例:
1. 切换到 css=iframe[temp='https://www.runoob.com/']对应的 iframe
<action driver_type="selenium">
<command>selectFrame</command>
<params>
<param name="target">css=iframe[temp='https://www.runoob.com/']</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.57 切换窗口
selectWindow
描述:切换窗口
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True win_ser_ - 窗口定位机制
新方式(推荐
IE 浏览器使
用):
index=number
,url/title/text/
选择器
(css/id/xpath/l
ink/class/name
)=%s,以上
述的 10 种方
式开头取值来
定位窗口位
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 166
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
置,其中
index 表示窗
口的顺序位
置,url 表示
窗口的页面网
址,title 表示
窗口的页面标
题,text 表示
页面中元素的
文本信息,选
择器表示使用
页面中的元素
来定位并切换
窗口,当窗口
切换失败时,
会返回原来的
窗口 窗口定
位机制旧方式
(推荐 Chrome
和 Firefox 浏
览器使用,不
支持 IE 浏览
器):浏览器
窗口切换的目
标窗口,取值
win_ser_%nu
m,num 表示
切换窗口的顺
序位置
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 切换到浏览器第一个窗口
<action driver_type="selenium">
<command>selectWindow</command>
<params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 167
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="target">win_ser_0</param>
<param name="delay">1000</param>
</params>
</action>
2. 切换到浏览器第一个窗口
<action driver_type="selenium">
<command>selectWindow</command>
<params>
<param name="target">index=0</param>
<param name="delay">1000</param>
</params>
</action>
3. 切换到页面网址为 https://isupcloud.huawei.com/group/newsite 的窗口
<action driver_type="selenium">
<command>selectWindow</command>
<params>
<param name="target">url=https://isupcloud.huawei.com/group/newsite</param>
<param name="delay">1000</param>
</params>
</action>
4. 切换到页面标题为 ISUP-首页的窗口
<action driver_type="selenium">
<command>selectWindow</command>
<params>
<param name="target">title=ISUP-首页</param>
<param name="delay">1000</param>
</params>
</action>
5. 切换到有以定义为页面中的元素文本信息的窗口
<action driver_type="selenium">
<command>selectWindow</command>
<params>
<param name="target">text=定义</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 168
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="delay">1000</param>
</params>
</action>
6. 切换到页面中有 id=kw 的元素的窗口
<action driver_type="selenium">
<command>selectWindow</command>
<params>
<param name="target">id=kw</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.58 设置窗口大小
selectWindowSize
描述:设置窗口大小
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target list True - max|min|x,y 窗口变化的大
小:max, min
and 自定义大
小比如(x,y)
width number True - - 页面宽度(像
素)
height number True - - 页面高度(像
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 169
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
素)
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 将浏览器窗口设置为最大化
<action driver_type="selenium">
<command>selectWindowSize</command>
<params>
<param name="target">max</param>
<param name="delay">1000</param>
</params>
</action>
2. 将浏览器窗口设置为最小化
<action driver_type="selenium">
<command>selectWindowSize</command>
<params>
<param name="target">min</param>
<param name="delay">1000</param>
</params>
</action>
3. 将浏览器窗口大小设置为 600,800
<action driver_type="selenium">
<command>selectWindowSize</command>
<params>
<param name="target">x,y</param>
<param name="width">600</param>
<param name="height">800</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 170
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="delay">1000</param>
</params>
</action>
4. 将浏览器窗口大小设置为 600,800
<action driver_type="selenium">
<command>selectWindowSize</command>
<params>
<param name="target">600,800</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.59 传入功能键
sendKeys
描述:传入功能键或组合键
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
来定位元素位
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 171
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
value string True - - 功能键或组合
键;功能键基
本格式:{功能
键},不区分大
小写,例
如:{Ctrl}、
{Enter};组合
键的格式{功
能键}字符、
{功能键}{功
能键}字符,例
如:{ctrl}a、
{ctrl}{shift}a
timeout number - - - 本 action 的执
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 172
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 对页面中 id="kw"的元素传入 enter 键
<action driver_type="selenium">
<command>sendKeys</command>
<params>
<param name="target">id=kw</param>
<param name="value">{Enter}</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.60 发送数据到焦点元素
sendKeysToCursor
描述:actionchains 高级命令,向当前焦点的元素发送数据,数据的字符长度受限于元素的
maxlength 属性
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 173
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
value string True - - 要输入的数据
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 向当前焦点位置写入 case
<action driver_type="selenium">
<command>sendKeysToCursor</command>
<params>
<param name="value">case</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.61 设置某元素文本信息
sendKeysToElement
描述:actionchains 高级命令,设置某个指定元素的文本信息,文本的字符长度受限于元素的
maxlength 属性
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 174
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
value string True - - 要输入的数据
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 175
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 给页面中 name="edit"的元素设置文本值为"case"
<action driver_type="selenium">
<command>sendKeysToElement</command>
<params>
<param name="target">name=edit</param>
<param name="value">case</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.62 输入文本
type
描述:清空并输入文本,文本的字符长度受限于编辑框的 maxlength 属性
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 176
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
value string - - - 要键入的数
据。如果是敏
感数据,请使
用参数来赋
值,并将参数
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 177
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
类型设置为
Sensitive。为
空则表示清空
文本。
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 向 id="uid"的输入框中重新输入内容 selenese test
<action driver_type="selenium">
<command>type</command>
<params>
<param name="target">id=uid</param>
<param name="value">selenese test</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.63 等待元素消失
waitDisappear
描述:等待元素消失
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 178
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
tagName(*、
A、INPUT
等)
check_type list - present visible|present 根据元素状态
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 179
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
判断元素是否
消失,
‘visible’表
示元素在页面
中可见,
‘present’表
示元素在页面
中存在,无则
默认是
‘present’。
delay number - - - 等待多少 ms
再执行当前
action
timeout number - 1000 - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 等待 id="kw"的元素在页面中消失
<action driver_type="selenium">
<command>waitDisappear</command>
<params>
<param name="target">id=kw</param>
<param name="delay">1000</param>
</params>
</action>
1.8.1.64 等待元素出现
waitShow
描述:等待元素出现
输入:
name type help
reference string 指定的浏览器,不填则指定
open 命令打开的浏览器(温
馨提示:如果你想要操作
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 180
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
new_browser 命令打开的浏览
器,那么必须在此处指定浏览
器)
参数:
name type is_required default range help
target string True - - 元素定位机
制,取值方
式:id/name/cla
ss/link/xpath/c
ss=%s 以及
anchor=%s,
%s,%s,以前
面写出的七种
方式开头取值
来定位元素位
置,其中
anchor 是查找
以 anchor 开
头,查找距离
锚点最近的元
素,取值方
式:anchor=锚
点,位
置,tagName,
anchor 方式中
的参数 1:锚
点(通过
getElement 命
令返回的变
量,使用时直
接使用返回的
变量即可,不
需要使用
@{});参数 2:
待查找的元素
位置
(left,right,top,
bottom,auto,
如果是 auto,
则在上下左右
中查找最近的
一个);参数
3:待查找元
素的
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 181
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
tagName(*、
A、INPUT
等)
check_type list - present visible|present 根据元素状态
判断元素是否
出现,
‘visible’表
示元素在页面
中可见,
‘present’表
示元素在页面
中存在,无则
默认是
‘present’。
delay number - - - 等待多少 ms
再执行当前
action
timeout number - 1000 - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 等待 id="kw"的元素在页面中加载完全
<action driver_type="selenium">
<command>waitShow</command>
<params>
<param name="target">id=kw</param>
<param name="delay">1000</param>
</params>
</action>
1.8.2 公共
1.8.2.1 给变量赋值
assign
描述:给变量赋值
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 182
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输入:无
参数:
name type is_required default range help
value string True - - 给变量赋的
值。支持引入
变量。支持的
赋值类型包
括:
int/float/bool/s
tr/list/tuple/dic
t/set。当赋值
为 str 型时,
必须加上双引
号,当赋值为
除 str 外的所
有类型时(包
括引入变量的
形式),无须
加上双引号。
当赋值为路径
字符串时,为
防止被转义,
请在前面加个
r,如
r"path"。
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string assign_ret - 变量的值
return_type list - string|int|float|boo 返回值的类型
l
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 183
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
示例:
1. 给变量赋值 20,数据类型为 Int:
abc = 20
<action return="abc">
<command>assign</command>
<params>
<param name="value">20</param>
<param name="delay">1000</param>
</params>
</action>
1.8.2.2 变量赋值
assignmentToVariable
描述:变量赋值,赋给变量的值的类型都是字符串。不建议使用,请使用 assign 命令。
输入:无
参数:
name type is_required default range help
target string True - - 保存数据的变
量名称.只需
输字符串,而
不用@{}括
住。
value string True - - 数据内容
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 给变量 state 赋值 false
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 184
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<action>
<command>assignmenttovariable</command>
<params>
<param name="target">state</param>
<param name="value">false</param>
</params>
</action>
1.8.2.3 退出循环
break
描述:退出 dowhile/while/for 语句
输入:无
参数:
name type is_required default range help
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 遍历 users 列表,当值为"Amy"时,则退出 for 循环,其中
users 为["Johnny","Amy","Eric"]
<action return="users">
<command>eval</command>
<params>
<param name="value">["Johnny","Amy","Eric"]</param>
</params>
</action>
<for list="@{users}" item="user">
<if condition="@{user} == "Amy"">
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 185
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<do>
<action driver_type="common">
<command>break</command>
<params/>
</action>
</do>
<else>
<action driver_type="common">
<command>messagebox</command>
<params>
<param name="value">@{user}</param>
</params>
</action>
</else>
</if>
</for>
1.8.2.4 跳出当次循环
continue
描述:跳出 dowhile/while/for 语句当次循环
输入:无
参数:
name type is_required default range help
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 遍历 users 列表,当值为"Amy"时,则结束当次 for 循环,其中
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 186
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
users 为["Johnny","Amy","Eric"]
<action return="users">
<command>eval</command>
<params>
<param name="value">["Johnny","Amy","Eric"]</param>
</params>
</action>
<for list="@{users}" item="user">
<if condition="@{user} == "Amy"">
<do>
<action driver_type="common">
<command>continue</command>
<params/>
</action>
</do>
<else>
<action driver_type="common">
<command>messagebox</command>
<params>
<param name="value">@{user}</param>
</params>
</action>
</else>
</if>
</for>
1.8.2.5 延时操作
delay
描述:延时操作
输入:无
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 187
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
value number - - - 延时时长,单
位为 ms。不
填写时默认为
3000ms。
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 给变量 user 赋值"admin"后,等待 5s 后打印其值
<action>
<command>assignmenttovariable</command>
<params>
<param name="target">user</param>
<param name="value">admin</param>
</params>
</action>
<action>
<command>delay</command>
<params>
<param name="delay">5000</param>
</params>
</action>
<action>
<command>print</command>
<params>
<param name="value">@{user}</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 188
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.2.6 下载文件
downloadFile
描述:根据 https 或者 http 链接下载文件。当下载链接为不受信任的 https 时, 如有 CA 证书,请在
设置-证书管理-服务证书中导入 CA 证书;或者设置 verify 参数为 false(这种方式存在安全风险,用
户需承担由此带来的风险)
输入:无
参数:
name type is_required default range help
url string True - - 下载文件链接
save-dir dir True - - 下载文件的保
存路径
renamed-file string - - - 文件重命名,
需要带上文件
的后缀,如
abc.txt,重命名
有可能会覆盖
已存在文件,
造成文件丢
失,请谨慎使
用
cert-verify list - True false|true 证书校验,默
认为 true, 开
启证书校验。
如不需要证书
校验,可以选
择为 false,
由此带来的安
全风险由用户
自行承担。证
书导入请查看
帮助文档。
proxy list - - false|true 设置代理,代
理设置和网络
环境有关,该
参数可能需
要,可能不需
要
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 189
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
proxy-address string True - - 代理 ip 或者
域名
proxy-port string True - - 代理端口
proxy- string - - - 代理用户名
username
proxy-pwd password - - - 代理用户名的
密码
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string file_save_path - 文件保存路径
return_type string string - 返回值类型
示例:
1. 下载文件
<action xmlId="b9919a6b-7796-4a15-ab6c-be93a2cc36d5" driver_type="common"
desc="download file" fail_on_error="True">
<command>downloadfile</command>
<params>
<param
name="url">https://files.pythonhosted.org/packages/39/fc/f91eac5a39a65f75a7adb58eac7fa78871ea987
2283fb9c44e6545998134/requests-2.25.0-py2.py3-none-any.whl</param>
<param name="save-dir">@{WORK_DIR}\https_verify_false</param>
<param name="verify">true</param>
<param name="proxy">true</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 190
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="proxy-address">@{ip}</param>
<param name="proxy-port">@{port}</param>
<param name="proxy-username">@{user}</param>
<param name="proxy-pwd">@{pwd}</param>
</params>
</action>
1.8.2.7 运行 py 表达式
eval
描述:运行 python 代码
输入:无
参数:
name type is_required default range help
target string - - - 可选项。
value 中调用
内置函数
时,target 为相
应的导包语
句。可同时导
入多个包,用
分号隔开。
value string True - - 运算的 eval
表达式。补充
说明:当使用
python 中诸
如列表的
append 或者
字典的 update
等函数时,由
于此类函数直
接对原对象的
值进行修改,
并且无返回
值。可以在变
量使用 eval
操作时,无需
return 新的变
量名,这时会
直接对原有变
量值进行修
改。然后下次
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 191
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
再次使用原有
变量时,就会
直接得到修改
之后的变量
值。
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string eval_ret - 运行 python 代码
的返回值
return_type fixed_string object - 返回值的类型
示例:
1. 引用 python 的内置库 random,生成一个 1 到 10 之间的随机整数
<action return="new_data1">
<command>eval</command>
<params>
<param name="target">from random import randint</param>
<param name="value">randint(1,10)</param>
</params>
</action>
1.8.2.8 调用 c#函数
exec.CSharp
描述:调用 c#函数
输入:无
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 192
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
function string True - - c#文件中的空
间名.类名.方
法名,以点号
分隔
file-name file True - - dll 文件名,文
件放在
Robot/cfg/plu
gin 下,不需
要.dll 后缀,
或要执行的
dll 文件的绝
对路径
class-args string - - - c#中 class 的
参数,以逗号
分隔多个参数
function-args string - - - c#中方法的参
数,以分号分
隔多个参数。
支持的
python 数据
类型包括:
int/float/bool/s
tr/list/tuple/dic
t/set。当参数
为 str 型时,
必须加上双引
号,当参数为
除 str 外的所
有类型时(包
括引入变量的
形式),无须
加上双引号。
当参数为路径
字符串时,为
防止被转义,
请在前面加个
r,如
r"path"。
timeout number - - - 执行失败后的
重试超时时间
(ms)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 193
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string execCsharp_ret - 调用 c#函数返回
结果
return_type list - string|int|float|boo 返回值的类型
l
示例:
1. 调用在 Robot/cfg/plugin 下的 calculate.dll 文件 C#函数;
方法名:ConsoleApp3.calculate.Sub;
class 参数:para1,para2
方法参数:@{a};111
<action return="new_data">
<command>exec.CSharp</command>
<params>
<param name="file-name">calculate</param>
<param name="class-args">para1,para2</param>
<param name="function">ConsoleApp3.calculate.Sub</param>
<param name="function-args">@{a};111</param>
</params>
</action>
1.8.2.9 调用 py 函数
exec.py
描述:调用 py 函数或脚本
输入:无
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 194
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
file-name file True - - 要执行的
python 脚本
的绝对路径
function string - - - 要调用的函数
名,不填写时
默认调用整个
python 脚
本。调用整个
python 脚本
时,需要依赖
用户的
python 环
境。
function-args string - - - 调用的函数或
者脚本中需要
传入的参数。
调用函数时支
持的参数类型
包括:
int/float/bool/s
tr/list/tuple/dic
t/set。关键字
传参
(key=value),
调用脚本时只
支持 str 的参
数类型。参数
的填入支持直
接填写值或者
引入变量@{}
的形式,多个
参数之间以分
号分隔。当参
数为 str 型
时,必须加上
双引号,当参
数为除 str 外
的所有类型时
(包括引入变
量的形式),
无须加上双引
号。当参数为
路径字符串
时,为防止被
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 195
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
转义,请在前
面加个 r,如
r"path"。
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
后再执行当前
action
输出:
name type default range help
return string execpy_ret - 调用 py 函数返
回的结果
return_type list - string|int|float|boo 返回值的类型
l
示例:
1. 调用 D:\\test\\python\\x.py 文件中的 fun_name 方法,同时传入 value1,value2,value3 这三个参数
<action>
<command>exec.py</command>
<params>
<param name="file-name">D:\\test\\python\\x.py</param>
<param name="function">fun_name</param>
<param name="function-args">value1;value2;value3</param>
</params>
</action>
1.8.2.10 退出机器人或者脚本
exit
描述:退出机器人或者脚本,默认退出脚本
输入:无
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 196
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
exit-type list - script script|robot 退出模式,
script 表示退
出脚本,
robot 表示退
出整个机器人
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 给变量 user 赋值"admin"后直接退出程序,不进行打印其值的操作
<action>
<command>assignmenttovariable</command>
<params>
<param name="target">user</param>
<param name="value">admin</param>
</params>
</action>
<action>
<command>exit</command>
<params/>
</action>
<action>
<command>print</command>
<params>
<param name="value">@{user}</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 197
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.2.11 获取日志信息
getLog
描述:获取日志信息
输入:无
参数:
name type is_required default range help
target list - - error|warning|i 日志等级. 如
nfo|debug 果未指定
target,则获取
所有级别的日
志信息.
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string getLog_ret - 日志信息
return_type list - string 返回值的类型
示例:
1. 获取 info 级别的日志信息
<action return="log">
<command>getLog</command>
<params>
<param name="target">info</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 198
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
2. 获取 error 级别的日志信息
<action return="log">
<command>getLog</command>
<params>
<param name="target">error</param>
</params>
</action>
3. 获取 warning 级别的日志信息
<action return="log">
<command>getLog</command>
<params>
<param name="target">warning</param>
</params>
</action>
4. 获取所有级别的日志信息
<action return="log">
<command>getLog</command>
</action>
1.8.2.12 获取字典键值
getObjectValue
描述:获取字典指定键对应的值
输入:无
参数:
name type is_required default range help
value string True - - 使用
dict.key1.key2
的方式取字典
键对应的值,
取不到时返回
None
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 199
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string getObjectValue_r - 字典指定的键值
et
return_type list - string 返回值的类型
示例:
1. 获取 dict1 字典中键为 name 的值,接着再获取键为 li 的值:new_temp=dict1["name1"]["li"]
<action return="dict1">
<command>assign</command>
<params>
<param name="value">{"name":{"li":"18"}}</param>
</params>
</action>
<action return="data">
<command>getobjectvalue</command>
<params>
<param name="value">@{dict1}.name.li</param>
</params>
</action>
1.8.2.13 发送短信
inform.sendSmsHic
描述:基于华为 HIC 短信语音服务平台发送短信, 使用前提:1.使用华为工号申请 user-id 和
user-key; 2.申请链接:http://console.hic.huawei.com/sns/#/guide/manual/list;3.必须联网; (服务器
做了频繁发送限制,如频繁发送可能出现漏发)
输入:无
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 200
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
mobiles string - - - 电话号码列
表,一个也要
写成列表形
式。不能加国
内区号,如果
加上国家码,
格式:"+" + "
国家码" + "电
话号码"
w3-accounts string - - - w3 账户列
表,一个也要
写成列表形
式。表示给
w3 账户绑定
的手机号发送
短信,前提是
必须登录了
Espace 且
Studio 启动权
限必须和
Espace 启动
权限一致,必
须同时为管理
员启动或者同
时为普通用户
启动。
user-id string True - - Robot 工具访
问 HIC 短信
服务的 ID(需
要借助华为工
号申请)
user-key password True - - Robot 工具访
问 HIC 短信
服务的
TOKEN(需要
借助华为工号
申请)
message string True - - 短信内容
timeout number - - - 执行失败后的
重试超时时间
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 201
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
(ms)
delay number - - - 等待多少 ms
后再执行当前
action
输出:无
示例:
1. 基于华为 HIC 短信语音服务平台发送短信,发送内容为“测试消息,请勿回复”
<action>
<command>inform.sendSmsHic</command>
<params>
<param name="mobiles">["138********", "138********"]</param>
<param name="w3-accounts">["test1", "test2"]</param>
<param name="user-id">********</param>
<param name="user-key">********</param>
<param name="message">测试消息,请勿回复</param>
</params>
</action>
1.8.2.14 语音电话
inform.voiceCallHic
描述:基于华为 HIC 短信语音服务平台拨打语音电话, 只支持国内电话, 使用前提:1.使用华为
工号申请 user-id 和 user-key; 2.申请链接:http://console.hic.huawei.com/sns/#/guide/manual/list;3.必
须联网;
输入:无
参数:
name type is_required default range help
mobiles string - - - 电话号码列
表,一个也要
写成列表形
式。不能加国
内区号,如果
加上国家码,
格式:"+" + "
国家码" + "电
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 202
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
话号码"
w3-accounts string - - - w3 账户列
表,一个也要
写成列表形
式。表示给
w3 账户绑定
的手机号发送
短信,前提是
必须登录了
Espace 且
Studio 启动权
限必须和
Espace 启动
权限一致,必
须同时为管理
员启动或者同
时为普通用户
启动。
user-id string True - - Robot 工具访
问 HIC 语音
服务的 ID(需
要借助华为工
号申请)
user-key password True - - Robot 工具访
问 HIC 语音
服务的
TOKEN(需要
借助华为工号
申请)
message string True - - 语音电话内容
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
后再执行当前
action
输出:无
示例:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 203
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1. 基于华为 HIC 短信语音服务平台拨打语音电话,发送内容为“测试语音”
<action>
<command>inform.voiceCallHic</command>
<params>
<param name="mobiles">["138********", "138********"]</param>
<param name="w3-accounts">["test1", "test2"]</param>
<param name="user-id">********</param>
<param name="user-key">********</param>
<param name="message">测试语音</param>
</params>
</action>
1.8.2.15 调用 PowerShell
invokePowerShell
描述:调用 PowerShell 命令
输入:无
参数:
name type is_required default range help
value string True - - 需要执行的
PowerShell 命
令或者
PowerShell 脚
本名
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 204
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
return string invokePowerShell - 调用 Powershell
_ret 返回结果
return_type list - string|int|float|boo 返回值的类型
l
示例:
1. 调用 Get-Process 的 PowerShell 命令来获取当前进程信息,返回值 a1 为 Get-Process 的回显
<action desc="获取当前进程" return="a1">
<command>invokePowerShell</command>
<params>
<param name="value">Get-Process</param>
</params>
</action>
1.8.2.16 调用 restApi
invokeRestApi
描述:请求 restApi 接口
输入:无
参数:
name type is_required default range help
target string True - - 要访问的
restapi 接口
url
value string - - - 请求数据或者
包含请求数据
的 json 文件;
请求数据涉及
路径的请将\
替换成\\, https
协议默认开启
证书校验,如
需关闭证书校
验可在 value
中设置参数
{"verify":"fals
e"},但不建
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 205
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
议使用, 由
此带来的安全
风险由用户确
认和承担
by string True - - 请求方式:
get/post/put/op
tions/head/pat
ch/delete
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string invokeRestApi_re - 调用 Api 接口返
t 回结果
return_type fixed_string object - 返回值的类型
示例:
1. 以 post 方式调用如下 API 接口:http://w3cloud.huawei.com/ApiCommonQuery/appToken/, 请
求头信息和提交参数可配置在 value 标签中,当你访问的是不受信任的 https 网站时,可以在设置-
证书管理-证书导入 中导入该网站的 CA 证书
<action return="response_data">
<command>invokeRestApi</command>
<params>
<param name="target">http://******</param>
<param name="value">{"headers":{"Content-
type":"application/json"},"data":{"content":"test"}}</param>
<param name="by">post</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 206
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
2. 以 get 方式调用如下 API 接口:http://w3.huawei.com/ws/soaservices/PersonServlet,请求头信息
和提交参数可配置在 json 文件中, 当你访问的是不受信任的 https 网站时,可以在设置-证书管理
-证书导入 导入该网站的 CA 证书
<action return="response_data">
<command>invokeRestApi</command>
<params>
<param name="target">http://******</param>
<param name="value">@{WORK_DIR}\token.json</param>
<param name="by">get</param>
</params>
</action>
1.8.2.17 结束进程
killProcess
描述:根据给定进程信息结束指定进程, 成功关闭返回 True, 否则返回 False。 使用 title 定位进
程时,不要打开跟 APP 同名的目录,否则导致无法关闭进程。 如果想要通过 title 关闭浏览器,
需要使用工具(et:inspect)获取到窗口名称。
输入:无
参数:
name type is_required default range help
option list True - pid|name|title 要处理的字符
串
pid string True - - 进程 pid
name string True - - 进程名称
title string True - - 窗口标题名称
tree list - False True|False 结束相关子进
程
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
后再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 207
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:
name type default range help
return string kill_ret - 是否成功结束进
程
return_type list - bool 返回值的类型
示例:
1. 强制结束 pid 为 25672 的进程
<action driver_type="common" desc="kill process">
<command>killProcess</command>
<params>
<param name="option">pid</param>
<param name="pid">25672</param>
<param name="delay">1000</param>
</params>
</action>
1.8.2.18 确认窗口
messageBox
描述:在页面弹出一个窗口显示输入的数据,点击确认的返回值为 ok,取消的返回值为 cancel
输入:无
参数:
name type is_required default range help
value string - - - 弹出框中的内
容
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - messagebox
自动消失时间
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 208
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:
name type default range help
return string messageBox_ret - 窗口返回值
return_type list - string 返回值的类型
示例:
1. 在页面弹出 test messagebox 的弹框,输入的字符长度最大为 8192
<action return="abc">
<command>messagebox</command>
<params>
<param name="value">test messagebox</param>
<param name="timeout">4000</param>
</params>
</action>
1.8.2.19 打印数据
描述:将数据打印到 print.log 文件中
输入:无
参数:
name type is_required default range help
value string - - - 要打印的信息
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 209
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
示例:
1. 输出字符串"print test"
<action>
<command>print</command>
<params>
<param name="value">print test</param>
<param name="delay">1000</param>
</params>
</action>
1.8.2.20 数学运算
processNum
描述:数学运算
输入:无
参数:
name type is_required default range help
target number True - - 第一个数
value number True - - 第二个数
by list True - +|-|*|/|**|// 运算类型:取
值:+、-、
*、/、**、
//,分别表示
加减乘除,幂
运算和向下取
整
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 210
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type default range help
return string processNum_ret - 数学运算结果
return_type list - string|int|float 返回值的类型
示例:
1. 计算 10.2 加上 12.36 的数值
<action return="cs_resultStr" return_type="float" desc="逻辑运算+">
<command>processNum</command>
<params>
<param name="target">10.2</param>
<param name="value">12.36</param>
<param name="by">+</param>
</params>
</action>
2. 计算 10.2 减 3.35 的数值
<action return="processNum_sub" return_type="float" desc="逻辑运算-">
<command>processNum</command>
<params>
<param name="target">10.2</param>
<param name="value">3.35</param>
<param name="by">-</param>
</params>
</action>
3. 计算 4.25 乘 2.5 的数值
<action return="processNum_mul" return_type="float" desc="逻辑运算*">
<command>processNum</command>
<params>
<param name="target">4.25</param>
<param name="value">2.5</param>
<param name="by">*</param>
</params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 211
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</action>
4. 计算 10.3 除 3.3 的数值
<action return="processNum_div" return_type="float" desc="逻辑运算/">
<command>processNum</command>
<params>
<param name="target">10.3</param>
<param name="value">3.3</param>
<param name="by">/</param>
</params>
</action>
5. 计算 10.3 整除 3.3 的数值
<action return="processNum_flo" return_type="float" desc="逻辑运算//">
<command>processNum</command>
<params>
<param name="target">10.3</param>
<param name="value">3.3</param>
<param name="by">//</param>
</params>
</action>
6. 计算 9 的 2 次幂的数值
<action return="processNum_slan" return_type="float" desc="逻辑运算**(幂)">
<command>processNum</command>
<params>
<param name="target">9</param>
<param name="value">2</param>
<param name="by">**</param>
</params>
</action>
1.8.2.21 正则匹配 findall
regex_findall
描述:对指定的字符串做正则匹配,匹配获取所有符合规则的数据,返回一个列表
输入:无
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 212
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
参数:
name type is_required default range help
target string True - - 要正则匹配的
内容
value string True - - 正则匹配规则
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string regex_findall_ret - 正则匹配 findall
返回结果
return_type list - list 返回值的类型
示例:
1. 以(\d)的匹配规则在字符串"1h2g3dfgdfgfd"抓取所有符合规则的内容
<action>
<command>regex_findall</command>
<params>
<param name="target">1h2g3dfgdfgfd</param>
<param name="value">(\d)</param>
<param name="delay">1000</param>
</params>
</action>
1.8.2.22 正则匹配 search
regex_search
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 213
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
描述:正则匹配第一个符合条件的值,返回一个字符串
输入:无
参数:
name type is_required default range help
target string True - - 要正则匹配的
内容
value string True - - 正则匹配规则
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string regex_search_ret - 正则匹配 search
返回结果
return_type list - string 返回值的类型
示例:
1. 以(\d)的匹配规则在字符串"1h2g3dfgdfgfd"抓取第一个符合规则的内容
<action>
<command>regex_search</command>
<params>
<param name="target">1h2g3dfgdfgfd</param>
<param name="value">(\d)</param>
<param name="delay">1000</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 214
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.2.23 调用 restApi
requestApi
描述:请求 restApi 接口
输入:无
参数:
name type is_required default range help
url string True - - 要访问的
restapi 接口
url
method list True - get|post|put|op 请求方式
tions|head|patc
h|delete
headers string - - - 请求头
url-params string - - - 请求参数, get
请求 url 中携
带查询参数时
使用,此时 url
参数只需填写
访问 url 中?
号(不包含?)
之前的数据,?
号(包含?)之
后的数据无需
填写,如 url 为
https://****/cg
i-
bin/media/?ac
cess_token=A
CCESS_TOK
EN&type=TY
PE, url 参数
填写
https://****/cg
i-bin/media/,
url-params 参
数填写
{"access_toke
n":"ACCESS_
TOKEN",
"type":"TYPE
"}
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 215
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
body string - - - 请求体中的
body 数据, 支
持字典,列
表,byte 等类
型的数据。
body 中不支
持 json 中的
false、true、
null 等关键
字,false、true
需要用 assign
定义,如果值
为 null 那么
该字段可以不
传
proxy list - - false|true 设置代理,代
理设置和网络
环境有关,该
参数可能需
要,可能不需
要。 如需加
代理 proxy-
username 和
proxy-pwd 两
个参数是正常
情况下需要填
写,某些特殊
情况才不需要
proxy-address string True - - 代理域名
proxy-port string True - - 代理端口
proxy- string - - - 代理用户名
username
proxy-pwd password - - - 代理用户名的
密码
setting string - - - 默认开启证书
校验, 如不需
要证书校验,
配置
{"verify":"fals
e"}, 由此带
来的安全风险
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 216
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
由用户自行承
担。证书导入
请查看帮助文
档。
files string - - - 上传文件, 格
式为
{"filename":
"path"}, 如果
是同一个文件
名对应多个文
件, 格式为
{"filename":
["path1",
"path2"]},
filename 为接
口文档中规定
的文件名,
path 为文件路
径
authorization list - - basic_auth 认证方式
username string True - - 用户名
password password True - - 密码
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string request_ret - 调用 Api 接口返
回结果
return_type fixed_string object - 返回值的类型
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 217
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
示例:
1. 以 post 方式调用如下 API 接口:https://w3cloud.huawei.com/ApiCommonQuery/, 请求头信息在
headers 参数中配置,请求体的 json 数据在参数 json-data 中配置, 当你访问的是不受信任的 https
网站时,可以在设置-证书管理-证书导入 中导入该网站的 CA 证书
<action xmlId="43f61099-242a-4663-b274-3d8aebb27629" driver_type="common" desc="调用
restApi" return="request_ret" return_type="object" fail_on_error="True">
<command>requestapi</command>
<params>
<param name="proxy">false</param>
<param name="url">http://.....</param>
<param name="method">post</param>
<param name="headers">{"Content-type":"application/json; charset=utf-8"}</param>
<param name="json-
data">{"appId":"xxxxx","credential":@{staticToken_base64}}</param>
</params>
</action>
2. 以 post 的方式上传文件, file_name 为接口文档指定的文件名, @{file_path}为文件路径
<action xmlId="3ad56057-1245-4f35-baf4-f8d3f105fcdc" driver_type="common" desc="调用
restApi" return="request_ret" return_type="object" fail_on_error="True">
<command>requestapi</command>
<params>
<param name="proxy">false</param>
<param name="url">http://xxxxx:8080/test/file/1</param>
<param name="method">post</param>
<param name="files">{"file_name":@{file_path}}</param>
</params>
</action>
1.8.2.24 比较字符串
string.compare
描述:比较字符串
输入:无
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 218
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
target string True - - 要处理的字符
串
by string True - - 比较的字符串
sensitive list - 1 0|1 0:大小写不敏
感,1:大小写
敏感,默认大
小写敏感
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
后再执行当前
action
输出:
name type default range help
return string stringcompare_ret - 比较字符串是否
相同的结果
return_type list - string 返回值的类型
示例:
1. 比较字符串"ABC"和"abc"是否相同,大小写不敏感
<action return="cs_resultCompare" return_type="string">
<command>string.compare</command>
<params>
<param name="target">ABC</param>
<param name="by">abc</param>
<param name="sensitive">0</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 219
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.2.25 是否包含指定字符串
string.contain
描述:是否包含指定字符串,包含返回 contain,不包含返回 notContain
输入:无
参数:
name type is_required default range help
target string True - - 要处理的字符
串
by string True - - 指定字符串
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
后再执行当前
action
输出:
name type default range help
return string stringcontain_ret - 包含返回
contain,不包含
返回 notContain
return_type list - string 返回值的类型
示例:
1. 字符串"ABC"是否包含字符串"abc"
<action return="cs_resultCompare" return_type="string">
<command>string.contain</command>
<params>
<param name="target">ABC</param>
<param name="by">abc</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 220
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</params>
</action>
1.8.2.26 统计字符串数量
string.count
描述:统计字符串数量
输入:无
参数:
name type is_required default range help
target string True - - 要处理的字符
串
by string True - - 统计的字符串
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
后再执行当前
action
输出:
name type default range help
return string stringcount_ret - 字符串的长度
return_type list - int 返回值的类型
示例:
1. 统计字符串"1123444445566"中"4"的个数
<action return="cs_resultCount" return_type="int">
<command>string.count</command>
<params>
<param name="target">1123444445566</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 221
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="by">4</param>
</params>
</action>
1.8.2.27 查找字符串位置
string.search
描述:查找字符串位置
输入:无
参数:
name type is_required default range help
target string True - - 要处理的字符
串
by string True - - 查找的字符串
search- number - - - search-
position position 的值
代表从左边第
几位开始找
起,-1 表示从
字符串右边开
始找起. 默认
从左边开始位
置找起
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
后再执行当前
action
输出:
name type default range help
return string stringsearch_ret - 指定字符在字符
串中的位置
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 222
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
return_type list - int 返回值的类型
示例:
1. 从字符串"aaabbbcccdddeee"右边开始查找字符串"ddd"的位置
<action return="cs_resultSearch" return_type="int">
<command>string.search</command>
<params>
<param name="target">aaabbbcccdddeee</param>
<param name="by">ddd</param>
<param name="search-position">-1</param>
</params>
</action>
1.8.2.28 分割字符串
string.split
描述:分割字符串
输入:无
参数:
name type is_required default range help
target string True - - 要处理的字符
串
by string True - - 分割的字符串
value string - - - 输出分割后列
表的第几个数
据,从 0 开始
计算
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
后再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 223
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:
name type default range help
return string stringsplit_ret - 字符串分割后的
列表
return_type list - list 返回值的类型
示例:
1. 以"@"分割字符串"aaa@123@bbb@456"
<action return="cs_resultSplit" return_type="list">
<command>string.split</command>
<params>
<param name="target">aaa@123@bbb@456</param>
<param name="by">@</param>
</params>
</action>
1.8.2.29 字符串长度统计
string.strlen
描述:字符串长度统计
输入:无
参数:
name type is_required default range help
target string - - - 要处理的字符
串
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
后再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 224
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:
name type default range help
return string stringstrlen_ret - 字符串的长度
return_type list - int 返回值的类型
示例:
1. 统计字符串"123456789"的长度
<action return="cs_resultStrlen" return_type="int">
<command>string.strlen</command>
<params>
<param name="target">123456789</param>
</params>
</action>
1.8.2.30 删除字符串两边字符
string.trim
描述:删除字符串两边指定字符
输入:无
参数:
name type is_required default range help
target string True - - 要处理的字符
串
by string - - - 删除字符串两
边的指定字符
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
后再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 225
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:
name type default range help
return string stringtrim_ret - 处理后的字符串
return_type list - string 返回值的类型
示例:
1. 删除字符串"xxabcyydefxx"两边的"x"
<action return="cs_resultTrim" return_type="string">
<command>string.trim</command>
<params>
<param name="target">xxabcyydefxx</param>
<param name="by">x</param>
</params>
</action>
1.8.2.31 自定义异常输出
throw
描述:自定义异常和异常输出
输入:无
参数:
name type is_required default range help
value string True - - 自定义的异常
名称和异常信
息,如果异常
名称不知道,
直接写根异常
Exception,
自定义异常格
式:异常名称
(异常信息)。
timeout number - - - 执行失败后的
重试超时时间
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 226
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
(ms)
delay number - - - 等待多少 ms
后再执行当前
action
输出:无
示例:
1. 自定义异常:Exception(it is a exception)
<action>
<command>throw</command>
<params>
<param name="value">Exception(it is a exception)</param>
</params>
</action>
1.8.3 Win32 应用程序
1.8.3.1 选中
addtoselection
描述:将目标控件设置为选中状态
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或 setActive
或获取控件的命令的返回值);
当 reference 参数不为空时,
target&by&targettype 才可为
空,且 target&by&targettype
为 reference 对象的子控件
参数:
name type is_required default range help
target string - - - 控件名称
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 227
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
by list - - ClassName|Na 控件名称类型
me|Automatio
nid|Path
targettype list True - ListItemContr 控件类型
ol|MenuItemC
ontrol|RadioB
uttonControl|T
abItemControl
|TreeItemCont
rol|DataItemC
ontrol
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 选择文件夹下多个文件
<action>
<command>addtoselection</command>
<params>
<param name="target">addins</param>
<param name="targettype">ListItemControl</param>
<param name="by">Name</param>
<param name="delay">1000</param>
</params>
</action>
<action>
<command>addtoselection</command>
<params>
<param name="target">assembly</param>
<param name="targettype">ListItemControl</param>
<param name="by">Name</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 228
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="delay">1000</param>
</params>
</action>
<action>
<command>addtoselection</command>
<params>
<param name="target">debug</param>
<param name="targettype">ListItemControl</param>
<param name="by">Name</param>
<param name="delay">1000</param>
</params>
</action>
1.8.3.2 鼠标左键单击
click
描述:鼠标左键单击
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或 setActive
或获取控件的命令的返回值);
当 reference 参数不为空时,
target&by&targettype 才可为
空,且 target&by&targettype
为 reference 对象的子控件
参数:
name type is_required default range help
target string - - - 控件名称; 当
by 为 Text
时,target 可
以搭配索引,
索引从 0 开
始;如 2
KB[1],点击第
二个文本值为
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 229
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
2 KB 的控件;
如 2 KB,点击
第一个文本值
为 2 KB 的控
件
by list - - ClassName|Na 控件名称类
me|Automatio 型;当 by 为
nid|Path|Text Text 可以指定
targettype 或
者不指定
targettype list True - AppBarContro 控件类型
l|ButtonContro
l|CalendarCon
trol|CheckBox
Control|Comb
oBoxControl|
CustomContro
l|DataGridCon
trol|DataItemC
ontrol|Docume
ntControl|Edit
Control|Group
Control|Heade
rControl|Head
erItemControl|
HyperlinkCont
rol|ImageCont
rol|ListControl
|ListItemContr
ol|MenuBarCo
ntrol|MenuCo
ntrol|MenuIte
mControl|Pane
Control|Progre
ssBarControl|
RadioButtonC
ontrol|ScrollB
arControl|Sem
anticZoomCon
trol|Separator
Control|Slider
Control|Spinn
erControl|Split
ButtonControl|
StatusBarCont
rol|TabControl
|TabItemContr
ol|TableContro
l|TextControl|
ThumbControl
|TitleBarContr
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 230
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
ol|ToolBarCon
trol|ToolTipCo
ntrol|TreeCont
rol|TreeItemC
ontrol|Window
Control
offset-x string - - - 相对控件的左
上角的 x 轴偏
移;可以为负
数;必须和
offset-y 搭配
使用
offset-y string - - - 相对控件的左
上角的 y 轴偏
移;可以为负
数;必须和
offset-x 搭配
使用
inner-text string - - - 点击控件内指
定的文本, 当
前仅支持
powerbuilder
创建的应用程
序;当 inner-
text 与 inner-
cell 共存时,
优先 inner-
text
inner-cell string - - - 点击控件内的
单元格,比如
"0,0" 代表 0
行 0 列,当前
仅支持
powerbuilder
创建的应用程
序
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 231
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 左键单击 ClassName 为"NetUIRibbonTab"的按钮(ButtonControl)
<action driver_type="uiautomation">
<command>click</command>
<params>
<param name="target">NetUIRibbonTab</param>
<param name="targettype">ButtonControl</param>
<param name="by">ClassName</param>
<param name="delay">1000</param>
</params>
</action>
2. 左键单击距离 ClassName 为"NetUIRibbonTab"的按钮(ButtonControl)左上角向右偏移 150px 向
下偏移 20px 的点
<action driver_type="uiautomation">
<command>click</command>
<params>
<param name="target">NetUIRibbonTab</param>
<param name="targettype">ButtonControl</param>
<param name="by">ClassName</param>
<param name="offset-x">150</param>
<param name="offset-y">20</param>
<param name="delay">1000</param>
</params>
</action>
3. 左键单击距离 ClassName 为"NetUIRibbonTab"的按钮(ButtonControl)左上角向左偏移 50px 向
上偏移 30px 的点
<action driver_type="uiautomation">
<command>click</command>
<params>
<param name="target">NetUIRibbonTab</param>
<param name="targettype">ButtonControl</param>
<param name="by">ClassName</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 232
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="offset-x">-50</param>
<param name="offset-y">-30</param>
<param name="delay">1000</param>
</params>
</action>
4. 左键单击 AutomationId 为"1000"的控件(PaneControl)内文本为 43fff 的位置
<action driver_type="uiautomation">
<command>click</command>
<params>
<param name="target">1000</param>
<param name="by">AutomationId</param>
<param name="targettype">PaneControl</param>
<param name="inner-text">43fff</param>
<param name="delay">1500</param>
</params>
</action>
5. 左键单击 AutomationId 为"1000"的控件(PaneControl)内单元格为 4,3 的位置
<action driver_type="uiautomation">
<command>click</command>
<params>
<param name="target">1000</param>
<param name="by">AutomationId</param>
<param name="targettype">PaneControl</param>
<param name="inner-cell">4,3</param>
<param name="delay">1500</param>
</params>
</action>
6. 左键单击 Text 为"2 KB"的控件
<action driver_type="uiautomation">
<command>click</command>
<params>
<param name="target">2 KB</param>
<param name="by">Text</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 233
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="delay">1000</param>
</params>
</action>
7. 左键单击第二个 Text 为"2 KB"的控件(ListItemControl)
<action driver_type="uiautomation">
<command>click</command>
<params>
<param name="target">2 KB[1]</param>
<param name="targettype">ListItemControl</param>
<param name="by">Text</param>
<param name="delay">1000</param>
</params>
</action>
1.8.3.3 关闭窗口
close
描述:关闭窗口
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或 setActive
或获取控件的命令的返回值);
当 reference 参数不为空时,
target&by&targettype 才可为
空,且 target&by&targettype
为 reference 对象的子控件
参数:
name type is_required default range help
target string - - - 控件名称
by list - - ClassName|Na 控件名称类型
me|Automatio
nid|Path
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 234
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
targettype list True - ToolTipContro 控件类型
l|WindowCont
rol
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 关闭 ClassName 为"XLMAIN"的窗口(WindowControl)
<action driver_type="uiautomation">
<command>close</command>
<params>
<param name="target">XLMAIN</param>
<param name="targettype">WindowControl</param>
<param name="by">ClassName</param>
<param name="delay">500</param>
</params>
</action>
1.8.3.4 收起控件
collapse
描述:折叠展开的控件
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或 setActive
或获取控件的命令的返回值);
当 reference 参数不为空时,
target&by&targettype 才可为
空,且 target&by&targettype
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 235
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
为 reference 对象的子控件
参数:
name type is_required default range help
target string - - - 控件名称
by list - - ClassName|Na 控件名称类型
me|Automatio
nid|Path
targettype list True - TreeItemContr 控件类型
ol|ToolBarCon
trol|SplitButto
nControl|Men
uItemControl|
ListItemContr
ol|GroupContr
ol|DataItemCo
ntrol
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 折叠 Name 为"NetWork Adapter"的 树(TreeItemControl)
<action driver_type="uiautomation">
<command>collapse</command>
<params>
<param name="target">Network Adapter</param>
<param name="targettype">TreeItemControl</param>
<param name="by">Name</param>
<param name="delay">1000</param>
</params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 236
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</action>
1.8.3.5 鼠标左键双击
doubleClick
描述:鼠标左键双击
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或 setActive
或获取控件的命令的返回值);
当 reference 参数不为空时,
target&by&targettype 才可为
空,且 target&by&targettype
为 reference 对象的子控件
参数:
name type is_required default range help
target string - - - 控件名称;当
by 为 Text
时,target 可
以搭配索引,
索引从 0 开
始;如 2
KB[1],点击第
二个文本值为
2 KB 的控件;
如 2 KB,点击
第一个文本值
为 2 KB 的控
件
by list - - ClassName|Na 控件名称类
me|Automatio 型;当 by 为
nid|Path|Text Text 可以指定
targettype 或
者不指定
targettype list True - AppBarContro 控件类型
l|ButtonContro
l|CalendarCon
trol|CheckBox
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 237
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
Control|Comb
oBoxControl|
CustomContro
l|DataGridCon
trol|DataItemC
ontrol|Docume
ntControl|Edit
Control|Group
Control|Heade
rControl|Head
erItemControl|
HyperlinkCont
rol|ImageCont
rol|ListControl
|ListItemContr
ol|MenuBarCo
ntrol|MenuCo
ntrol|MenuIte
mControl|Pane
Control|Progre
ssBarControl|
RadioButtonC
ontrol|ScrollB
arControl|Sem
anticZoomCon
trol|Separator
Control|Slider
Control|Spinn
erControl|Split
ButtonControl|
StatusBarCont
rol|TabControl
|TabItemContr
ol|TableContro
l|TextControl|
ThumbControl
|TitleBarContr
ol|ToolBarCon
trol|ToolTipCo
ntrol|TreeCont
rol|TreeItemC
ontrol|Window
Control
offset-x string - - - 相对控件的左
上角的 x 轴偏
移;可以为负
数;必须和
offset-y 搭配
使用
offset-y string - - - 相对控件的左
上角的 y 轴偏
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 238
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
移;可以为负
数;必须和
offset-x 搭配
使用
inner-text string - - - 点击控件内指
定的文本, 当
前仅支持
powerbuilder
创建的应用程
序;当 inner-
text 与 inner-
cell 共存时,
优先 inner-tex
inner-cell string - - - 点击控件内的
单元格,比如
"0,0" 代表 0
行 0 列,当前
仅支持
powerbuilder
创建的应用程
序
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 左键双击 ClassName 为"NetUIRibbonTab"的按钮(ButtonControl)
<action driver_type="uiautomation">
<command>doubleClick</command>
<params>
<param name="target">NetUIRibbonTab</param>
<param name="targettype">ButtonControl</param>
<param name="by">ClassName</param>
<param name="delay">1000</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 239
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</params>
</action>
2. 左键双击距离 ClassName 为"NetUIRibbonTab"的按钮(ButtonControl)左上角向右偏移 150px 向
下偏移 20px 的点
<action driver_type="uiautomation">
<command>doubleClick</command>
<params>
<param name="target">NetUIRibbonTab</param>
<param name="targettype">ButtonControl</param>
<param name="by">ClassName</param>
<param name="offset-x">150</param>
<param name="offset-y">20</param>
<param name="delay">1000</param>
</params>
</action>
3. 左键双击距离 ClassName 为"NetUIRibbonTab"的按钮(ButtonControl)左上角向左偏移 50px 向
上偏移 30px 的点
<action driver_type="uiautomation">
<command>doubleClick</command>
<params>
<param name="target">NetUIRibbonTab</param>
<param name="targettype">ButtonControl</param>
<param name="by">ClassName</param>
<param name="offset-x">-50</param>
<param name="offset-y">-30</param>
<param name="delay">1000</param>
</params>
</action>
4. 左键双击 AutomationId 为"1000"的控件(PaneControl)内文本为 43fff 的位置
<action driver_type="uiautomation">
<command>doubleClick</command>
<params>
<param name="target">1000</param>
<param name="by">AutomationId</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 240
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="targettype">PaneControl</param>
<param name="inner-text">43fff</param>
<param name="delay">1500</param>
</params>
</action>
5. 左键双击 AutomationId 为"1000"的控件(PaneControl)内单元格为 4,3 的位置
<action driver_type="uiautomation">
<command>doubleClick</command>
<params>
<param name="target">1000</param>
<param name="by">AutomationId</param>
<param name="targettype">PaneControl</param>
<param name="inner-cell">4,3</param>
<param name="delay">1500</param>
</params>
</action>
6. 左键双击 Text 为"2 KB"的控件
<action driver_type="uiautomation">
<command>doubleClick</command>
<params>
<param name="target">2 KB</param>
<param name="by">Text</param>
<param name="delay">1000</param>
</params>
</action>
7. 左键双击第二个 Text 为"2 KB"的控件(ListItemControl)
<action driver_type="uiautomation">
<command>doubleClick</command>
<params>
<param name="target">2 KB[1]</param>
<param name="targettype">ListItemControl</param>
<param name="by">Text</param>
<param name="delay">1000</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 241
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</params>
</action>
1.8.3.6 鼠标拖拽
dragDrop
描述:保持左键点击拖拽鼠标
输入:无
参数:
name type is_required default range help
start-pos string True - - 拖拽起始位置
end-pos string True - - 拖拽终点位置
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 保持左键单击从坐标为"123,123"拖到坐标为"630,630"的位置
<action driver_type="uiautomation">
<command>dragdrop</command>
<params>
<param name="start-pos">123,123</param>
<param name="end-pos">630,630</param>
<param name="delay">500</param>
</params>
</action>
1.8.3.7 展开控件
expand
描述:展开控件
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 242
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或 setActive
或获取控件的命令的返回值);
当 reference 参数不为空时,
target&by&targettype 才可为
空,且 target&by&targettype
为 reference 对象的子控件
参数:
name type is_required default range help
target string - - - 控件名称
by list - - ClassName|Na 控件名称类型
me|Automatio
nid|Path
targettype list True - TreeItemContr 控件类型
ol|ToolBarCon
trol|SplitButto
nControl|Men
uItemControl|
ListItemContr
ol|GroupContr
ol|DataItemCo
ntrol
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 展开 Name 为"NetWork Adapter"的 树(TreeItemwControl)
<action driver_type="uiautomation">
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 243
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<command>expand</command>
<params>
<param name="target">Network Adapter</param>
<param name="targettype">TreeItemControl</param>
<param name="by">Name</param>
<param name="delay">1000</param>
</params>
</action>
1.8.3.8 获取控件信息
getControlInfo
描述:获取控件信息;能获取到控件的 Name,ClassName,AutomationId,ControlType,Rect(控件位
置),handle(控件句柄),DefaultAction(下一个默认动作),State(控件状态),Value(文本值),Role,Help;
这些都可以用 insepct 抓取到
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或 setActive
或获取控件的命令的返回值);
当 reference 参数不为空时,
target&by&targettype 才可为
空,且 target&by&targettype
为 reference 对象的子控件
参数:
name type is_required default range help
target string - - - 控件名称
by list - - ClassName|Na 控件名称类型
me|Automatio
nid|Path
targettype list True - AppBarContro 控件类型
l|ButtonContro
l|CalendarCon
trol|CheckBox
Control|Comb
oBoxControl|
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 244
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
CustomContro
l|DataGridCon
trol|DataItemC
ontrol|Docume
ntControl|Edit
Control|Group
Control|Heade
rControl|Head
erItemControl|
HyperlinkCont
rol|ImageCont
rol|ListControl
|ListItemContr
ol|MenuBarCo
ntrol|MenuCo
ntrol|MenuIte
mControl|Pane
Control|Progre
ssBarControl|
RadioButtonC
ontrol|ScrollB
arControl|Sem
anticZoomCon
trol|Separator
Control|Slider
Control|Spinn
erControl|Split
ButtonControl|
StatusBarCont
rol|TabControl
|TabItemContr
ol|TableContro
l|TextControl|
ThumbControl
|TitleBarContr
ol|ToolBarCon
trol|ToolTipCo
ntrol|TreeCont
rol|TreeItemC
ontrol|Window
Control
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 245
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type default range help
return string control_info_ret - 获取控件文本值
return_type fixed_string object - 返回值的类型
示例:
1. 获取 ClassName 为"FNWNS380"的按钮(WindowControl)控件信息
<action driver_type="uiautomation" return="control_info_ret" reference="wind">
<command>getControlInfo</command>
<params>
<param name="target">FNWNS380</param>
<param name="targettype">WindowControl</param>
<param name="by">ClassName</param>
</params>
</action>
1.8.3.9 获取焦点选中的控件
getFocusedControl
描述:获取焦点选中的控件
输入:无
参数:
name type is_required default range help
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 246
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
return string getFocusedContro - 焦点选中的控件
l_ret
return_type fixed_string object - 返回值的类型
示例:
1. 获取鼠标焦点选中的控件,获取焦点控件的文本值
<action return="control" driver_type="uiautomation">
<command>getFocusedControl</command>
<params>
<param name="delay">500</param>
</params>
</action>
<action reference="control" return="name" driver_type="uiautomation">
<command>accessibleCurrentValue</command>
<params>
<param name="delay">500</param>
</params>
</action>
1.8.3.10 获取文本值
getText
描述:获取文本值;当获取 powerbuilder 创建的应用程序里面 PaneControl 的控件文本,返回整
个文本;当获取 listcontrol 的控件文本,会返回区域内的所有可见文本值;其他返回控件自身的
文本值
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或 setActive
或获取控件的命令的返回值);
当 reference 参数不为空时,
target&by&targettype 才可为
空,且 target&by&targettype
为 reference 对象的子控件
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 247
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
参数:
name type is_required default range help
target string - - - 控件名称
by list - - ClassName|Na 控件名称类型
me|Automatio
nid|Path
targettype list True - AppBarContro 控件类型
l|ButtonContro
l|CalendarCon
trol|CheckBox
Control|Comb
oBoxControl|
CustomContro
l|DataGridCon
trol|DataItemC
ontrol|Docume
ntControl|Edit
Control|Group
Control|Heade
rControl|Head
erItemControl|
HyperlinkCont
rol|ImageCont
rol|ListControl
|ListItemContr
ol|MenuBarCo
ntrol|MenuCo
ntrol|MenuIte
mControl|Pane
Control|Progre
ssBarControl|
RadioButtonC
ontrol|ScrollB
arControl|Sem
anticZoomCon
trol|Separator
Control|Slider
Control|Spinn
erControl|Split
ButtonControl|
StatusBarCont
rol|TabControl
|TabItemContr
ol|TableContro
l|TextControl|
ThumbControl
|TitleBarContr
ol|ToolBarCon
trol|ToolTipCo
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 248
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
ntrol|TreeCont
rol|TreeItemC
ontrol|Window
Control
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string gettext_ret - 获取控件文本值
return_type fixed_string string - 返回值的类型
示例:
1. 获取 ClassName 为"pbwd08"的控件(PaneControl)文本值
<action driver_type="uiautomation" return="gettext_ret" reference="wind">
<command>gettext</command>
<params>
<param name="target">pbwd08</param>
<param name="targettype">PaneControl</param>
<param name="by">ClassName</param>
</params>
</action>
2. 获取 ClassName 为"button"的按钮(ButtonControl)文本值
<action driver_type="uiautomation" return="gettext_ret" reference="wind">
<command>gettext</command>
<params>
<param name="target">button</param>
<param name="targettype">ButtonControl</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 249
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="by">ClassName</param>
</params>
</action>
1.8.3.11 获取子控件列表集
getchildren
描述:获取子控件列表集;返回的包含子控件对象的一个列表
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或 setActive
或获取控件的命令的返回值);
当 reference 参数不为空时,
target&by&targettype 才可为
空,且 target&by&targettype
为 reference 对象的子控件
参数:
name type is_required default range help
target string - - - 控件名称
by list - - ClassName|Na 控件名称类型
me|Automatio
nid|Path
targettype list True - AppBarContro 控件类型
l|ButtonContro
l|CalendarCon
trol|CheckBox
Control|Comb
oBoxControl|
CustomContro
l|DataGridCon
trol|DataItemC
ontrol|Docume
ntControl|Edit
Control|Group
Control|Heade
rControl|Head
erItemControl|
HyperlinkCont
rol|ImageCont
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 250
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
rol|ListControl
|ListItemContr
ol|MenuBarCo
ntrol|MenuCo
ntrol|MenuIte
mControl|Pane
Control|Progre
ssBarControl|
RadioButtonC
ontrol|ScrollB
arControl|Sem
anticZoomCon
trol|Separator
Control|Slider
Control|Spinn
erControl|Split
ButtonControl|
StatusBarCont
rol|TabControl
|TabItemContr
ol|TableContro
l|TextControl|
ThumbControl
|TitleBarContr
ol|ToolBarCon
trol|ToolTipCo
ntrol|TreeCont
rol|TreeItemC
ontrol|Window
Control
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string childrens_ret - 获取子控件列表
集
return_type fixed_string object - 返回值的类型
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 251
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
示例:
1. 获取 wind 控件所有的子控件
<action return="children_list" driver_type="uiautomation" reference="wind">
<command>getchildren</command>
</action>
2. 获取 ClassName 为"Notepad"的控件(WindowControl)所有的子控件
<action return="children_list" driver_type="uiautomation">
<command>getchildren</command>
<params>
<param name="target">Notepad(</param>
<param name="by">ClassName</param>
<param name="targettype">WindowControl</param>
</params>
</action>
1.8.3.12 获取相邻后一个控件
getnextsiblingcontrol
描述:获取相邻后一个控件
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或 setActive
或获取控件的命令的返回值);
当 reference 参数不为空时,
target&by&targettype 才可为
空,且 target&by&targettype
为 reference 对象的子控件
参数:
name type is_required default range help
target string - - - 控件名称
by list - - ClassName|Na 控件名称类型
me|Automatio
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 252
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
nid|Path
targettype list True - AppBarContro 控件类型
l|ButtonContro
l|CalendarCon
trol|CheckBox
Control|Comb
oBoxControl|
CustomContro
l|DataGridCon
trol|DataItemC
ontrol|Docume
ntControl|Edit
Control|Group
Control|Heade
rControl|Head
erItemControl|
HyperlinkCont
rol|ImageCont
rol|ListControl
|ListItemContr
ol|MenuBarCo
ntrol|MenuCo
ntrol|MenuIte
mControl|Pane
Control|Progre
ssBarControl|
RadioButtonC
ontrol|ScrollB
arControl|Sem
anticZoomCon
trol|Separator
Control|Slider
Control|Spinn
erControl|Split
ButtonControl|
StatusBarCont
rol|TabControl
|TabItemContr
ol|TableContro
l|TextControl|
ThumbControl
|TitleBarContr
ol|ToolBarCon
trol|ToolTipCo
ntrol|TreeCont
rol|TreeItemC
ontrol|Window
Control
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 253
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string nextsiblingcontrol - 相邻后一个控件
_ret
return_type fixed_string object - 返回值的类型
示例:
1. 获取 wind 控件相邻的下一个控件
<action return="next" driver_type="uiautomation" reference="wind">
<command>getnextsiblingcontrol</command>
</action>
2. 获取 Name 为"编辑(E)"的菜单元素(MenuItemControl)相邻的下一个控件
<action return="next" driver_type="uiautomation">
<command>getnextsiblingcontrol</command>
<params>
<param name="target">编辑(E)</param>
<param name="by">Name</param>
<param name="targettype">MenuItemControl</param>
</params>
</action>
1.8.3.13 获取父控件
getparentcontrol
描述:获取父控件
输入:
name type help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 254
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
reference string 引用 win32 返回的
object(waitShow 或 setActive
或获取控件的命令的返回值);
当 reference 参数不为空时,
target&by&targettype 才可为
空,且 target&by&targettype
为 reference 对象的子控件
参数:
name type is_required default range help
target string - - - 控件名称
by list - - ClassName|Na 控件名称类型
me|Automatio
nid|Path
targettype list True - AppBarContro 控件类型
l|ButtonContro
l|CalendarCon
trol|CheckBox
Control|Comb
oBoxControl|
CustomContro
l|DataGridCon
trol|DataItemC
ontrol|Docume
ntControl|Edit
Control|Group
Control|Heade
rControl|Head
erItemControl|
HyperlinkCont
rol|ImageCont
rol|ListControl
|ListItemContr
ol|MenuBarCo
ntrol|MenuCo
ntrol|MenuIte
mControl|Pane
Control|Progre
ssBarControl|
RadioButtonC
ontrol|ScrollB
arControl|Sem
anticZoomCon
trol|Separator
Control|Slider
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 255
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
Control|Spinn
erControl|Split
ButtonControl|
StatusBarCont
rol|TabControl
|TabItemContr
ol|TableContro
l|TextControl|
ThumbControl
|TitleBarContr
ol|ToolBarCon
trol|ToolTipCo
ntrol|TreeCont
rol|TreeItemC
ontrol|Window
Control
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string parentcontrol_ret - 父控件
return_type fixed_string object - 返回值的类型
示例:
1. 获取 wind 控件父控件
<action return="parent_control" driver_type="uiautomation" reference="wind">
<command>getparentcontrol</command>
</action>
2. 获取 Name 为"编辑(E)"的控件(MenuItemControl)的父控件
<action return="parent_control" driver_type="uiautomation">
<command>getparentcontrol</command>
<params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 256
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="target">编辑(E)</param>
<param name="by">Name</param>
<param name="targettype">MenuItemControl</param>
</params>
</action>
1.8.3.14 获取相邻前一个控件
getprevioussiblingcontrol
描述:获取相邻上一个控件
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或 setActive
或获取控件的命令的返回值);
当 reference 参数不为空时,
target&by&targettype 才可为
空,且 target&by&targettype
为 reference 对象的子控件
参数:
name type is_required default range help
target string - - - 控件名称
by list - - ClassName|Na 控件名称类型
me|Automatio
nid|Path
targettype list True - AppBarContro 控件类型
l|ButtonContro
l|CalendarCon
trol|CheckBox
Control|Comb
oBoxControl|
CustomContro
l|DataGridCon
trol|DataItemC
ontrol|Docume
ntControl|Edit
Control|Group
Control|Heade
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 257
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
rControl|Head
erItemControl|
HyperlinkCont
rol|ImageCont
rol|ListControl
|ListItemContr
ol|MenuBarCo
ntrol|MenuCo
ntrol|MenuIte
mControl|Pane
Control|Progre
ssBarControl|
RadioButtonC
ontrol|ScrollB
arControl|Sem
anticZoomCon
trol|Separator
Control|Slider
Control|Spinn
erControl|Split
ButtonControl|
StatusBarCont
rol|TabControl
|TabItemContr
ol|TableContro
l|TextControl|
ThumbControl
|TitleBarContr
ol|ToolBarCon
trol|ToolTipCo
ntrol|TreeCont
rol|TreeItemC
ontrol|Window
Control
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string previoussiblingco - 相邻上一个控件
ntrol_ret
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 258
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
return_type fixed_string object - 返回值的类型
示例:
1. 获取 wind 控件相邻的上一个控件
<action return="before" driver_type="uiautomation" reference="wind">
<command>getprevioussiblingcontrol</command>
</action>
2. 获取 Name 为"编辑(E)"的菜单元素(MenuItemControl)相邻的上一个控件
<action return="before" driver_type="uiautomation">
<command>getprevioussiblingcontrol</command>
<params>
<param name="target">编辑(E)</param>
<param name="by">Name</param>
<param name="targettype">MenuItemControl</param>
</params>
</action>
1.8.3.15 窗口最大化
maximize
描述:窗口最大化
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或 setActive
或获取控件的命令的返回值);
当 reference 参数不为空时,
target&by&targettype 才可为
空,且 target&by&targettype
为 reference 对象的子控件
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 259
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
target string - - - 控件名称
by list - - ClassName|Na 控件名称类型
me|Automatio
nid|Path
targettype list True - WindowContr 控件类型
ol
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 最大化 ClassName 为"XLMAIN"的窗口(WindowControl)
<action driver_type="uiautomation">
<command>maximize</command>
<params>
<param name="target">XLMAIN</param>
<param name="targettype">WindowControl</param>
<param name="by">ClassName</param>
<param name="delay">500</param>
</params>
</action>
1.8.3.16 窗口最小化
minimize
描述:窗口最小化
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或 setActive
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 260
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
或获取控件的命令的返回值);
当 reference 参数不为空时,
target&by&targettype 才可为
空,且 target&by&targettype
为 reference 对象的子控件
参数:
name type is_required default range help
target string - - - 控件名称
by list - - ClassName|Na 控件名称类型
me|Automatio
nid|Path
targettype list True - WindowContr 控件类型
ol
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 最小化 ClassName 为"XLMAIN"的窗口(WindowControl)
<action driver_type="uiautomation">
<command>maximize</command>
<params>
<param name="target">XLMAIN</param>
<param name="targettype">WindowControl</param>
<param name="by">ClassName</param>
<param name="delay">500</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 261
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.3.17 移动窗口
move
描述:移动窗口
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或 setActive
或获取控件的命令的返回值);
当 reference 参数不为空时,
target&by&targettype 才可为
空,且 target&by&targettype
为 reference 对象的子控件
参数:
name type is_required default range help
target string - - - 控件名称
by list - - ClassName|Na 控件名称类型
me|Automatio
nid|Path
targettype list True - WindowContr 控件类型
ol|ToolBarCon
trol|ThumbCo
ntrol|PaneCont
rol|HeaderIte
mControl|Hea
derControl
width number True - - 设置窗口左上
角 x 轴坐标
height number True - - 设置窗口左上
角 y 轴坐标
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 262
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
重试超时时间
(ms)
输出:无
示例:
1. 移动 ClassName 为"MMCMainFrame"的窗口(WindowControl),使窗口左上角在 800,700 的位
置
<action driver_type="uiautomation">
<command>move</command>
<params>
<param name="target">MMCMainFrame</param>
<param name="targettype">WindowControl</param>
<param name="by">ClassName</param>
<param name="width">800</param>
<param name="height">700</param>
</params>
</action>
1.8.3.18 窗口居中
moveToCenter
描述:窗口居中
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或 setActive
或获取控件的命令的返回值);
当 reference 参数不为空时,
target&by&targettype 才可为
空,且 target&by&targettype
为 reference 对象的子控件
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 263
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
target string - - - 控件名称
by list - - ClassName|Na 控件名称类型
me|Automatio
nid|Path
targettype list True - WindowContr 控件类型
ol
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 居中 ClassName 为"MMCMainFrame"的窗口(WindowControl)
<action driver_type="uiautomation">
<command>moveToCenter</command>
<params>
<param name="target">MMCMainFrame</param>
<param name="targettype">WindowControl</param>
<param name="by">ClassName</param>
</params>
</action>
1.8.3.19 设置窗口大小
resize
描述:设置窗口大小
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或 setActive
或获取控件的命令的返回值);
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 264
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
当 reference 参数不为空时,
target&by&targettype 才可为
空,且 target&by&targettype
为 reference 对象的子控件
参数:
name type is_required default range help
target string - - - 控件名称
by list - - ClassName|Na 控件名称类型
me|Automatio
nid|Path
targettype list True - WindowContr 控件类型
ol|ToolBarCon
trol|ThumbCo
ntrol|PaneCont
rol|HeaderIte
mControl|Hea
derControl
width number True - - 设置窗口宽
height number True - - 设置窗口高
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 设置 ClassName 为"MMCMainFrame"的窗口(WindowControl)大小,使窗口宽 800,高 700
<action driver_type="uiautomation">
<command>resize</command>
<params>
<param name="target">MMCMainFrame</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 265
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="targettype">WindowControl</param>
<param name="by">ClassName</param>
<param name="width">800</param>
<param name="height">700</param>
</params>
</action>
1.8.3.20 鼠标右键单击
rightClick
描述:鼠标右键单击
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或 setActive
或获取控件的命令的返回值);
当 reference 参数不为空时,
target&by&targettype 才可为
空,且 target&by&targettype
为 reference 对象的子控件
参数:
name type is_required default range help
target string - - - 控件名称;当
by 为 Text
时,target 可
以搭配索引,
索引从 0 开
始;如 2
KB[1],点击第
二个文本值为
2 KB 的控件;
如 2 KB,点击
第一个文本值
为 2 KB 的控
件
by list - - ClassName|Na 控件名称类
me|Automatio 型;当 by 为
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 266
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
nid|Path|Text Text 可以指定
targettype 或
者不指定
targettype list True - AppBarContro 控件类型
l|ButtonContro
l|CalendarCon
trol|CheckBox
Control|Comb
oBoxControl|
CustomContro
l|DataGridCon
trol|DataItemC
ontrol|Docume
ntControl|Edit
Control|Group
Control|Heade
rControl|Head
erItemControl|
HyperlinkCont
rol|ImageCont
rol|ListControl
|ListItemContr
ol|MenuBarCo
ntrol|MenuCo
ntrol|MenuIte
mControl|Pane
Control|Progre
ssBarControl|
RadioButtonC
ontrol|ScrollB
arControl|Sem
anticZoomCon
trol|Separator
Control|Slider
Control|Spinn
erControl|Split
ButtonControl|
StatusBarCont
rol|TabControl
|TabItemContr
ol|TableContro
l|TextControl|
ThumbControl
|TitleBarContr
ol|ToolBarCon
trol|ToolTipCo
ntrol|TreeCont
rol|TreeItemC
ontrol|Window
Control
offset-x string - - - 相对控件的左
上角的 x 轴偏
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 267
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
移;可以为负
数;必须和
offset-y 搭配
使用
offset-y string - - - 相对控件的左
上角的 y 轴偏
移;可以为负
数;必须和
offset-x 搭配
使用
inner-text string - - - 点击控件内指
定的文本, 当
前仅支持
powerbuilder
创建的应用程
序;当 inner-
text 与 inner-
cell 共存时,
以 inner-text
为准;当 inner-
text 和 offset
共存时,以
inner-text 为
准,offset 无
效
inner-cell string - - - 点击控件内的
单元格,比如
"0,0" 代表 0
行 0 列,当前
仅支持
powerbuilder
创建的应用程
序;当 inner-
cell 和 offset
共存时,以
inner-cell 为
准,offset 无
效
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 268
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
(ms)
输出:无
示例:
1. 右键单击 Name 为"Notepad"的控件(ListItemControl)
<action driver_type="uiautomation">
<command>rightClick</command>
<params>
<param name="target">Notepad</param>
<param name="targettype">ListItemControl</param>
<param name="by">Name</param>
<param name="delay">1000</param>
</params>
</action>
2. 右键单击距离 Name 为"Notepad"的控件(ListItemControl)左上角向右偏移 150px 向下偏移
20px 的点(ButtonControl)
<action driver_type="uiautomation">
<command>rightClick</command>
<params>
<param name="target">Notepad</param>
<param name="targettype">ListItemControl</param>
<param name="by">Name</param>
<param name="offset-x">150</param>
<param name="offset-y">20</param>
<param name="delay">1000</param>
</params>
</action>
3. 右键单击 Name 为"Notepad"的控件(ListItemControl)左上角向左偏移 50px 向上偏移 30px 的点
(ButtonControl)
<action driver_type="uiautomation">
<command>rightClick</command>
<params>
<param name="target">Notepad</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 269
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="targettype">ListItemControl</param>
<param name="by">Name</param>
<param name="offset-x">-50</param>
<param name="offset-y">-30</param>
<param name="delay">1000</param>
</params>
</action>
4. 右键单击 AutomationId 为"1000"的控件(PaneControl)内文本为 43fff 的位置
<action driver_type="uiautomation">
<command>rightClick</command>
<params>
<param name="target">1000</param>
<param name="by">AutomationId</param>
<param name="targettype">PaneControl</param>
<param name="inner-text">43fff</param>
<param name="delay">1500</param>
</params>
</action>
5. 右键单击 AutomationId 为"1000"的控件(PaneControl)内单元格为 4,3 的位置
<action driver_type="uiautomation">
<command>rightClick</command>
<params>
<param name="target">1000</param>
<param name="by">AutomationId</param>
<param name="targettype">PaneControl</param>
<param name="inner-cell">4,3</param>
<param name="delay">1500</param>
</params>
</action>
6. 右键单击 Text 为"2 KB"的控件
<action driver_type="uiautomation">
<command>rightClick</command>
<params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 270
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="target">2 KB</param>
<param name="by">Text</param>
<param name="delay">1000</param>
</params>
</action>
7. 右键单击第二个 Text 为"2 KB"的控件(ListItemControl)
<action driver_type="uiautomation">
<command>rightClick</command>
<params>
<param name="target">2 KB[1]</param>
<param name="targettype">ListItemControl</param>
<param name="by">Text</param>
<param name="delay">1000</param>
</params>
</action>
1.8.3.21 查找控件
search
描述:查找控件;返回 bool 类型的 True 和 False
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或 setActive
或获取控件的命令的返回值);
当 reference 参数不为空时,
target&by&targettype 才可为
空,且 target&by&targettype
为 reference 对象的子控件
参数:
name type is_required default range help
target string - - - 控件名称
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 271
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
by list - - ClassName|Na 控件名称类型
me|Automatio
nid|Path
targettype list True - AppBarContro 控件类型
l|ButtonContro
l|CalendarCon
trol|CheckBox
Control|Comb
oBoxControl|
CustomContro
l|DataGridCon
trol|DataItemC
ontrol|Docume
ntControl|Edit
Control|Group
Control|Heade
rControl|Head
erItemControl|
HyperlinkCont
rol|ImageCont
rol|ListControl
|ListItemContr
ol|MenuBarCo
ntrol|MenuCo
ntrol|MenuIte
mControl|Pane
Control|Progre
ssBarControl|
RadioButtonC
ontrol|ScrollB
arControl|Sem
anticZoomCon
trol|Separator
Control|Slider
Control|Spinn
erControl|Split
ButtonControl|
StatusBarCont
rol|TabControl
|TabItemContr
ol|TableContro
l|TextControl|
ThumbControl
|TitleBarContr
ol|ToolBarCon
trol|ToolTipCo
ntrol|TreeCont
rol|TreeItemC
ontrol|Window
Control
delay number - - - 等待多少 ms
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 272
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string search_ret - 查找控件的结果
return_type list - bool 返回值的类型
示例:
1. 查找 ClassName 为"XLMAIN"的窗口(WindowControl)
<action driver_type="uiautomation">
<command>search</command>
<params>
<param name="target">XLMAIN</param>
<param name="targettype">WindowControl</param>
<param name="by">ClassName</param>
<param name="delay">500</param>
</params>
</action>
1.8.3.22 选择下拉框
select
描述:选择下拉框
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或 setActive
或获取控件的命令的返回值);
当 reference 参数不为空时,
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 273
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
target&by&targettype 才可为
空,且 target&by&targettype
为 reference 对象的子控件
参数:
name type is_required default range help
target string - - - 控件名称
by list - - ClassName|Na 控件名称类型
me|Automatio
nid|Path
targettype list True ComboBoxCo ComboBoxCo 控件类型
ntrol ntrol
value string True - - 子元素选项的
Name
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 在 Name 为"Font(F)"的组合框(ComboBoxControl)选定 12 的选项
<action driver_type="uiautomation">
<command>select</command>
<params>
<param name="target">Font(F)</param>
<param name="targettype">ComboBoxControl</param>
<param name="by">Name</param>
<param name="value">12</param>
</params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 274
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</action>
1.8.3.23 键盘输入
sendKeys
描述:键盘输入;当 reference 和 target&targettype&by 都不存在时,且当前屏幕没有含鼠标焦点
的编辑框时,键盘输入值会丢失
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或 setActive
或获取控件的命令的返回值);
当 reference 参数和
target&by&targettype 不为空
时,target&by&targettype 为
reference 对象的子控件
参数:
name type is_required default range help
target string - - - 控件名称
by list - - ClassName|Na 控件名称类型
me|Automatio
nid|Path
targettype list True - AppBarContro 控件类型
l|ButtonContro
l|CalendarCon
trol|CheckBox
Control|Comb
oBoxControl|
CustomContro
l|DataGridCon
trol|DataItemC
ontrol|Docume
ntControl|Edit
Control|Group
Control|Heade
rControl|Head
erItemControl|
HyperlinkCont
rol|ImageCont
rol|ListControl
|ListItemContr
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 275
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
ol|MenuBarCo
ntrol|MenuCo
ntrol|MenuIte
mControl|Pane
Control|Progre
ssBarControl|
RadioButtonC
ontrol|ScrollB
arControl|Sem
anticZoomCon
trol|Separator
Control|Slider
Control|Spinn
erControl|Split
ButtonControl|
StatusBarCont
rol|TabControl
|TabItemContr
ol|TableContro
l|TextControl|
ThumbControl
|TitleBarContr
ol|ToolBarCon
trol|ToolTipCo
ntrol|TreeCont
rol|TreeItemC
ontrol|Window
Control
value string True - - 输入的具体字
符或者功能
键;如是敏感
数据, 请使用
参数来赋值,
并将参数类型
设置为
Sensitive;功
能键基本格
式:{功能键},
不区分大小
写,例
如:{Ctrl}、
{Enter};组合
键的格式{功
能键}字符、
{功能键}{功
能键}字符,例
如:{ctrl}a、
{ctrl}{shift}a
interval-time number - - - 字符输入间隔
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 276
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
时间,默认为
10,单位为毫
秒;当
sendkeys 输入
字符串发生错
误或异常时,
可设置并增大
间隔时间降低
发生错误的概
率,建议设置
成等于或大于
50.
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 在 ClassName 为"XLMAIN"的的窗口(WindowControl)中输入 123
<action driver_type="uiautomation">
<command>sendKeys</command>
<params>
<param name="target">XLMAIN</param>
<param name="targettype">WindowControl</param>
<param name="by">ClassName</param>
<param name="value">123</param>
<param name="delay">1000</param>
</params>
</action>
2. 在 ClassName 为"XLMAIN"的的窗口(WindowControl)中输入 Enter 功能键
<action driver_type="uiautomation">
<command>sendKeys</command>
<params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 277
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="target">XLMAIN</param>
<param name="targettype">WindowControl</param>
<param name="by">ClassName</param>
<param name="value">{Enter}</param>
<param name="delay">1000</param>
</params>
</action>
1.8.3.24 窗口置顶
setActive
描述:窗口置顶;当有 return 属性时,将置顶的窗口实例保存到变量里面
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或 setActive
或获取控件的命令的返回值);
当 reference 参数不为空时,
target&by&targettype 才可为
空,且 target&by&targettype
为 reference 对象的子控件
参数:
name type is_required default range help
target string - - - 控件名称
by list - - ClassName|Na 控件名称类型
me|Automatio
nid|Path
targettype list True - WindowContr 控件类型
ol|PaneControl
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 278
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
(ms)
输出:
name type default range help
return string setActive_ret - 窗口实例
return_type fixed_string object - 返回值的类型
示例:
1. 置顶 ClassName 为"XLMAIN"的窗口(WindowControl)
<action driver_type="uiautomation">
<command>setActive</command>
<params>
<param name="target">XLMAIN</param>
<param name="targettype">WindowControl</param>
<param name="by">ClassName</param>
<param name="delay">500</param>
</params>
</action>
2. 将 ClassName 为"CabinetWClass"的窗口(WindowControl)置顶,窗口实例保存到 dir 变量中,
然后关闭这个窗口
<action return="dir">
<command>setActive</command>
<params>
<param name="target">CabinetWClass</param>
<param name="targettype">WindowControl</param>
<param name="by">ClassName</param>
<param name="delay">1000</param>
</params>
</action>
<action reference="dir">
<command>close</command>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 279
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</action>
3. 将 ClassName 为"CabinetWClass"的窗口(WindowControl)置顶,窗口实例保存到 dir 变量中,
然后右击这个窗口里面的 Name 为"a.txt"的控件(ListItemControl)
<action return="dir">
<command>setActive</command>
<params>
<param name="target">CabinetWClass</param>
<param name="targettype">WindowControl</param>
<param name="by">ClassName</param>
<param name="delay">1000</param>
</params>
</action>
<action reference="dir">
<command>rightClick</command>
<params>
<param name="target">a.txt</param>
<param name="targettype">ListItemControl</param>
<param name="by">Name</param>
<param name="delay">1000</param>
</params>
</action>
1.8.3.25 显示桌面
showDesktop
描述:将所有应用最小化,显示桌面
输入:无
参数:
name type is_required default range help
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 280
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 将所有应用最小化,显示桌面
<action driver_type="uiautomation">
<command>showDesktop</command>
<params>
<param name="delay">500</param>
</params>
</action>
1.8.3.26 打开文件/应用程序
startApp
描述:打开文件目录或应用程序
输入:无
参数:
name type is_required default range help
target list True - application|dir 选择类
ectory|exe|bat 型,directory
为文件目录,
exe/applicatio
n 为执行程序
value string True - - 文件目录/执
行程序
by list - - status|outstrea 可选,当
m target 为
application
时;status:执
行脚本返回的
状态码,
outstream:执
行命令的回显
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 281
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string startapp_ret - target 为
application 返回
的执行状态码或
输出流
return_type list - string|int 返回值的类型;
当 target 为
application 和 by
为 status
时,return_type 才
可为 int,否则会
报错
示例:
1. 弹出打开目录对话框,默认路径"D:\test"
<action driver_type="uiautomation">
<command>startApp</command>
<params>
<param name="target">directory</param>
<param name="value">D:\test</param>
<param name="delay">1000</param>
</params>
</action>
2. 打开 Notepad
<action driver_type="uiautomation">
<command>startApp</command>
<params>
<param name="target">exe</param>
<param name="value">Notepad</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 282
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</params>
</action>
3. 执行 rd /?命令的回显存储在变量 new_data
<action driver_type="uiautomation" return="new_data">
<command>startapp</command>
<params>
<param name="target">application</param>
<param name="value">rd /?</param>
<param name="by">outstream</param>
</params>
</action>
4. 执行 python 脚本 demo_for_exec.py,返回的状态码存储在变量 new_data
<action driver_type="uiautomation" return="new_data">
<command>startapp</command>
<params>
<param name="target">application</param>
<param name="value">python demo_for_exec.py</param>
<param name="by">status</param>
</params>
</action>
1.8.3.27 等待控件消失
waitDisappear
描述:等待控件消失
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或 setActive
或获取控件的命令的返回值);
当 reference 参数不为空时,
target&by&targettype 才可为
空,且 target&by&targettype
为 reference 对象的子控件
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 283
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
参数:
name type is_required default range help
target string - - - 控件名称
by list - - ClassName|Na 控件名称类型
me|Automatio
nid|Path
targettype list True - AppBarContro 控件类型
l|ButtonContro
l|CalendarCon
trol|CheckBox
Control|Comb
oBoxControl|
CustomContro
l|DataGridCon
trol|DataItemC
ontrol|Docume
ntControl|Edit
Control|Group
Control|Heade
rControl|Head
erItemControl|
HyperlinkCont
rol|ImageCont
rol|ListControl
|ListItemContr
ol|MenuBarCo
ntrol|MenuCo
ntrol|MenuIte
mControl|Pane
Control|Progre
ssBarControl|
RadioButtonC
ontrol|ScrollB
arControl|Sem
anticZoomCon
trol|Separator
Control|Slider
Control|Spinn
erControl|Split
ButtonControl|
StatusBarCont
rol|TabControl
|TabItemContr
ol|TableContro
l|TextControl|
ThumbControl
|TitleBarContr
ol|ToolBarCon
trol|ToolTipCo
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 284
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
ntrol|TreeCont
rol|TreeItemC
ontrol|Window
Control
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 等待 ClassName 为"Font"的菜单元素(MenuItemControl)消失
<action driver_type="uiautomation">
<command>waitDisappear</command>
<params>
<param name="target">Font</param>
<param name="targettype">TreeItemControl</param>
<param name="by">ClassName</param>
<param name="delay">1000</param>
</params>
</action>
1.8.3.28 等待控件出现
waitShow
描述:等待控件出现;当有 return 属性时,将出现的窗口实例保存到变量里面
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或 setActive
或获取控件的命令的返回值);
当 reference 参数不为空时,
target&by&targettype 才可为
空,且 target&by&targettype
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 285
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
为 reference 对象的子控件
参数:
name type is_required default range help
target string - - - 控件名称
by list - - ClassName|Na 控件名称类型
me|Automatio
nid|Path
targettype list True - AppBarContro 控件类型
l|ButtonContro
l|CalendarCon
trol|CheckBox
Control|Comb
oBoxControl|
CustomContro
l|DataGridCon
trol|DataItemC
ontrol|Docume
ntControl|Edit
Control|Group
Control|Heade
rControl|Head
erItemControl|
HyperlinkCont
rol|ImageCont
rol|ListControl
|ListItemContr
ol|MenuBarCo
ntrol|MenuCo
ntrol|MenuIte
mControl|Pane
Control|Progre
ssBarControl|
RadioButtonC
ontrol|ScrollB
arControl|Sem
anticZoomCon
trol|Separator
Control|Slider
Control|Spinn
erControl|Split
ButtonControl|
StatusBarCont
rol|TabControl
|TabItemContr
ol|TableContro
l|TextControl|
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 286
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
ThumbControl
|TitleBarContr
ol|ToolBarCon
trol|ToolTipCo
ntrol|TreeCont
rol|TreeItemC
ontrol|Window
Control
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string waitShow_ret - 窗口实例
return_type fixed_string object - 返回值的类型
示例:
1. 等待 ClassName 为"Font"的菜单元素(MenuItemControl)显示
<action driver_type="uiautomation">
<command>waitShow</command>
<params>
<param name="target">Font</param>
<param name="targettype">MenuItemControl</param>
<param name="by">ClassName</param>
<param name="delay">1000</param>
</params>
</action>
2. 等待 Name 为"cancel"的按钮(ButtonControl)出现,窗口实例保存到 cancel 变量中,然后点击
这个按钮
<action return="cancel">
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 287
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<command>waitShow</command>
<params>
<param name="target">cancel</param>
<param name="targettype">ButtionControl</param>
<param name="by">Name</param>
</params>
</action>
<action reference="cancel">
<command>click</command>
</action>
3. 等待 ClassName 为"CabinetWClass"的窗口(WindowControl)出现,窗口实例保存到 dir 变量中,
然后右击这个窗口里面的 Name 为"a.txt"的控件(ListItemControl)
<action return="dir">
<command>waitShow</command>
<params>
<param name="target">CabinetWClass</param>
<param name="targettype">WindowControl</param>
<param name="by">ClassName</param>
<param name="delay">1000</param>
</params>
</action>
<action reference="dir">
<command>rightClick</command>
<params>
<param name="target">a.txt</param>
<param name="targettype">ListItemControl</param>
<param name="by">Name</param>
<param name="delay">1000</param>
</params>
</action>
1.8.3.29 滚动条下拉
wheelDown
描述:滚动条下拉;滚动条变换位置时勿切换窗口
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 288
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或 setActive
或获取控件的命令的返回值);
当 reference 参数不为空时,
target&by&targettype 才可为
空,且 target&by&targettype
为 reference 对象的子控件
参数:
name type is_required default range help
target string - - - 控件名称
by list - - ClassName|Na 控件名称类型
me|Automatio
nid|Path
targettype list True - AppBarContro 控件类型
l|ButtonContro
l|CalendarCon
trol|CheckBox
Control|Comb
oBoxControl|
CustomContro
l|DataGridCon
trol|DataItemC
ontrol|Docume
ntControl|Edit
Control|Group
Control|Heade
rControl|Head
erItemControl|
HyperlinkCont
rol|ImageCont
rol|ListControl
|ListItemContr
ol|MenuBarCo
ntrol|MenuCo
ntrol|MenuIte
mControl|Pane
Control|Progre
ssBarControl|
RadioButtonC
ontrol|ScrollB
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 289
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
arControl|Sem
anticZoomCon
trol|Separator
Control|Slider
Control|Spinn
erControl|Split
ButtonControl|
StatusBarCont
rol|TabControl
|TabItemContr
ol|TableContro
l|TextControl|
ThumbControl
|TitleBarContr
ol|ToolBarCon
trol|ToolTipCo
ntrol|TreeCont
rol|TreeItemC
ontrol|Window
Control
value number True - - 滚轮滑动间
隔; 滚动条拖
到最下面时而
命令执行还没
结束,可能是
value 设置过
大
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 下拉 ClassName 为"CabinetWClass"的窗口(WindowControl)的滚动条
<action driver_type="uiautomation">
<command>wheelDown</command>
<params>
<param name="target">CabinetWClass</param>
<param name="targettype">WindowControl</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 290
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="by">ClassName</param>
<param name="value">10</param>
<param name="delay">1000</param>
</params>
</action>
1.8.3.30 滚动条上拉
wheelUp
描述:滚动条上拉;滚动条变换位置时勿切换窗口
输入:
name type help
reference string 引用 win32 返回的
object(waitShow 或 setActive
或获取控件的命令的返回值);
当 reference 参数不为空时,
target&by&targettype 才可为
空,且 target&by&targettype
为 reference 对象的子控件
参数:
name type is_required default range help
target string - - - 控件名称
by list - - ClassName|Na 控件名称类型
me|Automatio
nid|Path
targettype list True - AppBarContro 控件类型
l|ButtonContro
l|CalendarCon
trol|CheckBox
Control|Comb
oBoxControl|
CustomContro
l|DataGridCon
trol|DataItemC
ontrol|Docume
ntControl|Edit
Control|Group
Control|Heade
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 291
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
rControl|Head
erItemControl|
HyperlinkCont
rol|ImageCont
rol|ListControl
|ListItemContr
ol|MenuBarCo
ntrol|MenuCo
ntrol|MenuIte
mControl|Pane
Control|Progre
ssBarControl|
RadioButtonC
ontrol|ScrollB
arControl|Sem
anticZoomCon
trol|Separator
Control|Slider
Control|Spinn
erControl|Split
ButtonControl|
StatusBarCont
rol|TabControl
|TabItemContr
ol|TableContro
l|TextControl|
ThumbControl
|TitleBarContr
ol|ToolBarCon
trol|ToolTipCo
ntrol|TreeCont
rol|TreeItemC
ontrol|Window
Control
value number True - - 滚轮滑动间
隔; 滚动条拖
到最上面时而
命令执行还没
结束,可能是
value 设置过
大
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 292
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 上拉 ClassName 为"CabinetWClass"的窗口(WindowControl)的滚动条
<action driver_type="uiautomation">
<command>wheelUp</command>
<params>
<param name="target">CabinetWClass</param>
<param name="targettype">WindowControl</param>
<param name="by">ClassName</param>
<param name="value">10</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4 JavaSwing 应用
1.8.4.1 左键单击
Button.click
描述:左键单击
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index|name|tex 获取控件的方
t|index_in_con 式
tainer
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 293
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 单击文本为 Yes 的控件
<action reference="promptDialog" driver_type="swing">
<command>Button.click</command>
<params>
<param name="target">Yes</param>
<param name="by">text</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.2 等待点击
Button.waitclick
描述:等待点击
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 294
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
by list True - index|name|tex 获取控件的方
t|index_in_con 式
tainer
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number True - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 等待点击文本为 Yes 的控件
<action reference="promptDialog" driver_type="swing">
<command>Button.waitclick</command>
<params>
<param name="target">Yes</param>
<param name="by">text</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.3 等待按钮消失
Button.waitdisappear
描述:等待按钮消失
输入:
name type help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 295
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index|name|tex 获取控件的方
t|index_in_con 式
tainer
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number True - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 等待文本为 Yes 的按钮消失
<action reference="promptDialog" driver_type="swing">
<command>Button.waitdisappear</command>
<params>
<param name="target">Yes</param>
<param name="by">text</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 296
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.4.4 选择单选框
CheckBox.click
描述:选择单选框
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index|name|tex 获取控件的方
t|index_in_con 式
tainer
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 选定文本为 Yes 的单选框
<action reference="promptDialog" driver_type="swing">
<command>CheckBox.click</command>
<params>
<param name="target">Yes</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 297
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="by">text</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.5 取选中框的值
CheckBox.gettext
描述:取选中框的值
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index|name|tex 获取控件的方
t|index_in_con 式
tainer
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 298
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type default range help
return string CheckBoxgettext - 选中框的值
_ret
return_type list - string 返回值的类型
示例:
1. 获取 index=0 的多选框选中的值
<action reference="promptDialog" return="testStr" return_type="string" driver_type="swing">
<command>CheckBox.gettext</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.6 点击下拉列表
ComboBox.click
描述:点击下拉列表
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index|name|in 获取控件的方
dex_in_contai 式
ner
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 299
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 index=1 的下拉框中
<action reference="mainFrame" driver_type="swing">
<command>ComboBox.click</command>
<params>
<param name="target">1</param>
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.7 取下拉列表值
ComboBox.gettext
描述:取下拉列表值
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 300
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
参数:
name type is_required default range help
by list True - index|name|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string ComboBoxgettext - 下拉列表值
_ret
return_type list - string 返回值的类型
示例:
1. 获取 index=1 的下拉框中选中的值
<action reference="mainFrame" return="retStr" return_type="string" driver_type="swing">
<command>ComboBox.gettext</command>
<params>
<param name="target">1</param>
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 301
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</params>
</action>
1.8.4.8 选择下拉列表
ComboBox.select
描述:选择下拉列表
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index|name|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
item-by list True - item- 列表选项的过
index|item- 滤方式
text|item-text-
contains
item-value string True - - 列表选项的过
滤方式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 302
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 选定 index=1 的下拉框中 index=3 的 item
<action reference="mainFrame" driver_type="swing">
<command>ComboBox.select</command>
<params>
<param name="target">1</param>
<param name="by">index</param>
<param name="item-by">item-index</param>
<param name="item-value">3</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.9 居中弹窗
Dialog.center
描述:居中弹窗
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index|name|titl 获取控件的方
e 式
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 303
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 将标题为 Login 的窗口居中
<action reference="mainFrame" driver_type="swing">
<command>Dialog.center</command>
<params>
<param name="target">Login</param>
<param name="by">title</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.10 关闭对话框
Dialog.close
描述:关闭对话框
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 304
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
by list True - index|name|titl 获取控件的方
e 式
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 关闭标题为 Create project 的窗口
<action reference="mainFrame" driver_type="swing">
<command>Dialog.close</command>
<params>
<param name="target">Create project</param>
<param name="by">title</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.11 等待窗体消失
Dialog.waitdisappear
描述:等待窗体消失
输入:
name type help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 305
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index|name|titl 获取控件的方
e 式
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number True - - 本 action 的执
行的超时时间
(ms)
delay number True 1000 - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 等待标题为 Create project 的窗口消失
<action reference="mainFrame" driver_type="swing">
<command>Dialog.waitdisappear</command>
<params>
<param name="target">Create project</param>
<param name="by">title</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 306
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.4.12 等待窗体出现
Dialog.waitshow
描述:等待窗体出现
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index|name|titl 获取控件的方
e 式
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number True - - 本 action 的执
行的超时时间
(ms)
delay number True 1000 - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string dialog_ret - 对话框
return_type fixed_string container - 返回值的类型
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 307
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
示例:
1. 等待标题为 Create project 的窗口出现
<action reference="mainFrame" return="createDialog" return_type="container"
driver_type="swing">
<command>Dialog.waitshow</command>
<params>
<param name="target">Create project</param>
<param name="by">title</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.13 保存文件
FileChooser.type
描述:
保存文件、上传文件
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True name name 获取控件的方
式
file-path file True - - 文件目录或者
文件路径
timeout number - - - 本 action 的执
行的超时时间
(ms)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 308
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 上传 D:\omstarTest\demo.zip 文件
<action reference="promptDialog" driver_type="swing">
<command>FileChooser.type</command>
<params>
<param name="by">name</param>
<param name="file-path">D:\omstarTest\demo.zip</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.14 等待主容器加载
Frame.waitshow
描述:等待主容器加载
输入:无
参数:
name type is_required default range help
by list True - name|title|inde 获取控件的方
x 式
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number True - - 本 action 的执
行的超时时间
(ms)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 309
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string mainframe_ret - 主窗体
return_type fixed_string container - 返回值的类型
示例:
1. 等待 name 属性值等于 MDIFrame 的主容器加载完成
<action return="mainFrame" return_type="container" driver_type="swing">
<command>Frame.waitshow</command>
<params>
<param name="target">MDIFrame</param>
<param name="by">name</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.15 点击页签
Label.click
描述:点击页签
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 310
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
by list True - name|text|inde 获取控件的方
x|index_in_co 式
ntainer
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击文本等于 Tasklist 的页签
<action reference="mainWindow" driver_type="swing">
<command>Label.click</command>
<params>
<param name="target">TaskList</param>
<param name="by">text</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.16 获取 label 的值
Label.gettext
描述:获取 label 的值
输入:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 311
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string Labelgettext_ret - label 的值
return_type list - string 返回值的类型
示例:
1. 获取属性值 name 等于 LabelName 的页签的值
<action reference="mainWindow" return="resultStr" return_type="string" driver_type="swing">
<command>Label.gettext</command>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 312
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<params>
<param name="target">labelName</param>
<param name="by">name</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.17 等待页签匹配
Label.waitequals
描述:等待页签匹配
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number True - - 本 action 的执
行的超时时间
(ms)
value string True - - 需要匹配的目
标值
delay number - - - 等待多少 ms
再执行当前
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 313
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
action
输出:无
示例:
1. 等待 name 属性值等于 labelName 的控件匹配值 login
<action reference="mainFrame" driver_type="swing">
<command>Label.waitequals</command>
<params>
<param name="target">labelName</param>
<param name="by">name</param>
<param name="value">login</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.18 等待页签出现
Label.waitshow
描述:等待页签出现
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|text|inde 获取控件的方
x|index_in_co 式
ntainer
target string True - - 控件方式的
值,使用文本
值时通过后缀
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 314
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
[序号] 表示
第几个,如
Text[0]
timeout number True - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string Labelwaitshow_re - 页签控件
t
return_type fixed_string container - 返回值的类型
示例:
1. 等待文本等于 Tasklist 的页签出现
<action reference="mainWindow" return="targetLabel" return_type="container"
driver_type="swing">
<command>Label.waitshow</command>
<params>
<param name="target">Task List</param>
<param name="by">text</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.19 点击列表选项
List.click
描述:点击列表选项
输入:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 315
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
item-by list True - item- 定位列表选项
index|item- 的方式
text|item-text-
contains
item-value string True - - 列表选项的方
式的值
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 根据 index 等于 1 定位列表控件,点击控件中 index=2000 的选项
<action reference="mainFrame" driver_type="swing">
<command>List.click</command>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 316
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<params>
<param name="target">1</param>
<param name="by">index</param>
<param name="item-by">item-index</param>
<param name="item-value">2000</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.20 获取选中列表项
List.gettext
描述:获取选中列表项
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 317
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
action
输出:
name type default range help
return string Listgettext_ret - 选中列表项的值
return_type list - string 返回值的类型
示例:
1. 根据 index 等于 1 定位列表控件,获取其选定的值
<action reference="mainFrame" return="retStr" return_type="string" driver_type="swing">
<command>List.gettext</command>
<params>
<param name="target">1</param>
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.21 选择列表选项
List.select
描述:选择列表选项
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 318
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
item-by list True - item- 定位列表选项
index|item- 的方式
text|item-text-
contains
item-value string True - - 列表选项的方
式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 根据 index 等于 1 定位列表控件,选定控件中 index=2000 的选项
<action reference="mainFrame" driver_type="swing">
<command>List.select</command>
<params>
<param name="target">1</param>
<param name="by">index</param>
<param name="item-by">item-index</param>
<param name="item-value">2000</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 319
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</action>
1.8.4.22 点击菜单
Menu.click
描述:点击菜单
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|tex 获取控件的方
t|index_in_con 式
tainer
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击文本等于 File 的菜单
<action reference="mainFrame" driver_type="swing">
<command>Menu.click</command>
<params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 320
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="target">File</param>
<param name="by">Text</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.23 等待进度条加载
ProgressBar.wait_until_progressbar_value_is
描述:等待进度条加载
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number True - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action,value
较小时不建议
设置
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 321
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
value string True - - 等待进度条加
载到目标值
(具体数值 or
进度条百分
比)
输出:无
示例:
1. 等待 name 属性值的等于 processbar 的进度条加载到 100%
<action reference="mainFrame" driver_type="swing">
<command>ProgressBar.wait_until_progressbar_value_is</command>
<params>
<param name="target">processbar</param>
<param name="by">name</param>
<param name="value">100%</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.24 点击单选按钮
RadioButton.click
描述:点击单选按钮
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|tex 获取控件的方
t|index_in_con 式
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 322
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
tainer
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 index 等于 0 的单选按钮
<action reference="SelectFolderWindow" driver_type="swing">
<command>RadioButton.click</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.25 拖动滚动条
ScrollBar.scrollto
描述:拖动滚动条
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 323
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
value string True - - 拖动的像素或
者百分比
输出:无
示例:
1. 拖动 index 等于 0 的滚动条
<action reference="mainFrame" driver_type="swing">
<command>Scrollbar.scrollTo</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="value">220</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 324
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.4.26 点击面板
ScrollPane.click
描述:点击面板
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 index 等于 0 的面板
<action reference="mainFrame" driver_type="swing">
<command>ScrollPane.click</command>
<params>
<param name="target">0</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 325
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.27 右击面板
ScrollPane.rightclick
描述:右击面板
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 326
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1. 右击 index 等于 0 的面板
<action reference="mainFrame" driver_type="swing">
<command>ScrollPane.rightclick</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.28 拖动滑块
Slider.type
描述:拖动滑块
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 327
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
value number True - - 滑块拖拽的距
离
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 拖动 index 等于 1 的滑块,拖动距离为 8
<action reference="mainFrame" driver_type="swing">
<command>Slider.type</command>
<params>
<param name="target">1</param>
<param name="by">index</param>
<param name="value">8</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.29 拖动窗格分割线
SplitPane.type
描述:拖动窗格分割线
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 328
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
ner 式
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
value number True - - 拖拽的像素比
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 拖动 index=1 的窗格分割线
<action reference="mainFrame" driver_type="swing">
<command>SplitPane.type</command>
<params>
<param name="target">1</param>
<param name="by">index</param>
<param name="value">0.5</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.30 点击选项卡式窗格
TabbedPane.click
描述:点击选项卡式窗格
输入:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 329
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
item-by list True - index|title|inde 窗格中页签的
x_in_container 定位方式
item-value string True - - 页签定位方式
的值
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 index 等于 0 的表格面板中 index 等于 1 的页签
<action reference="mainFrame" driver_type="swing">
<command>TabbedPane.click</command>
<params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 330
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="target">0</param>
<param name="by">index</param>
<param name="item-by">index</param>
<param name="item-value">1</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.31 点击单元格
Table.click_cell
描述:点击单元格
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
cell-pos string True - - 单元格坐标
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 331
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
offset string - 50%,50% - 点击偏移量
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 index 等于 0 的控件中坐标为 2,2 的单元格,点击的偏移量为 50%,50%
<action reference="deleteDialog" driver_type="swing">
<command>Table.click_cell</command>
<params>
<param name="target">0</param>
<param name="cell-pos">2,2</param>
<param name="offset">50%,50%</param>
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.32 点击表头
Table.click_header
描述:点击表头
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 332
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
col-index string True - - 表头的列号
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 name 属性值等于 deleteDialog 的控件中第 3 列的表头
<action reference="deleteDialog" driver_type="swing">
<command>Table.click_header</command>
<params>
<param name="target">deleteDialog</param>
<param name="by">name</param>
<param name="col-index">2</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.33 双击单元格
Table.doubleclick
描述:双击单元格
输入:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 333
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
cell-pos string True - - 单元格坐标
offset string - 50%,50% - 点击偏移量
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 双击 name 属性值等于 dataImportTaskTable 的控件中坐标为 2,2 的单元格,点击的偏移量为
50%,50%
<action reference="deleteDialog" driver_type="swing">
<command>Table.doubleclick</command>
<params>
<param name="by">name</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 334
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="target">dataImportTaskTable</param>
<param name="cell-pos">2,2</param>
<param name="offset">50%,50%</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.34 获取目标行号
Table.get_rowno
描述:获取目标行号
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
cell-value-filter list True - cell-value- 单元格目标值
equals|cell- 的过滤方式
value-
contains|cell-
value-
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 335
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
start|cell-
value-end
filter-value string True - - 过滤方式的值
col-index number True - - 列的索引号
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string Tableget_rowno_r - 目标行号
et
return_type list - string 返回值的类型
示例:
1. 获取 name 属性值等于 deletDialog 的控件中第 3 列中等于 2 的行号
<action reference="deleteDialog" return="rownumber" return_type="int" driver_type="swing">
<command>Table.get_rowno</command>
<params>
<param name="target">deleteDialog</param>
<param name="by">name</param>
<param name="cell-value-filter">cell-value-equals</param>
<param name="filter-value">2</param>
<param name="col-index">2</param>
</params>
</action>
1.8.4.35 获取表格总列数
Table.gettablecols
描述:获取表格总列数
输入:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 336
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string Tablegettablecols - 表格总列数
_ret
return_type list - string 返回值的类型
示例:
1. 获取 name 属性值等于 tableName 的控件的列数
<action reference="loginWindow" return="tableRows" return_type="string" driver_type="swing">
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 337
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<command>Table.getTableCols</command>
<params>
<param name="target">tableName</param>
<param name="by">name</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.36 获取表格总行数
Table.gettablerows
描述:获取表格总行数
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 338
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:
name type default range help
return string Tablegettablerows - 表格总行数
_ret
return_type list - string 返回值的类型
示例:
1. 获取 name 属性值等于 tableName 的控件的行数
<action reference="loginWindow" return="tableRows" return_type="string" driver_type="swing">
<command>Table.getTableRows</command>
<params>
<param name="target">tableName</param>
<param name="by">name</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.37 获取单元格的内容
Table.gettext
描述:获取单元格的内容
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 339
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
cell-pos string True - - 单元格坐标
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string Tablegettext_ret - 单元格的内容
return_type list - string 返回值的类型
示例:
1. 获取 name 属性值等于 name 的控件中坐标为 2,2 的单元格的内容
<action reference="mainWindow" return="targetResult" return_type="string" driver_type="swing">
<command>Table.gettext</command>
<params>
<param name="target">name</param>
<param name="by">name</param>
<param name="cell-pos">2,2</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 340
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</action>
1.8.4.38 右击单元格
Table.rightclick
描述:右击单元格
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
cell-pos string True - - 单元格坐标
offset string - 50%,50% - 点击偏移量
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 341
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1. 右键单击 name 属性等于 dataImportTaskTable 的控件中坐标为 0,2 的单元格,点击偏移量为
50%,50%
<action reference="deleteDialog" driver_type="swing">
<command>Table.rightclick</command>
<params>
<param name="target">dataImportTaskTable</param>
<param name="by">name</param>
<param name="cell-pos">0,2</param>
<param name="offset">50%,50%</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.39 右击表头
Table.rightclick_header
描述:右击表头
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 342
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
timeout number - - - 本 action 的执
行的超时时间
(ms)
col-index string True - - 表头的列号
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 右键单击 index 等于 0 的控件的第 3 列的表头
<action reference="deleteDialog" driver_type="swing">
<command>Table.rightclick_header</command>
<params>
<param name="by">index</param>
<param name="target">0</param>
<param name="col-index">2</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.40 右击选中单元格
Table.rightclickselectedcell
描述:右击选中单元格
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 343
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
offset string - 50%,50% - 点击偏移量
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 右键选中 name 属性值等于 dataImportTaskTable 的控件中当前所在的表格,点击的偏移量为
50%,50%
<action reference="deleteDialog" driver_type="swing">
<command>Table.rightclickselectedcell</command>
<params>
<param name="target">dataImportTaskTable</param>
<param name="by">name</param>
<param name="offset">50%,50%</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.41 全选表格
Table.selectall
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 344
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
描述:全选表格
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 全选 index 等于 1 的表格控件
<action reference="mainFrame" driver_type="swing">
<command>Table.selectall</command>
<params>
<param name="target">1</param>
<param name="by">index</param>
<param name="timeout">2000</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 345
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="delay">1000</param>
</params>
</action>
1.8.4.42 批量选择列号
Table.selectcols
描述:批量选择列号
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
col-start number True - - 列号开始的位
置
col-end number True - - 列号結束的位
置
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 346
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 选定 index 等于 1 的控件的第 1 列到第 3 列
<action reference="mainFrame" driver_type="swing">
<command>Table.selectcols</command>
<params>
<param name="target">1</param>
<param name="by">index</param>
<param name="col-start">0</param>
<param name="col-end">2</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.43 批量选择行号
Table.selectrows
描述:批量选择行号
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 347
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
第几个,如
Text[0]
row-start number True - - 行号开始的位
置
row-end number True - - 行号結束的位
置
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 选定 index 等于 1 的控件的第 1 行到第 3 行
<action reference="mainFrame" driver_type="swing">
<command>Table.selectrows</command>
<params>
<param name="target">1</param>
<param name="by">index</param>
<param name="row-start">0</param>
<param name="row-end">2</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.44 单元格包含匹配值
Table.waitcellcontains
描述:单元格包含匹配值
输入:
name type help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 348
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number True - - 本 action 的执
行的超时时间
(ms)
cell-pos string True - - 单元格坐标
cell-value string True - - 匹配目标值
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 判断 name 属性值等于 dataImportTaskTable 的控件中坐标为 0,2 的单元格是否包含 100
<action reference="mainFrame" driver_type="swing">
<command>Table.waitcellcontains</command>
<params>
<param name="target">dataImportTaskTable</param>
<param name="by">name</param>
<param name="cell-value">100</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 349
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="cell-pos">0,2</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.45 等待单元格达到匹配值
Table.waitcellmatch
描述:等待单元格达到匹配值
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number True - - 本 action 的执
行的超时时间
(ms)
cell-value string True - - 单元格目标值
cell-pos string True - - 单元格坐标
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 350
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 等待 name 属性值等于 dataImportTaskTable 的控件中坐标等于 2,2 的单元格等于 100
<action reference="mainFrame" driver_type="swing">
<command>Table.waitcellmatch</command>
<params>
<param name="target">dataImportTaskTable</param>
<param name="by">name</param>
<param name="cell-value">100</param>
<param name="cell-pos">2,2</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.46 等待列达到匹配值
Table.waitcolmatch
描述:等待列达到匹配值;等待列所有值都达到匹配值才会成功,否则执行失败
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 351
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
第几个,如
Text[0]
timeout number True - - 本 action 的执
行的超时时间
(ms)
cell-value string True - - 列的匹配目标
值
col-index number True - - 列号
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 等待 name 属性值等于 dataImportTaskTable 的控件中第 3 列中所有值匹配到 100
<action reference="mainFrame" driver_type="swing">
<command>Table.waitcolmatch</command>
<params>
<param name="target">dataImportTaskTable</param>
<param name="cell-value">100</param>
<param name="by">name</param>
<param name="col-index">2</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.47 获取输入框值
TextBox.gettext
描述:获取输入框值
输入:
name type help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 352
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string TextBoxgettext_r - 输入框的值
et
return_type list - string 返回值的类型
示例:
1. 获取 name 属性值等于 Text_SubjectWizard_TaskName 的输入框的值
<action reference="mainWindow" return="targetResult" return_type="string" driver_type="swing">
<command>TextBox.gettext</command>
<params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 353
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="target">Text_SubjectWizard_TaskName</param>
<param name="by">name</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.48 右击输入框
TextBox.rightclick
描述:右击输入框
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 354
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
示例:
1. 右键点击 name 属性值等于 Text_SubjectWizard_TaskName 的输入框
<action reference="newTaskDialog3" driver_type="swing">
<command>TextBox.rightclick</command>
<params>
<param name="target">Text_SubjectWizard_TaskName</param>
<param name="by">name</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.49 点击输入框
Textbox.click
描述:点击输入框
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 355
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 name 属性值等于 Text_SubjectWizard_TaskName 的输入框
<action reference="newTaskDialog3" driver_type="swing">
<command>TextBox.click</command>
<params>
<param name="target">Text_SubjectWizard_TaskName</param>
<param name="by">name</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.50 输入框输值
Textbox.type
描述:输入框输值
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 356
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
value string True - - 要键入的数
据,如是敏感
数据, 请使用
参数来赋值,
并将参数类型
设置为
Sensitive
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 向 name 属性值等于 Text_SubjectWizard_TaskName 的输入框中写入
LTE_Neighbor_Check_Task
<action reference="newTaskDialog3" driver_type="swing">
<command>Textbox.type</command>
<params>
<param name="target">Text_SubjectWizard_TaskName</param>
<param name="by">name</param>
<param name="value">LTE_Neighbor_Check_Task</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.51 点击开关按钮
ToggleButton.click
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 357
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
描述:点击开关按钮
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|tex 获取控件的方
t|index_in_con 式
tainer
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 index 等于 10 的开关按钮控件
<action reference="mainFrame" driver_type="swing">
<command>ToggleButton.click</command>
<params>
<param name="target">10</param>
<param name="by">index</param>
<param name="timeout">2000</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 358
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="delay">1000</param>
</params>
</action>
1.8.4.52 点击树的节点
Tree.click
描述:点击树的节点
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
item-by list True - node|path 获取控件的方
式(path 指绝
对路径,node
指节点的具体
内容)
item-value String True - - 节点的选择方
式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 359
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
再执行当前
action
输出:无
示例:
1. 点击 name 属性值等于 checkBoxTree 的树控件中 node 等于 LTE_Neighbor_Check 的项
<action reference="newTaskDialog3" driver_type="swing">
<command>Tree.click</command>
<params>
<param name="target">checkBoxTree</param>
<param name="by">name</param>
<param name="item-by">node</param>
<param name="item-value">AntRobot_LTE_Neighbor_Check</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.53 双击树的路径
Tree.doubleclick
描述:双击树的路径
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 360
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
item-by list True - node|path 获取控件的方
式(path 指绝
对路径,node
指节点的具体
内容)
item-value String True - - 节点的选择方
式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 双击 name 属性值等于 checkBoxTree 的树控件中 node 等于 LTE_Neighbor_Check 的项
<action reference="newTaskDialog3" driver_type="swing">
<command>Tree.doubleclick</command>
<params>
<param name="target">checkBoxTree</param>
<param name="by">name</param>
<param name="item-by">node</param>
<param name="item-value">AntRobot_LTE_Neighbor_Check</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 361
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.4.54 右击树的节点
Tree.rightclick
描述:右击树的节点
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
item-by list True - node|path 获取控件的方
式(path 指绝
对路径,node
指节点的具体
内容)
item-value String True - - 节点的选择方
式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 362
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 右键点击 name 属性值等于 checkBoxTree 的树控件中 node 等于 LTE_Neighbor_Check 的项
<action reference="newTaskDialog3" driver_type="swing">
<command>Tree.rightclick</command>
<params>
<param name="target">checkBoxTree</param>
<param name="by">name</param>
<param name="item-by">node</param>
<param name="item-value">AntRobot_LTE_Neighbor_Check</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.55 选择树的路径
Tree.select
描述:选择树的路径
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式(path 指绝
ner 对路径,node
指节点的具体
内容)
target string True - - 控件方式的
值,使用文本
值时通过后缀
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 363
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
[序号] 表示
第几个,如
Text[0]
item-by list True - node|path 节点的选择方
式
item-value String True - - 节点的选择方
式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 获取 name 属性值等于 checkBoxTree 的树控件中 node 等于 LTE_Neighbor_Check 的路径
<action reference="newTaskDialog3" driver_type="swing">
<command>Tree.select</command>
<params>
<param name="target">checkBoxTree</param>
<param name="by">name</param>
<param name="item-by">node</param>
<param name="item-value">LTE_Neighbor_Check</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.56 点击面板坐标
Viewport.click
描述:点击面板坐标
输入:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 364
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
pos string True - - 点击的坐标
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 index 等于 0 的控件中坐标为 666.0,373.0 的点
<action reference="MDIFrame" driver_type="swing">
<command>Viewport.click</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="pos">666.0,373.0</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 365
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.57 拖拽已选中的目标
Viewport.drag
描述:拖拽已选中的目标
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
pos string True - - 点击的坐标
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 366
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
示例:
1. 在 index 等于 0 的控件中点击坐标等于 666.0,373.0 的点拖拽目标
<action reference="MDIFrame" driver_type="swing">
<command>Viewport.drag</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="pos">666.0,373.0</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.58 右击 viewport 上的坐标
Viewport.rightclick
描述:右击 viewport 上的坐标
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - name|index|in 获取控件的方
dex_in_contai 式
ner
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
pos string True - - 点击的坐标
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 367
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 右键点击 index 等于 0 的控件中坐标为 666.0,373.0 的点
<action reference="MDIFrame" driver_type="swing">
<command>Viewport.rightclick</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="pos">666.0,373.0</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.59 连接 Java 程序
conJavaRobot
描述:与目标程序取得连接
输入:无
参数:
name type is_required default range help
target string True - - 目标进程识别
标识
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 368
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
by list - - x86|x64 目标程序位数
timeout number - - - 本 action 的执
行的超时时间
(ms)
输出:无
示例:
1. 连接 javaw.exe 程序,64 位
<action driver_type="swing">
<command>conJavaRobot</command>
<params>
<param name="target">javaw.exe</param>
<param name="by">x64</param>
<param name="delay">1000</param>
</params>
</action>
1.8.4.60 退出 java 应用
quit
描述:退出 java 应用
输入:无
参数:
name type is_required default range help
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 369
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1. 退出 Java 应用程序
<action reference="MDIFrame" driver_type="swing">
<command>quit</command>
<params>
<param name="delay">1000</param>
</params>
</action>
1.8.4.61 键盘按键
sendkeys
描述:键盘按键
输入:无
参数:
name type is_required default range help
value string True - - 键盘的目标
值;基本格
式:{功能键},
不区分大小
写,例
如:{Ctrl},{Ent
er};组合键的
格式:{功能
键}字符,例
如:{ctrl}a
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 模拟按下键盘 enter 键
<action reference="MDIFrame" driver_type="swing">
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 370
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<command>sendkeys</command>
<params>
<param name="value">{Enter}</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5 JavaFx 应用
1.8.5.1 左键单击
Button.click
描述:左键单击按钮
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index|text 获取控件的方
式
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 371
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 左键点击 login 按钮
<action reference="loginWindow" driver_type="javafx">
<command>Button.click</command>
<params>
<param name="target">Login</param>
<param name="by">text</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.2 点击复选框
CheckBox.click
描述:点击复选框
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index|text 获取控件的方
式
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 372
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 YES 的复选框
<action reference="loginWindow" driver_type="javafx">
<command>CheckBox.click</command>
<params>
<param name="target">YES</param>
<param name="by">text</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.3 选择选择框
ChoiceBox.select
描述:选择选择框
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index 获取控件的方
式
target number True - - 控件方式的值
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 373
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
item-by list True - item- 列表选项的过
index|item- 滤方式
text
item-value string True - - 列表选项的过
滤方式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 勾选第二个选择框的第四个选框
<action reference="mainWindow" driver_type="javafx">
<command>ChoiceBox.select</command>
<params>
<param name="target">1</param>
<param name="by">index</param>
<param name="item-by">item-index</param>
<param name="item-value">3</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.4 选择颜色选择器
ColorPicker.select
描述:选择颜色选择器
输入:
name type help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 374
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index 获取控件的方
式
target number True - - 控件方式的值
rgb string True - - rgb 色号,输
入 r,g,b 三个
0 到 1 的浮点
数(限制 5 位
浮点数之
内),逗号隔
开,如
0.5,0.5,0.5
opacity string True - - 透明度的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 选择第一个 rgb 内容为 0.5,0.5,0.5 的颜色选择器
<action reference="mainWindow" driver_type="javafx">
<command>ColorPicker.select</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 375
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="rgb">0.5,0.5,0.5</param>
<param name="opacity">0.6</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.5 取下拉列表值
ComboBox.gettext
描述:取下拉列表值
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index 获取控件的方
式
target number True - - 控件方式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string ComboBoxgettext - 下拉列表值
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 376
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
_ret
return_type list - string 返回值的类型
示例:
1. 获取第二个下拉列表选中的值
<action reference="addWindow" return="retStr" return_type="string" driver_type="javafx">
<command>ComboBox.gettext</command>
<params>
<param name="target">1</param>
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.6 选择下拉列表
ComboBox.select
描述:选择下拉列表
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index 获取控件的方
式
target number True - - 控件方式的值
item-by list True - item- 列表选项的过
index|item- 滤方式
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 377
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
text
item-value string True - - 列表选项的过
滤方式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 选中第二个下拉列表选项的第四项
<action reference="mainWindow" driver_type="javafx">
<command>ComboBox.select</command>
<params>
<param name="target">1</param>
<param name="by">index</param>
<param name="item-by">item-index</param>
<param name="item-value">3</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.7 选择日期选择器
DatePicker.select
描述:选择日期选择器
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 378
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
参数:
name type is_required default range help
by list True - index 获取控件的方
式
target number True - - 控件方式的值
date string True - - 日期值,年-
月-日,例
如:2000-01-
01
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 选择第一个日期选择器上的 2020-02-10 这天
<action reference="mainWindow" driver_type="javafx">
<command>DatePicker.select</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="date">2020-02-10</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.8 保存文件
FileChooser.type
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 379
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
描述:保存文件
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True name name 获取控件的方
式
file-path file True - - 文件目录或者
文件路径
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 文件选择框上传 zip 包
<action reference="addWindow" driver_type="javafx">
<command>FileChooser.type</command>
<params>
<param name="by">name</param>
<param name="file-path">D:\omstarTest\demo.zip</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 380
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.5.9 点击超链接
HyperLink.click
描述:点击超链接
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - text|index 获取控件的方
式
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击文本值为 HyperLink 的超链接
<action reference="mainWindow" driver_type="javafx">
<command>HyperLink.click</command>
<params>
<param name="target">Hyperlink</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 381
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="by">text</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.10 点击页签
Label.click
描述:点击页签
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index|text 获取控件的方
式
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 382
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1. 点击文本值为 Task List 的页签
<action reference="mainWindow" driver_type="javafx">
<command>Label.click</command>
<params>
<param name="target">Task List</param>
<param name="by">text</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.11 获取 label 的值
Label.gettext
描述:获取 label 的值
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index 获取控件的方
式
target number True - - 控件方式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 383
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:
name type default range help
return string Labelgettext_ret - label 的值
return_type list - string 返回值的类型
示例:
1. 获取第一个 label 的文本值
<action reference="mainWindow" return="resultStr" return_type="string" driver_type="javafx">
<command>Label.gettext</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.12 等待页签消失
Label.waitdisappear
描述:等待页签消失
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index|text 获取控件的方
式
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 384
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number True - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 等待 Task List 的页签消失
<action reference="mainWindow" driver_type="javafx">
<command>Label.waitdisappear</command>
<params>
<param name="target">Task List</param>
<param name="by">text</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.13 点击列表
ListView.click
描述:点击列表
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 385
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
参数:
name type is_required default range help
by list True - index 获取控件的方
式
target number True - - 控件方式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
item-by list True - item- 定位列表选项
index|item- 的方式
text|item-text-
contains
item-value string True - - 列表选项的方
式的值
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击第一个列表的第三项
<action reference="mainWindow" driver_type="javafx">
<command>ListView.click</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="item-by">item-index</param>
<param name="item-value">2</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 386
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.5.14 点击菜单
Menu.click
描述:点击菜单
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index 获取控件的方
式
target number True - - 菜单栏的序号
menu-index number True - - 菜单的序号
item-index number True - - 子菜单的序号
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击第一个菜单栏上第一个菜单,选择第一个子菜单
<action reference="mainWindow" driver_type="javafx">
<command>Menu.click</command>
<params>
<param name="target">0</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 387
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="by">index</param>
<param name="menu-index">0</param>
<param name="item-index">0</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.15 菜单按钮点击
MenuButton.click
描述:菜单按钮点击
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index 获取控件的方
式
target number True - - 控件方式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击第一个菜单按钮
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 388
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<action reference="mainWindow" driver_type="javafx">
<command>MenuButton.click</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.16 菜单按钮选择
MenuButton.select
描述:菜单按钮选择
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index 获取控件的方
式
target number True - - 控件方式的值
item-by list True - item- 定位列表选项
index|item- 的方式
text|item-text-
contains
item-value string True - - 列表选项的方
式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 389
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 选择第一个菜单按钮的第三个菜单
<action reference="mainWindow" driver_type="javafx">
<command>MenuButton.select</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="item-by">item-index</param>
<param name="item-value">2</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.17 菜单项容器点击
MenuItemContainer.click
描述:菜单项容器点击
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index 获取控件的方
式
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 390
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
target number True - - 控件方式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击第一个菜单项
<action reference="mainWindow" driver_type="javafx">
<command>MenuItemContainer.click</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.18 点击单选按钮
RadioButton.click
描述:点击单选按钮
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 391
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
by list True - index|text 获取控件的方
式
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击第一个单选按钮
<action reference="mainWindow" driver_type="javafx">
<command>RadioButton.click</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.19 拖动滚动条
ScrollBar.scrollto
描述:拖动滚动条
输入:
name type help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 392
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index 获取控件的方
式
target number True - - 控件方式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
value number True - - 拖动的像素
输出:无
示例:
1. 滑动第一个滚动条 50px
<action reference="mainWindow" driver_type="javafx">
<command>Scrollbar.scrollTo</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="value">50</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 393
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.5.20 设置滚动面板区域
ScrollPane.scrollto
描述:设置滚动面板区域
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index 获取控件的方
式
target number True - - 控件方式的值
width number - - - 滚动面板的宽
占比
height number - - - 滚动面板的高
占比
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 设置第一个滚动面板的区域
<action reference="mainWindow" driver_type="javafx">
<command>ScrollPane.scrollto</command>
<params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 394
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="target">0</param>
<param name="by">index</param>
<param name="width">0.5</param>
<param name="height">0.6</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.21 拖动滑块
Slider.scrollto
描述:拖动滑块
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index 获取控件的方
式
target number True - - 控件方式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
value number True - - 滑块拖拽的距
离
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 395
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 拖动第一个滑块按钮到 100
<action reference="mainWindow" driver_type="javafx">
<command>Slider.scrollto</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="value">100</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.22 遍历单行文本域
Spinner.click
描述:遍历单行文本域
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index 获取控件的方
式
target number True - - 控件方式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
value number True - - 调整次数,正
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 396
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
数为向上遍
历,负数为向
下遍历
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 向上遍历第一个文本域一次
<action reference="mainWindow" driver_type="javafx">
<command>Spinner.click</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="value">1</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.23 选择拆分菜单按钮
SplitMenuButton.select
描述:选择拆分菜单按钮
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 397
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
by list True - index|text 获取控件的方
式
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
item-by list True - item- 菜单按钮项选
index|item- 择的方式
text|item-text-
contains
item-value string - - - 菜单按钮项的
值,为空时表
示不选择
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 取第一个拆分菜单按钮的第三项
<action reference="mainWindow" driver_type="javafx">
<command>SplitMenuButton.select</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="item-by">item-index</param>
<param name="item-value">2</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 398
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</action>
1.8.5.24 滑动分割面板
SplitPane.select
描述:滑动分割面板
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index 获取控件的方
式
target number True - - 控件方式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
value number True - - 分隔条的索引
值
pos number True - - 分隔条滑动之
后面板与主窗
体的比例
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 取第一个分割面板下的第二个面板设置位置比例
<action reference="mainWindow" driver_type="javafx">
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 399
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<command>SplitPane.select</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="value">1</param>
<param name="pos">0.7</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.25 选择面板
TabPane.select
描述:选择面板
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index|text 获取控件的方
式
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 400
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
value number True - - 面板的下标值
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 取 text 属性为 tab-pane 的面板下标为 1 的面板页
<action reference="mainWindow" driver_type="javafx">
<command>TabPane.select</command>
<params>
<param name="target">tab-pane</param>
<param name="by">text</param>
<param name="value">1</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.26 点击单元格
Table.Click_Cell
描述:点击单元格
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index|text 获取控件的方
式
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 401
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
cell-pos string True - - 单元格坐标
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 index 等于 0 的控件中坐标为 1,2 的单元格
<action reference="mainWindow" driver_type="javafx">
<command>Table.Click_Cell</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="cell-pos">1,2</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.27 点击表头
Table.Click_Header
描述:点击表头
输入:
name type help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 402
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index|text 获取控件的方
式
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 index 等于 0 的表头
<action reference="mainWindow" driver_type="javafx">
<command>Table.Click_Header</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 403
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.5.28 双击单元格
Table.doubleClick
描述:点击单元格
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index|text 获取控件的方
式
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
cell-pos string True - - 单元格坐标
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 双击 index 等于 0 的控件中坐标为 1,2 的单元格
<action reference="mainWindow" driver_type="javafx">
<command>Table.doubleClick</command>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 404
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="cell-pos">1,2</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.29 右击单元格
Table.rightClick
描述:右击单元格
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index|text 获取控件的方
式
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
cell-pos string True - - 单元格坐标
delay number - - - 等待多少 ms
再执行当前
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 405
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
action
输出:无
示例:
1. 右击 index 等于 0 的控件中坐标为 1,2 的单元格
<action reference="mainWindow" driver_type="javafx">
<command>Table.rightClick</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="cell-pos">1,2</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.30 右击表头
Table.rightClick_Header
描述:右击表头
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index|text 获取控件的方
式
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 406
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 右击 index 等于 0 的表头
<action reference="mainWindow" driver_type="javafx">
<command>Table.rightClick_Header</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.31 获取输入框值
TextBox.gettext
描述:获取输入框值
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 407
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
by list True - index 获取控件的方
式
target number True - - 控件方式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string TextBoxgettext_r - 输入框值
et
return_type list - string 返回值的类型
示例:
1. 获取第 2 个输入框的文本值
<action reference="mainWindow" return="targetResult" return_type="string" driver_type="javafx">
<command>TextBox.gettext</command>
<params>
<param name="target">1</param>
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.32 点击框输值
Textbox.click
描述:点击框输值
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 408
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index 获取控件的方
式
target number True - - 控件方式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击第 0 个输入框
<action reference="mainWindow" driver_type="javafx">
<command>Textbox.click</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 409
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.5.33 输入框输值
Textbox.type
描述:输入框输值
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index 获取控件的方
式
target number True - - 控件方式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
value string True - - 要键入的数
据,如是敏感
数据, 请使用
参数来赋值,
并将参数类型
设置为
Sensitive
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 填充第一个输入框的值为 LTE_Neighbor_Check_Task
<action reference="mainWindow" driver_type="javafx">
<command>Textbox.type</command>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 410
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="value">LTE_Neighbor_Check_Task</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.34 选择标题面板
TitledPane.select
描述:选择标题面板
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - text|index 获取控件的方
式
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 411
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 选择第一个标题面板
<action reference="mainWindow" driver_type="javafx">
<command>TitledPane.select</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.35 点击开关按钮
ToggleButton.click
描述:点击开关按钮
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - text|index 获取控件的方
式
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 412
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击文本值为 RTL 的开关按钮
<action reference="mainWindow" driver_type="javafx">
<command>ToggleButton.click</command>
<params>
<param name="target">RTL</param>
<param name="by">text</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.36 点击树的路径
Tree.click
描述:点击树的路径
输入:
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index 获取控件的方
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 413
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
式
target number True - - 控件方式的值
item-by list True - nodeIndex|pat 获取控件的方
h 式(path 指绝
对路径)
item-value String True - - 节点的选择方
式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击第一个树路径的第 5 个节点
<action reference="newTaskDialog3" driver_type="javafx">
<command>Tree.click</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="item-by">nodeIndex</param>
<param name="item-value">5</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.37 等待窗体消失
Window.waitdisappear
描述:等待窗体消失
输入:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 414
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type help
reference string 容器对象,不能通过参数或者
变量定义
参数:
name type is_required default range help
by list True - index|title 获取控件的方
式
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number True - - 本 action 的执
行的超时时间
(ms)
delay number True 1000 - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 等待第二个窗体消失
<action reference="mainWindow" driver_type="javafx">
<command>Window.waitdisappear</command>
<params>
<param name="target">1</param>
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 415
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</action>
1.8.5.38 等待窗体出现
Window.waitshow
描述:等待窗体出现
输入:无
参数:
name type is_required default range help
by list True - index|title 获取控件的方
式
target string True - - 控件方式的
值,使用文本
值时通过后缀
[序号] 表示
第几个,如
Text[0]
timeout number True - - 本 action 的执
行的超时时间
(ms)
delay number True 1000 - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string mainwindow - 主窗体
return_type fixed_string container - 返回值的类型
示例:
1. 等待标题为 Modena 的窗体出现
<action return="mainWindow" return_type="container" driver_type="javafx">
<command>Window.waitshow</command>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 416
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<params>
<param name="target">Modena</param>
<param name="by">title</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.5.39 连接 Java 程序
conJavaRobot
描述:与目标程序取得连接
输入:无
参数:
name type is_required default range help
by list - - x86|x64 目标程序位数
target string True - - 目标进程识别
标识
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 本 action 的执
行的超时时间
(ms)
输出:无
示例:
1. 与目标程序取得连接
<action driver_type="javafx">
<command>conJavaRobot</command>
<params>
<param name="target">javaw.exe</param>
<param name="delay">1000</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 417
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</params>
</action>
1.8.5.40 退出 java 应用
quit
描述:退出 java 应用
输入:无
参数:
name type is_required default range help
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 退出 java 应用
<action reference="MDIFrame" driver_type="javafx">
<command>quit</command>
<params>
<param name="delay">1000</param>
</params>
</action>
1.8.5.41 键盘按键
sendkeys
描述:键盘按键
输入:无
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 418
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
value string True - - 键盘的目标
值;键盘的目
标值;基本格
式:{功能键},
不区分大小
写,例
如:{Ctrl},{Ent
er};组合键的
格式:{功能
键}字符,例
如:{ctrl}a
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 发送键盘 enter 命令
<action reference="MDIFrame" driver_type="javafx">
<command>sendkeys</command>
<params>
<param name="value">{Enter}</param>
<param name="delay">1000</param>
</params>
</action>
1.8.6 图像处理
1.8.6.1 单击区域内图片
citrix.clickPicRegion
描述:左键点击某区域(结合 citrix.waitForPic 使用识别到某区域)下的图片;配置 x,y 轴的偏移
量可以控制点击图片中的位置,如不配置则默认点击图片中心
输入:无
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 419
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
image file True - - 图片路径.(图
片路径的格式
为***.png,
即必须
以.png|.jpg 结
尾)
offset-x number - - - x 轴偏移量
offset-y number - - - y 轴偏移量
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击某区域下的 wei.png 图片,点击相对图片左上角的坐标(20,20)
<action>
<command>citrix.clickPicRegion</command>
<params>
<param name="image">wei.png</param>
<param name="offset-x">20</param>
<param name="offset-y">20</param>
</params>
</action>
1.8.6.2 单击图片
citrix.clickPicScreen
描述:单击图片;配置 x,y 轴的偏移量可以控制点击图片中的位置,如不配置则默认点击图片
中心
输入:无
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 420
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
参数:
name type is_required default range help
image file True - - 图片路径.(图
片路径的格式
为***.png,
即必须
以.png|.jpg 结
尾)
offset-x number - - - x 轴偏移量
offset-y number - - - y 轴偏移量
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 单击 wei.png 图片,点击相对图片左上角的坐标(20,20)
<action>
<command>citrix.clickPicScreen</command>
<params>
<param name="image">wei.png</param>
<param name="offset-x">20</param>
<param name="offset-y">20</param>
<param name="delay">1000</param>
</params>
</action>
1.8.6.3 图片比对
citrix.comparePic
描述:两张图片的相似度.若返回相似度 0.0,可能是 source-image 尺寸太大或者 dest-image 尺寸
太小
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 421
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输入:无
参数:
name type is_required default range help
source-image file True - - 文件绝对路径
或文件名(填
写文件名时,
图片必须在工
程目录 Pic 文
件夹下。图片
格式必须
png|jpg)
dest-image file True - - 文件绝对路径
或文件名(填
写文件名时,
图片必须在工
程目录 Pic 文
件夹下。图片
格式必须
png|jpg)
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string citrixcomparePic_ - 图片相似度对比
ret 结果
return_type list - float 返回值的类型
示例:
1. 比较 w.png 和 d.png 两张图片的相似度
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 422
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<action return="similarity">
<command>citrix.comparePic</command>
<params>
<param name="source-image">w.png</param>
<param name="dest-image">d.png</param>
</params>
</action>
1.8.6.4 双击区域内图片
citrix.dclickPicRegion
描述:双击某区域(结合 citrix.waitForPic 使用识别到某区域)下的图片;配置 x,y 轴的偏移量可
以控制点击图片中的位置,如不配置则默认点击图片中心
输入:无
参数:
name type is_required default range help
image file True - - 图片路径.(图
片路径的格式
为***.png,
即必须
以.png|.jpg 结
尾)
offset-x number - - - x 轴偏移量
offset-y number - - - y 轴偏移量
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 双击某区域下的 wei.png 图片,点击相对图片左上角的坐标(20,20)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 423
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<action>
<command>citrix.dclickPicRegion</command>
<params>
<param name="image">wei.png</param>
<param name="offset-x">20</param>
<param name="offset-y">20</param>
</params>
</action>
1.8.6.5 双击图片
citrix.dclickPicScreen
描述:双击图片;配置 x,y 轴的偏移量可以控制点击图片中的位置,如不配置则默认点击图片
中心
输入:无
参数:
name type is_required default range help
image file True - - 图片路径.(图
片路径的格式
为***.png,
即必须
以.png|.jpg 结
尾)
offset-x number - - - x 轴偏移量
offset-y number - - - y 轴偏移量
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 424
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1. 双击 wei.png 图片,点击相对图片左上角的坐标(20,20)
<action>
<command>citrix.dclickPicScreen</command>
<params>
<param name="image">wei.png</param>
<param name="offset-x">20</param>
<param name="offset-y">20</param>
<param name="delay">1000</param>
</params>
</action>
1.8.6.6 输入字符串
citrix.inputVariable
描述:输入字符串
输入:无
参数:
name type is_required default range help
value string True - - 要键入的数
据,如是敏感
数据, 请使用
参数来赋值,
并将参数类型
设置为
Sensitive
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 输入字符串 asdfghju
<action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 425
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<command>citrix.inputVariable</command>
<params>
<param name="value">asdfghju</param>
<param name="delay">1000</param>
</params>
</action>
1.8.6.7 设置窗口外形
citrix.newWindow
描述:设置顶端的窗口外形
输入:无
参数:
name type is_required default range help
start-pos string True - - 设置窗口左上
角的坐标
width number True - - 设置窗口宽
height number True - - 设置窗口高
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 设定 0,0 窗口的大小,宽:1920,高:1080
<action>
<command>citrix.newWindow</command>
<params>
<param name="start-pos">0,0</param>
<param name="width">1920</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 426
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="height">1080</param>
</params>
</action>
1.8.6.8 键盘事件
citrix.rawKeyboard
描述:按下和松开按键;此输入是一个键;不能是一串字符串;如:Enter 是功能键不是字符串
输入:无
参数:
name type is_required default range help
type list True - KeyDown|Key 键盘操作类型
Up
key string True - - 输入的键值,
填写键盘上的
键;例如:
Enter
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 按下按键
<action>
<command>citrix.rawKeyboard</command>
<params>
<param name="type">KeyDown</param>
<param name="key">Enter</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 427
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
2. 松开按键
<action>
<command>citrix.rawKeyboard</command>
<params>
<param name="type">KeyUp</param>
<param name="key">Enter</param>
</params>
</action>
1.8.6.9 鼠标事件
citrix.rawMouse
描述:鼠标事件.当 type 为 LButtonDown(RButtonDown)时,后续需要 LButtonUp(RButtonUp)
搭配使用
输入:无
参数:
name type is_required default range help
type list True - LButtonDown| 鼠标点击动作
LButtonUp|M 类型
ouseWheel|RB
uttonDown|R
ButtonUp
pos string - - - 配置目标坐标
wheel number - - - 滚动条的滑动
距离.负数代
表往后滚,正
数代表往前
滚.当 type 为
MouseWheel
时,使用此参
数
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 428
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 按下鼠标左键
<action>
<command>citrix.rawMouse</command>
<params>
<param name="type">LButtonDown</param>
<param name="pos">360,90</param>
</params>
</action>
2. 松开鼠标左键
<action>
<command>citrix.rawMouse</command>
<params>
<param name="type">LButtonUp</param>
<param name="pos">360,90</param>
</params>
</action>
3. 按下鼠标右键
<action>
<command>citrix.rawMouse</command>
<params>
<param name="type">RButtonDown</param>
<param name="pos">360,90</param>
</params>
</action>
4. 松开鼠标右键
<action>
<command>citrix.rawMouse</command>
<params>
<param name="type">RButtonUp</param>
<param name="pos">360,90</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 429
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</params>
</action>
5. 鼠标滚动块滚动事件。wheel 的值为正数,滚动方向向上;wheel 的值为负数,滚动方向向下
<action>
<command>citrix.rawMouse</command>
<params>
<param name="type">MouseWheel</param>
<param name="wheel">-100</param>
</params>
</action>
1.8.6.10 右键区域内图片
citrix.rclickPicRegion
描述:右键单击某区域(结合 citrix.waitForPic 使用识别到某区域)下的图片;配置 x,y 轴的偏移
量可以控制点击图片中的位置,如不配置则默认点击图片中心
输入:无
参数:
name type is_required default range help
image file True - - 图片路径.(图
片路径的格式
为***.png,
即必须
以.png|.jpg 结
尾)
offset-x number - - - x 轴偏移量
offset-y number - - - y 轴偏移量
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 430
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
示例:
1. 右击某区域下的 wei.png 图片,点击相对图片左上角的坐标(20,20)
<action>
<command>citrix.rclickPicRegion</command>
<params>
<param name="image">wei.png</param>
<param name="offset-x">20</param>
<param name="offset-y">20</param>
</params>
</action>
1.8.6.11 右键图片
citrix.rclickPicScreen
描述:右键单击图片;配置 x,y 轴的偏移量可以控制点击图片中的位置,如不配置则默认点击
图片中心
输入:无
参数:
name type is_required default range help
image file True - - 图片路径.(图
片路径的格式
为***.png,
即必须
以.png|.jpg 结
尾)
offset-x number - - - x 轴偏移量
offset-y number - - - y 轴偏移量
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 431
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 右键单击 wei.png 图片,点击相对图片左上角的坐标(20,20)
<action>
<command>citrix.rclickPicScreen</command>
<params>
<param name="image">wei.png</param>
<param name="offset-x">20</param>
<param name="offset-y">20</param>
<param name="delay">1000</param>
</params>
</action>
1.8.6.12 等待图片出现
citrix.waitForPic
描述:等待图片出现
输入:无
参数:
name type is_required default range help
image file True - - 文件绝对路径
或文件名(填
写文件名时,
图片必须在工
程目录 Pic 文
件夹下。图片
格式必须
png|jpg)
similarity string - - - 最小相似度,
图片匹配成功
的最小相识
度,低于这个
相识度判断匹
配不成功;取
值范围:0-1.0
start-pos string - - - 屏幕搜索左上
角坐标
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 432
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
end-pos string - - - 屏幕搜索右下
角坐标
multiple- boolean - - True|False 是否返回多个
match 匹配的坐标
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string citrixwaitForPic_r - 当 multiple-match
et 取值为 true 返回
图片坐标,反之
返回相似度
return_type list - string 返回值的类型
示例:
1. 等待指定图片出现,
<action>
<command>citrix.waitForPic</command>
<params>
<param name="image">w.png</param>
</params>
</action>
2. 等待指定图片出现,配置屏幕搜索的左上角坐标(10,10),右下角坐标(200,200)
<action return="multi_coor">
<command>citrix.waitForPic</command>
<params>
<param name="image">w.png</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 433
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="start-pos">10,10</param>
<param name="end-pos">200,200</param>
</params>
</action>
3. 等待指定图片出现,配置屏幕搜索的左上角坐标(10,10),右下角坐标(200,200),设置与目
标图片的最小相似度值-1.0,进行图片匹配,返回多个匹配结果的坐标
<action return="multi_coor">
<command>citrix.waitForPic</command>
<params>
<param name="image">w.png</param>
<param name="similarity">0.3</param>
<param name="start-pos">10,10</param>
<param name="end-pos">200,200</param>
<param name="multipleMatch">true</param>
</params>
</action>
1.8.6.13 等待图片消失
citrix.waitForPicDisappear
描述:等待图片消失
输入:无
参数:
name type is_required default range help
image file True - - 文件绝对路径
或文件名(填
写文件名时,
图片必须在工
程目录 Pic 文
件夹下。图片
格式必须
png|jpg)
similarity string - - - 相似度
start-pos string - - - 屏幕搜索左上
角坐标
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 434
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
end-pos string - - - 屏幕搜索右下
角坐标
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 等待 w.png 图片消失
<action>
<command>citrix.waitForPicDisappear</command>
<params>
<param name="image">w.png</param>
<param name="delay">6000</param>
</params>
</action>
1.8.7 控制台操作
1.8.7.1 关闭远程服务器连接
console.close
描述:关闭远程服务器连接
输入:无
参数:
name type is_required default range help
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 执行当前
action 前的等
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 435
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
待时间(ms)
输出:无
示例:
1. 关闭所连接的远程服务器
<action>
<command>console.close</command>
<params>
<param name="delay">1000</param>
</params>
</action>
1.8.7.2 登录远程服务器
console.login
描述:登录远程服务器,连接支持 SSH 协议和 Telnet 协议(telnet 协议存在安全漏洞,不推荐使
用)。当前指令可能导致生产环境数据变更,请谨慎使用。
输入:无
参数:
name type is_required default range help
ip string True - - 目标服务器
IP 地址
port number - - - 目标服务器连
接端口
user string True - - 服务器登录用
户名
protocol list - ssh ssh|telnet 服务器连接协
议,支持
SSH 和 Telnet
(Telnet 协议
存在安全漏
洞,不建议使
用),默认为
SSH 协议
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 436
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
end_prompt string True - - 登录成功后的
终端提示符,
须正确设置。
设置后可保存
命令结果。
SSH 协议连
接登录 Linux
服务器通常设
置为#
auth-method list - pwd pwd|pkey 服务器登录认
证方式,支持
pwd 密码登录
和 pkey 私钥
登录,默认为
pwd。使用
Telnet 协议连
接服务器时请
选择 pwd
pwd password True - - 服务器登录密
码
pkey file True - - ssh 秘钥的私
钥文件
timeout number - - - 当前 action 的
执行的超时时
间(ms),默认
为 3,000ms
delay number - - - 执行当前
action 前的等
待时间(ms)
输出:无
示例:
1. 通过 ssh 协议访问服务器,使用密码登录
<action xmlId="***" driver_type="common" desc="登录远程服务器" fail_on_error="True">
<command>console.login</command>
<params>
<param name="auth-method">pwd</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 437
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="protocol">ssh</param>
<param name="ip">@{ip}</param>
<param name="user">@{user}</param>
<param name="pwd" type="password">*****</param>
<param name="end_prompt">#</param>
</params>
<properties>
<showParam>ip</showParam>
</properties>
</action>
2. 通过 ssh 协议访问服务器,使用私钥登录
<action xmlId="***" driver_type="common" desc="登录远程服务器" fail_on_error="True">
<command>console.login</command>
<params>
<param name="auth-method">pkey</param>
<param name="protocol">ssh</param>
<param name="ip">@{ip}</param>
<param name="user">@{user}</param>
<param name="pkey">@{WORK_DIR}\id_rsa</param>
<param name="end_prompt">#</param>
</params>
<properties>
<showParam>ip</showParam>
</properties>
</action>
1.8.7.3 远程服务器执行命令
console.run
描述:远程服务器执行命令
输入:无
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 438
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
target string True - - 在远程服务器
中执行的命令
end_prompt string - - - 命令执行成功
后的终端提示
符,须正确设
置。设置后可
保存命令结
果。SSH 协
议连接 Linux
服务器通常设
置为#,Telnet
协议连接
Windows 服
务器时无需设
置
strip-output list - - True|False 是否只需要回
显信息,而不
需要执行的命
令和终端提示
符信息。不填
写时默认包含
执行的命令和
终端提示符信
息。
timeout number - - - 本 action 获取
执行命令的回
显的超时时间
(ms),默认为
30,000ms
delay number - - - 执行当前
action 前的等
待时间(ms)
输出:
name type default range help
return string consolerun_ret - 远程服务器执行
命令的回显
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 439
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
return_type list - string 返回值的类型
示例:
1. 在远程服务器中执行命令
<action return="result">
<command>console.run</command>
<params>
<param name="target">time</param>
<param name="end_prompt">#</param>
</params>
</action>
1.8.7.4 关闭服务器连接
sftp.close
描述:关闭远程服务器连接
输入:
name type help
reference string 服务器的连接会话
参数:
name type is_required default range help
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 关闭远程服务器连接
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 440
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<action reference="con">
<command>sftp.close</command>
</action>
1.8.7.5 连接远程服务器
sftp.connect
描述:连接 SFTP/FTP 服务器(FTP 协议存在安全漏洞,不建议使用),返回连接对象,可以使
用该命令连接多台服务器。当前指令有可能操作生产环境数据, 导致数据的变更,请谨慎使用。
输入:无
参数:
name type is_required default range help
host string True - - 目标计算机的
ip
port number True 22 - 目标计算机的
文件服务器端
口,SFTP 服务
器通常为
22,FTP 服务
器通常为 21
protocol list - SFTP SFTP|FTP 连接服务器的
协议,支持
SFTP/FTP 协
议,默认为
SFTP 协议
(FTP 协议存
在安全漏洞,
不建议使用)
auth-method list True - pwd|pkey 连接登录认证
的方式
is-anonymous list True - True|False 是否用匿名模
式登录 FTP
服务器,默认
为否
username string True - - 登录的用户名
pwd password True - - sftp 服务器登
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 441
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
录密码
pkey file True - - ssh 秘钥的私
钥文件
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string sftpconnect_ret - 服务器的连接会
话
return_type fixed_string object - 返回值的类型
示例:
1. 使用密码认证方式连接 SFTP 服务器,服务器地址为 ip:port,用户名 username,密码 pwd
<action>
<command>sftp.connect</command>
<params>
<param name="port">22</param>
<param name="host">@{ip}</param>
<param name="protocol">SFTP</param>
<param name="auth-method">pwd</param>
<param name="username">@{user}</param>
<param name="pwd">@{pwd}</param>
</params>
</action>
2. 使用秘钥认证方式连接 SFTP 服务器,服务器地址为 ip:port,用户名 username,秘钥文
件...\id_rsa
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 442
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<action>
<command>sftp.connect</command>
<params>
<param name="port">22</param>
<param name="host">@{ip}</param>
<param name="protocol">SFTP</param>
<param name="auth-method">pkey</param>
<param name="username">@{user}</param>
<param name="pkey">@{WORK_DIR}\id_rsa</param>
</params>
</action>
3. 使用一般模式连接 FTP 服务器,服务器地址为 ip:port,用户名 username,密码 pwd。 (FTP
协议存在安全漏洞,不建议使用)
<action>
<command>sftp.connect</command>
<params>
<param name="port">21</param>
<param name="host">@{ip}</param>
<param name="protocol">FTP</param>
<param name="is-anonymous">False</param>
<param name="username">@{user}</param>
<param name="pwd">@{pwd}</param>
</params>
</action>
4. 使用匿名模式连接 FTP 服务器,服务器地址为 ip:port。( FTP 协议存在安全漏洞,不建议使用)
<action>
<command>sftp.connect</command>
<params>
<param name="port">21</param>
<param name="host">@{ip}</param>
<param name="protocol">FTP</param>
<param name="is-anonymous">True</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 443
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.7.6 从服务器下载文件
sftp.download
描述:从远程服务器下载文件或文件夹
输入:
name type help
reference string 服务器的连接会话
参数:
name type is_required default range help
local-path dir True - - 下载目标的本
地保存路径
remote-path string True - - 远程服务器中
的待下载目标
路径,路径不
可为"/"
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 将远程服务器/root/output/目录下 test_doc.docx 文件下载到项目目录 download 文件夹中
<action>
<command>sftp.download</command>
<params>
<param name="local-path"> @{WORK_DIR}\download</param>
<param name="remote-path">/root/output/test_doc.docx </param>
</params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 444
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<properties>
<showParam>local-path</showParam>
</properties>
</action>
2. 将远程服务器/root/output 文件夹下载到项目目录 download 文件夹中
<action>
<command>sftp.download</command>
<params>
<param name="local-path"> @{WORK_DIR}\download</param>
<param name="remote-path">/root/output</param>
</params>
<properties>
<showParam>local-path</showParam>
</properties>
</action>
1.8.7.7 获取服务端目录文件列表
sftp.fileList
描述:获取服务器指定目录下的文件列表
输入:
name type help
reference string 服务器的连接会话
参数:
name type is_required default range help
remote-path string True - - 服务端目标目
录路径
get-full-path list - - False|True 是否获取完整
文件路径,默
认为否
timeout number - - - 本 action 的执
行的超时时间
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 445
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string filelist_ret - 服务端目标目录
下的文件列表
return_type list - list 返回值的类型
示例:
1. 获取服务端/root/antrobot 目录下文件的完整路径列表
<action>
<command>sftp.fileList</command>
<params>
<param name="remote-path"> /root/antrobot</param>
<param name="get-full-path">True</param>
<param name="timeout">@{timeout}</param>
<param name="delay">@{delay} </param>
</params>
</action>
1.8.7.8 创建服务器目录
sftp.mkdir
描述:在服务器中创建指定新目录
输入:
name type help
reference string 服务器的连接会话
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 446
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
参数:
name type is_required default range help
remote-path string True - - 服务端目标目
录路径
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 在服务器中创建/root/antrobot 目录
<action>
<command>sftp.mkdir</command>
<params>
<param name="remote-path"> /root/antrobot</param>
<param name="timeout">@{timeout}</param>
<param name="delay">@{delay}</param>
</params>
</action>
1.8.7.9 删除服务端目录
sftp.rmdir
描述:删除服务器中的指定目录
输入:
name type help
reference string 服务器的连接会话
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 447
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
remote-path string True - - 服务端目标目
录路径
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 在服务端删除目录/root/antrobot
<action>
<command>sftp.mkdir</command>
<params>
<param name="remote-path"> /root/antrobot</param>
<param name="timeout">@{timeout}</param>
<param name="delay">@{delay}</param>
</params>
</action>
1.8.7.10 删除服务端目标文件
sftp.rmfile
描述:删除服务端目标文件
输入:
name type help
reference string 服务器的连接会话
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 448
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
remote-path string True - - 服务端目标目
录路径
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 在服务端删除文件/root/antrobot.docx
<action>
<command>sftp.mkdir</command>
<params>
<param name="remote-path"> /root/antrobot.docx</param>
<param name="timeout">@{timeout}</param>
<param name="delay">@{delay}</param>
</params>
</action>
1.8.7.11 向服务器上传文件
sftp.upload
描述:向远程服务器上传文件或者文件夹
输入:
name type help
reference string 服务器的连接会话
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 449
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
local-path file True - - 本地待上传目
标路径
remote-path string True - - 上传目标的远
端保存路径,
路径不可为
"\"
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 将项目目录 upload 文件夹中的 test_doc.docx 文件上传到远程服务器/root/recv/目录下
<action>
<command>sftp.upload</command>
<params>
<param name="local-path"> @{WORK_DIR}\upload\test_doc.docx</param>
<param name="remote-path"> /root/recv</param>
</params>
<properties>
<showParam>local-path</showParam>
</properties>
</action>
2. 将项目目录 upload 文件夹上传到远程服务器/root/recv/目录下
<action>
<command>sftp.upload</command>
<params>
<param name="local-path"> @{WORK_DIR}\upload</param>
<param name="remote-path">/root/recv</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 450
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</params>
<properties>
<showParam>local-path</showParam>
</properties>
</action>
1.8.8 邮件
1.8.8.1 删除邮件
deleteEmail
描述:删除邮件
输入:无
参数:
name type is_required default range help
target dir - - - 可选,如果自
定义了邮件的
存放路径,要
配置此参数.
默认路径在
C:/Users/%US
ERNAME%/
AppData/Roa
ming/antroot/e
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 删除目录"D:/pro/getEmail/Emails"中时间最小的一封邮件
<action>
<command>deleteEmail</command>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 451
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<params>
<param name="target">D:/pro/getEmail/Emails</param>
<param name="delay">1000</param>
</params>
</action>
1.8.8.2 获取邮件文件路径
getEmailPath
描述:获取邮件文件路径
输入:无
参数:
name type is_required default range help
target dir - - - 可选,如果自
定义了邮件的
存放路径,要
配置此参数.
默认路径在
C:/Users/%US
ERNAME%/
AppData/Roa
ming/antroot/e
value string True - - 要获取的文件
的扩展名
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string getEmailPath_ret - 邮件文件路径
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 452
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
return_type list - string 返回值的类型
示例:
1. 获取目录"D:/pro/getEmail/Emails"中的第一封邮件中的 txt 文件路径
<action return="path1">
<command>getEmailPath</command>
<params>
<param name="target">D:/pro/getEmail/Emails</param>
<param name="value">txt</param>
<param name="delay">1000</param>
</params>
</action>
1.8.8.3 imap 获取邮件
imap.getEmail
描述:imap 获取邮件,多次获取,相同邮件会被覆盖
输入:无
参数:
name type is_required default range help
server string True - - imap 邮箱服
务器.根据不
同邮件供应商
选择相应的服
务器, 该参数
涉及白名单检
查,生产环境
请在管理中心
配置对应的白
名单条目。条
目名称:
allow_domain
protocol list True imap4_ssl imap4_ssl|ima 邮箱协议,
p4 imap4_ssl 为
安全加密协
议, imap4 为
不加密协议,
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 453
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
默认使用
imap4_ssl 安
全协议
port list True 993 993|143 邮箱服务器端
口, 993 为安
全加密端口,
143 为不加密
端口, 默认使
用 993 端口,
imap4_ssl 协
议选择 993 端
口, imap4 协
议选择 143 端
口
user string True - - 邮箱账号
password password True - - 邮箱密码或者
授权码
filter-mail- list - unread unread|read|all 筛选 folder 中
status 邮件状态.
unread 代表筛
选未读, read
代表筛选已
读, all 代表全
部邮件,默认
为 unread。
选择 all 或者
read 因为邮件
数量较大,会
导致脚本执行
时间过长, 请
耐心等待。
filter-mark- list True - true|false 是否改变指定
unread folder 中邮件
的状态,true
不改变邮件状
态,保持未读
状态, false 将
筛选到的邮件
标记为已读邮
件,默认 false
folder string - INBOX - 邮箱文件夹,
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 454
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
默认 INBOX,
即收件箱,英
文字母大小写
不敏感,收件
箱必须使用
INBOX,不可
使用中文 多
层文件夹请用
'/'拼接, 如
inbox/abcd,自
己创建的文件
夹最好不要带
特殊符号
save-to new_dir - - - 1.可选参数,
如果自定义了
邮件的存放路
径,配置此参
数(若路径不
带系统盘,会
创建在
studio/agent
的安装目录
robot 下)
2、默认路径
在
C:/Users/%US
ERNAME%/
AppData/Roa
ming/antroot/e
mail.
filter-date string - - - 筛选邮件日
期.获取指定
日期到当前日
期:20190628;
获取指定日期
区
间:20190628-
20190629(不
包含
20190629).
filter-sender string - - - 筛选邮件发件
人,只支持邮
箱名如
***@huawei.c
om
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 455
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
filter-subject string - - - 筛选主题
filter-to string - - - 筛选邮件收件
人,只支持邮
箱名如
***@huawei.c
om
filter-cc string - - - 筛选邮件抄送
人,只支持邮
箱名如
***@huawei.c
om
filter-content- list - all attachment|tex 筛选邮件内容
type t|all 类型,
attachment 获
取邮件附件,
text 不获取附
件只获取文本
信息,all 获
取邮件所有内
容(正文中的
图片以附件形
式保存)
filter-mode list - all all|one 筛选邮件模式
(获取一封或
者所有),不填
写时默认为
all
filter-all-rcvr string - - - 筛选接收人
(获取存在收
件人或者抄送
人的邮件),只
支持邮箱名如
***@huawei.c
om
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 456
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:
name type default range help
return string imapgetEmail_ret - 邮件文件路径
return_type - - - 返回值的类型
示例:
1. 使用用户名和密码(授权码)登录邮箱服务器 imap.xxx.com(仅为示例服务器名,不存在), 从收件
箱的未读邮件中,筛选主题为 RPA 的邮件,获取到的邮件保存到路径"@{WORK_DIR}\\save"中,
并且不改变未读邮件的状态
<action xmlId="c778c69a-8dd5-429e-a66b-1ff0f8322267" driver_type="common" desc="imap 获
取邮件" return="imapgetEmail_ret" fail_on_error="True">
<command>imap.getemail</command>
<params>
<param name="server">imap.xxx.com</param>
<param name="protocol">imap4_ssl</param>
<param name="port">993</param>
<param name="user">wwx</param>
<param name="password">@{pwd}</param>
<param name="filter-mail-status">unread</param>
<param name="filter-mark-unread">true</param>
<param name="folder">INBOX</param>
<param name="filter-mode">all</param>
<param name="save-to">@{WORK_DIR}\\save</param>
<param name="filter-subject">RPA</param>
<param name="filter-content-type">all</param>
</params>
</action>
1.8.8.4 mapi 获取邮件
mapi.getEmail
描述:mapi 获取邮件,studio 和 outlook 启动权限保持一致(同为管理员或普通用户),多次获取,
相同邮件会被覆盖
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 457
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输入:无
参数:
name type is_required default range help
filter-date string - - - 筛选邮件日
期.获取指定
日期到当前日
期:20190628;
获取指定日期
区
间:20190628-
20190629(不
包含
20190629).
filter-sender string - - - 筛选邮件发件
人,邮箱名如
***@huawei.c
om
filter-to string - - - 筛选邮件收件
人,只支持邮
箱名如
test(A)
filter-cc string - - - 筛选邮件抄送
人,只支持邮
箱名如
test(A)
filter-subject string - - - 筛选主题
filter-mode list - all all|one 筛选邮件模式
(获取一封或
者所有),不填
写时默认为
all
filter-all-rcvr string - - - 筛选接收人
(获取存在收
件人或者抄送
人的邮件),只
支持邮箱名如
test(A)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 458
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
filter-content- list - - attachment|tex 筛选邮件内容
type t|all 类型,
attachment 获
取邮件附件,
text 不获取附
件只获取文本
信息,all 获
取邮件所有内
容(正文中的
图片以附件形
式保存)
save-to new_dir - - - 1.可选参数,
如果自定义了
邮件的存放路
径,配置此参
数(若路径不
带系统盘,会
创建在
studio/agent
的安装目录
robot 下)
2、默认路径
在
C:/Users/%US
ERNAME%/
AppData/Roa
ming/antroot/e
mail.
filter-unread list - all true|false|all 筛选已读未读
状态. True 代
表筛选未读,
false 代表筛
选已读, all 代
表全部邮件。
不填写时默认
为 all。
filter- list - true true|false 改变未读邮件
setReaded 状态,默认为
true,获取后改
变为已读状
态,false 不
改变状态
filter-folders string - - - 筛选获取指定
文件夹邮件.
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 459
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
获取指定文件
夹:["test@test.
com/收件箱
"],["2019 年第
2 季/Inbox"],
可以获取多个
文件
夹:["2019 年
第 2 季
/Inbox","2019
年第 3 季
/Inbox"]
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string mapigetEmail_ret - 邮件文件路径
return_type list - string 返回值的类型
示例:
1. 从本地 Outlook 邮箱 app 中的文件夹"2019 年第 2 季/Inbox"和"2019 年第 3 季/Inbox"中筛选收
件人或者抄送人为"test(A)"、收件日期在"20190628000000-20190629000000"之间、发件人是
"test(A)"、主题中包含"hello"的未读邮件,并将其设置为已读,获取内容及其附件保存到路径
"D:\test\emails"中
<action return="email_msg">
<command>mapi.getEmail</command>
<params>
<param name="filter-all-rcvr">test(A)</param>
<param name="filter-date">20190628-20190629</param>
<param name="filter-sender">[email protected]</param>
<param name="filter-subject">hello</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 460
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="filter-unread">true</param>
<param name="filter-setReaded">true</param>
<param name="filter-mode">all</param>
<param name="filter-folders">["2019 年第 2 季/Inbox","2019 年第 3 季
/Inbox"]</param>
<param name="filter-content-type">all</param>
<param name="save-to">D:\test\email</param>
</params>
</action>
1.8.8.5 outlook 发送邮件
outlook.sendEmail
描述:使用本地 outlook 发送邮件,使用这个命令会需要用户和系统交互,点击中途弹出的窗口,
或者可以设置,在选项--信任中心--信任中心设置--编程访问--不发出警告;否则会阻塞这个命令.
做了频繁发送限制,建议发送时间间隔 500ms 以上
输入:无
参数:
name type is_required default range help
template string True - - 文件路径或者
邮件正文(换
行:<br>);文
件只支持.oft
和.msg 格式
template- string - - - 邮件正文变
params 量. template
中的参数,使
用 key:value
表示,多参用
","隔开.
subject string True - - 主题
to string - - - 收件人(多个
用","隔
开).to,cc,bcc
至少选择一个
cc string - - - 抄送人(多个
用","隔
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 461
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
开).to,cc,bcc
至少选择一个
bcc string - - - 秘密抄送人
(多个用","隔
开).to,cc,bcc
至少选择一个
image string - - - 正文图片,可
以指定图片大
小
(image_path1,
100,100|image
_path2,10,102
),图片路径
为绝对路径,
多个图片地址
用"|"隔开。
图片可设置为
变量,格式为
variable::imag
e_path,即可
在正文中使用
@{variable}
引用图片
attach string - - - 邮件附件. (可
选,多个附件
地址用"|"或
","隔开)
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 使用 Outlook 邮箱 app 发送邮件,邮件的主题是"Test11 outlook.sendEmail",发件人是 from,
收件人是 to,抄送 cc,秘密抄送 bcc,正文图片是 image,附件是"D:\test\msc.png"
<action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 462
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<command>outlook.sendEmail</command>
<params>
<param name="template">测试测试:@{url}<br>@{image}</param>
<param name="template-params">url:http://100.107.157.121:8080/jenkins/job/antrobot-
client-master-win64-build/</param>
<param name="subject">Test11 outlook.sendEmail</param>
<param name="to">@{to}</param>
<param name="cc">@{cc}</param>
<param name="bcc">@{bcc}</param>
<param name="image">@{image}</param>
<param name="attach">D:\test\msc.png</param>
<param name="delay">500</param>
</params>
</action>
1.8.8.6 pop 获取邮件
pop.getEmail
描述:pop 获取邮件,多次获取,相同邮件会被覆盖
输入:无
参数:
name type is_required default range help
server string - - - 邮箱 pop 服务
器. 默认使用
popscn.huawei
.com
protocol list - pop3s_unidire pop3|pop3s_u 邮局协议,默
ctional_auth nidirectional_a 认使用
uth|pop3s_bidi pop3s_unidire
rectional_auth ctional_auth。
port list - 995 995|110 服务器端口
certfile file True - - 客户端证书
keyfile file - - - 客户端证书私
钥文件
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 463
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
pwd password - - - 客户端证书私
钥文件密码
user string True - - 邮箱(w3)账
号
password password True - - 邮箱(w3)密码
filter-date string - - - 筛选邮件日
期.获取指定
日期到当前日
期:20190628;
获取指定日期
区
间:20190628-
20190629(不
包含
20190629).
filter-sender string - - - 筛选邮件发件
人,只支持邮
箱名如
***@huawei.c
om
filter-to string - - - 筛选邮件收件
人,只支持邮
箱名如
***@huawei.c
om
filter-cc string - - - 筛选邮件抄送
人,只支持邮
箱名如
***@huawei.c
om
filter-subject string - - - 筛选主题
filter-mode list - all all|one 筛选邮件模式
(获取一封或
者所有),不填
写时默认为
all
filter-all-rcvr string - - - 筛选接收人
(获取存在收
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 464
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
件人或者抄送
人的邮件),只
支持邮箱名如
***@huawei.c
om
filter-content- list - - attachment|tex 筛选邮件内容
type t|all 类型,
attachment 获
取邮件附件,
text 不获取附
件只获取文本
信息,all 获
取邮件所有内
容(正文中的
图片以附件形
式保存)
save-to new_dir - - - 1.可选参数,
如果自定义了
邮件的存放路
径,配置此参
数(若路径不
带系统盘,会
创建在
studio/agent
的安装目录
robot 下)
2、默认路径
在
C:/Users/%US
ERNAME%/
AppData/Roa
ming/antroot/e
mail.
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 465
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type default range help
return string popgetEmail_ret - 邮件文件路径
return_type list - string 返回值的类型
示例:
1. 使用用户名和密码从邮箱服务器 popscn.huawei.com 中筛选符合条件的邮件,protocol 中的
pop3 为不安全协议,使用端口 110, pop3s_unidirectional_auth 为安全单向认证,使用端口 995,
如果你有服务器的 CA 证书,请从设置-证书管理-导入证书中 导入 CA 证书,如果没有,我们
会加载 windows 默认的 CA 证书验证服务端的安全性,pop3s_bidirectional_auth 为安全双向 认
证,使用端口 995,除了导入 CA 证书,还需要导入客户端证书,私钥,私钥密码,前提是服务
器支持双向认证;筛选的条件为 收件人或者抄送人为"[email protected]"、 收件日期在
"20190628000000-20190629000000"之间、发件人是"[email protected]"、 主题中包含"hello"的第一
封邮件,获取内容及其附件保存到路径"D:\test\emails"中,
<action return="email_msg">
<command>pop.getEmail</command>
<params>
<param name="user">@{user}</param>
<param name="password">@{password}</param>
<param name="protocol">pop3s_unidirectional_auth</param>
<param name="port">995</param>
<param name="filter-all-rcvr">[email protected]</param>
<param name="filter-date">20190628-20190629</param>
<param name="filter-sender">[email protected]</param>
<param name="filter-subject">hello</param>
<param name="filter-mode">one</param>
<param name="filter-content-type">all</param>
<param name="save-to">D:\test\emails</param>
</params>
</action>
2. 使用用户名和密码从邮箱服务器 pop.huawei.com 中筛选收件人或者抄送人为"[email protected]"、
收件日期在"20190628000000-20190629000000"之间、发件人是"[email protected]"、主题中包含
"hello"的第一封邮件,获取内容及其附件保存到路径"D:\test\emails"中
<action return="email_msg">
<command>pop.getEmail</command>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 466
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<params>
<param name="user">@{user}</param>
<param name="password">@{password}</param>
<param name="filter-all-rcvr">[email protected]</param>
<param name="filter-date">20190628-20190629</param>
<param name="filter-sender">[email protected]</param>
<param name="filter-subject">hello</param>
<param name="filter-mode">one</param>
<param name="filter-content-type">all</param>
<param name="save-to">D:\test\emails</param>
</params>
</action>
3. 使用用户名和密码从邮箱服务器 pop.huawei.com 中筛选收件人或者抄送人为"[email protected]"、
收件日期在"20190628000000-20190629000000"之间、发件人是"[email protected]"、主题中包含
"hello"的所有邮件,获取内容及其附件保存到路径"D:\test\emails"中
<action return="email_msg">
<command>pop.getEmail</command>
<params>
<param name="user">@{user}</param>
<param name="password">@{password}</param>
<param name="filter-all-rcvr">[email protected]</param>
<param name="filter-date">20190628-20190629</param>
<param name="filter-sender">[email protected]</param>
<param name="filter-subject">hello</param>
<param name="filter-mode">all</param>
<param name="filter-content-type">all</param>
<param name="save-to">D:\test\emails</param>
</params>
</action>
4. 使用用户名和密码从邮箱服务器 pop.huawei.com 中筛选收件人或者抄送人为"[email protected]"、
收件日期在"20190628000000-20190629000000"之间、发件人是"[email protected]"、主题中包含
"hello"的所有邮件,获取其附件保存到路径"D:\test\emails"中
<action return="email_msg">
<command>pop.getEmail</command>
<params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 467
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="user">@{user}</param>
<param name="password">@{password}</param>
<param name="filter-all-rcvr">[email protected]</param>
<param name="filter-date">20190628-20190629</param>
<param name="filter-sender">[email protected]</param>
<param name="filter-subject">hello</param>
<param name="filter-mode">all</param>
<param name="filter-content-type">attachment</param>
<param name="save-to">D:\test\emails</param>
</params>
</action>
5. 使用用户名和密码从邮箱服务器 pop.huawei.com 中筛选收件人或者抄送人为"[email protected]"、
收件日期在"20190628000000-20190629000000"之间、发件人是"[email protected]"、主题中包含
"hello"的所有邮件,获取其正文内容保存到路径"D:\test\emails"中
<action return="email_msg">
<command>pop.getEmail</command>
<params>
<param name="user">@{user}</param>
<param name="password">@{password}</param>
<param name="filter-all-rcvr">[email protected]</param>
<param name="filter-date">20190628-20190629</param>
<param name="filter-sender">[email protected]</param>
<param name="filter-subject">hello</param>
<param name="filter-mode">all</param>
<param name="filter-content-type">text</param>
<param name="save-to">D:\test\emails</param>
</params>
</action>
1.8.8.7 smtp 发送邮件
smtp.sendEmail
描述:使用 smtp 服务器发送邮件.做了频繁发送限制,建议发送时间间隔 500ms 以上
输入:无
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 468
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
server string - - - 邮箱的 smtp
服务器. 默认
使用
smtp.huawei.c
om
protocol list - smtps_unidire smtp|smtps_un 邮局协议,默
ctional_auth idirectional_au 认使用
th|smtps_bidir smtps_unidire
ectional_auth ctional_auth。
port list - 587 587|465|25 服务器端口
certfile file True - - 客户端证书
keyfile file - - - 客户端证书私
钥文件
pwd password - - - 客户端证书私
钥文件密码
template string - - - Html 文件路
径或者邮件正
文(换行:<br>)
template- string - - - 邮件正文变
params 量. template
中的参数,使
用 key:value
表示,多参用
","隔开.
subject string - - - 主题
from string - - - 发件人
to string - - - 收件人(多个
用","隔
开).to,cc,bcc
至少选择一个
cc string - - - 抄送人(多个
用","隔
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 469
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
开).to,cc,bcc
至少选择一个
bcc string - - - 秘密抄送人
(多个用","隔
开).to,cc,bcc
至少选择一个
image string - - - 正文图片,可
以指定图片大
小
(image_path1,
100,100|image
_path2,10,102
),图片路径
为绝对路径,
多个图片地址
用"|"隔开。
图片可设置为
变量,格式为
variable::imag
e_path, 即可
在正文中使用
@{variable}
引用图片
attach string - - - 邮件附件. (可
选,多个附件
地址用"|"或
","隔开)
user string True - - 邮箱账号,使
用华为邮箱
时,填写 w3
账号
password password True - - 邮箱密码.
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 470
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 使用 server 服务器,port 端口号发送邮件,其中 465 端口和 587 端口为 SSL 端口,25 端口为
不安全端口, 当您不确定你所使用的 smtp 服务器的 SSL 端口时,您可以在 465 和 587 中做一
个尝试; protocol 中 smtp 为不安全协议,smtps_unidirectional_auth 是安全单向验证,如果你有
smtp 服务器的 CA 证书 可以在设置-证书管理-导入证书中导入 CA 证书,如果没有,我们会加
载 windows 系统默认的 CA 证书去验证服务器的安全性,smtps_bidirectional_auth 为 安全双向认
证,如果您选择该协议,需要传入客户端证书,客户端证书私钥,私钥密码,前提是你所选择
的 smtp 服务器支持双向认证 当你选择 smtp 协议时请使用 25 端口,选择其他协议请用 465 端口
或者 587 端口 邮件的主题是"测试邮件运行结果报告",发件人是 from,收件人是 to,抄送 cc,
秘密抄送 bcc, 正文图片是 image,附件是"D:\test\msc.png",邮箱账号为 user,密码为 password
<action>
<command>smtp.sendEmail</command>
<params>
<param name="server">@{server}</param>
<param name="port">587</param>
<param name="protocol">smtps_unidirectional_auth</param>
<param name="template">~\config_files\mscdemo\notify.html</param>
<param name="template-params">result:@{result},counts:5</param>
<param name="subject">"测试邮件运行结果报告"</param>
<param name="from">@{from}</param>
<param name="to">@{to}</param>
<param name="cc">@{cc}</param>
<param name="bcc">@{bcc}</param>
<param name="image">@{image}</param>
<param name="attach">D:\test\msc.png</param>
<param name="user">@{user}</param>
<param IsEncrypted="2" name="password">@{password}</param>
</params>
</action>
2. 使用 server 服务器,port 端口号发送邮件,邮件的主题是"测试邮件运行结果报告",发件人是
from,收件人是 to,抄送 cc,秘密抄送 bcc,正文图片是 image,附件是"D:\test\msc.png",邮箱
账号为 user,密码问 password
<action>
<command>smtp.sendEmail</command>
<params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 471
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="server">@{server}</param>
<param name="port">@{port}</param>
<param name="template">~\config_files\mscdemo\notify.html</param>
<param name="template-params">result:@{result},counts:5</param>
<param name="subject">"测试邮件运行结果报告"</param>
<param name="from">@{from}</param>
<param name="to">@{to}</param>
<param name="cc">@{cc}</param>
<param name="bcc">@{bcc}</param>
<param name="image">@{image}</param>
<param name="attach">D:\test\msc.png</param>
<param name="user">@{user}</param>
<param IsEncrypted="2" name="password">@{password}</param>
</params>
</action>
1.8.9 Excel 表格操作
1.8.9.1 插入图片
excelAddPicture
描述:插入图片
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
image file True - - 图片的路径
dest-cell string True - - 设置插入图片
的单元格位
置,也可以设
置对齐方式:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 472
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
center,
et:"D5" or
"D5,center"
by list True - scale|pixel 图片大小,可
以设置缩放比
例,也可以设
置具体大小
value string True - - by 是 scale 时
该值为图片缩
放比,必须是
正数,et:
0.5,0.5;by 是
pixel 时该值
为图片像素
值,必须是正
整数。 et:
300, 400
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 将 D:/xls/EXCEL/test.png 图片插入 Excel 文件的 F10 单元格中,设置图片的缩放比例:0.8,
0.6
<action>
<command>excelAddPicture</command>
<params>
<param name="image">D:/xls/EXCEL/test.png</param>
<param name="dest-cell">F10</param>
<param name="by">scale</param>
<param name="value">0.8, 0.6</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 473
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
2. 将 D:/xls/EXCEL/test.png 图片插入 Excel 文件的 F10 单元格中,设置图片的大小:300, 400
<action>
<command>excelAddPicture</command>
<params>
<param name="image">D:/xls/EXCEL/test.png</param>
<param name="dest-cell">F10</param>
<param name="by">pixel</param>
<param name="value">300, 400</param>
</params>
</action>
1.8.9.2 增加 sheet 页
excelAddSheet
描述:增加 Sheet 页
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
sheet-name string True - - 要增加 Sheet
的名称
overwrite list - False True|False 已经存在
sheet-name 中
名称的时候,
是否覆盖
before-index number True - - 表示 sheet 的
索引位置,整
数,当增加的
sheet 不存在
时,索引小于 1
则默认增加到
第一页,索引
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 474
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
大于文件现有
总 sheet 页索
引,则默认增
加到最后一
页; 当增加的
sheet 存在时,
若 overwrite
为 True 时会
添加到当前页
的前一页,若
overwrite 为
False,不作处
理
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 在 Excel 文件中添加名字为 newsheet 的 sheet 页,覆盖已有名称
<action>
<command>excelAddSheet</command>
<params>
<param name="sheet-name">newSheet</param>
<param name="overwrite">True</param>
<param name="before-index">3</param>
<param name="delay">1000</param>
</params>
</action>
1.8.9.3 打开 excel 文件
excelApplicationScope
描述:打开 excel 文件(不支持已打开的文件),若文件不存在则新建并打开,若涉及同时打开多
个文件,需指定别名(return), 警告:此命令涉及打开 excel/csv 文件的操作,文件中可能有自动
执行的宏(可能包含恶意代码),存在安全风险,请确保文件来源可靠并谨慎使用此命令。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 475
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输入:无
参数:
name type is_required default range help
target new_file True - - excel 文件的
路径,文件不
存在则创建一
个新的。
visible list - False True|False 设置打开
excel 文件是
否可见,True
表示可见,
False 表示不
可见,默认
False,注
意:可视化打
开文件时请不
要操作计算
机,否则可能
导致错误。
readonly list - False True|False 是否以只读模
式打开 excel
文件,注意:
以只读模式打
开的工作簿无
法保存。
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string - - excel 文件别名
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 476
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
return_type list - string 返回值的类型
示例:
1. 打开位于 D:/excelCommand/路径下的 haha.xls 文件
<action>
<command>excelApplicationScope</command>
<params>
<param name="target">D:/excelCommand/haha.xls</param>
<param name="delay">1000</param>
</params>
</action>
1.8.9.4 自动填充
excelAutoFillRange
描述:自动填充
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
target string True - - 起始范围,
et:"G1" or
"G1:G2"
value string True - - 填充的范围
(value 的范围
必须要包含
target 的范
围,且起点范
围必须与
target 起点范
围一致),
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 477
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
et:G1:G10
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 从单元格 G1 起自动填充至 G10 区域
<action return="get_workbook_sheet">
<command>excelAutoFillRange</command>
<params>
<param name="target">G1:G2</param>
<param name="value">G1:G10</param>
</params>
</action>
1.8.9.5 筛选表格数据
excelAutoFilter
描述:筛选表格数据. 注意:由于 office 与 wps 软件兼容性问题,使用 wps 软件进行数据筛选时,有
些数据筛选结果可能与使用 office 不同
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
target string True - - 需要筛选的
列,可以是正
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 478
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
整数或字母,
注意:如果表
格已包含筛选
区域,此参数
必须在筛选区
域中
value string True - - 过滤的字段,
可以是下列格
式:
=:筛选空白,
<>:筛选非
空白,
xyz:筛选等
于 xyz 的值,
=xyz:筛选等
于 xyz 的值,
>xyz:筛选大
于 xyz 的值,
<>xyz:筛选
不等于 xyz 的
值,
*xyz*:筛选
包含 xyz 的
值,
<>*xyz*:筛
选不包含 xyz
的值,
如果同时筛选
多个值,可以
使用列表:
[abc,123,XYZ
]
by string - - - 将筛选出的数
据复制到指定
的新 sheet,
可选项,
et:copyToNew
Sheet=sheet3
timeout number - - - 本 action 的执
行的超时时间
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 479
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string excelAutoFilter_r - 筛选表格返回的
et 数据
return_type list - list 返回值的类型
示例:
1. 筛选 excel 文件中 AG 列里面等于 xyz 的数据
<action>
<command>excelAutoFilter</command>
<params>
<param name="target">AG</param>
<param name="value">xyz</param>
<param name="delay">500</param>
</params>
</action>
1.8.9.6 计算单元格偏移后的坐标
excelCellOffset
描述:计算单元格偏移后的坐标
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 480
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
target string True - - 单元格的位
置,et:A1
value string True - - 单元格的偏移
量,第一个参
数为向下偏移
数,第二个参
数为向右偏移
数,et:3,-2,
当偏移量为负
数时,请注意
target 和 value
取值的相对大
小,不要使偏
移后的坐标小
于 0
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string excelCellOffset_r - 单元格偏移后的
et 坐标
return_type list - string 返回值的类型
示例:
1. 计算 Excel 文件中 F10 单元格,在进行偏移后的坐标,偏移量为:3,-2
<action return="new_cell">
<command>excelCellOffset</command>
<params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 481
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="target">F10</param>
<param name="value">3,-2</param>
</params>
</action>
1.8.9.7 关闭工作簿
excelCloseWorkbook
描述:关闭工作簿
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
target list - - False 有 false 表示
关闭不保存。
可选
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 关闭打开的 Excel 文件
<action>
<command>excelCloseWorkbook</command>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 482
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.9.8 复制粘贴
excelCopyPasteRange
描述:复制粘贴单元格,警告:此命令涉及打开 excel/csv 文件的操作,文件中可能有自动执行
的宏(可能包含恶意代码),存在安全风险,请确保文件来源可靠并谨慎使用此命令。
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
source-range string True - - 要拷贝的单元
格的位置,
et:"A1" or
"A28:D22"
dest-file-name file - - - 目标 excel 文
档,可以和
target 在不同
的文档。为可
选项,没有配
置此标签,则
表示在当前文
档。
dest-sheet- string True - - 要粘贴数据的
name sheet,取
值:et:
sheet2
dest-cell string True - - 要粘贴数据的
开始的单元格
位置,取值:
et:A4
paste-options list - - all|valuesandn 粘贴选项,
umberformats all:粘贴全
部,
valuesandnum
berformats:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 483
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
粘贴值和数字
格式,不填默
认粘贴全部
transpose list - - True|False 是否转置
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 从当前工作表中复制 A18:D22 单元格区域的内容并粘贴到路径:D:/xls/下的 test.xls 文件中的
sheet2 页签的 A4 单元格处
<action>
<command>excelCopyPasteRange</command>
<params>
<param name="source-range">A18:D22</param>
<param name="dest-file-name">D:/xls/test.xls</param>
<param name="dest-sheet-name">Sheet2</param>
<param name="dest-cell">A4</param>
<param name="delay">1000</param>
</params>
</action>
1.8.9.9 拷贝粘贴 sheet
excelCopySheet
描述:拷贝 sheet 页并粘贴, 警告:此命令涉及打开 excel/csv 文件的操作,文件中可能有自动执
行的宏(可能包含恶意代码),存在安全风险,请确保文件来源可靠并谨慎使用此命令。
输入:
name type help
reference string 指定要操作的 excel 文件,通
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 484
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
过 excel 文件别名
参数:
name type is_required default range help
source-sheet- string True - - 源 sheet 名
name
dest-sheet- string - - - 目标 sheet 名
name
dest-sheet- number - - - 表示复制后新
index 生成的 sheet
页保存的索引
位置,整数,
索引小于 1 则
默认增加到第
一页,索引大
于文件现有总
sheet 页索引
或不填写时,
则默认增加到
最后一页
dest-file-name string - - - 将 sheet 页复
制到目标文件
的文件路径
(不可与当前
文件相同),
文件不存在则
新建,不写默
认复制到当前
文件
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 485
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
示例:
1. 将 Excel 文件中的 Sheet1 页的内容复制黏贴至 testsheet 页中,并另存为:D:/xls/EXCEL/test.xlsx
<action>
<command>excelCopySheet</command>
<params>
<param name="source-sheet-name">Sheet1</param>
<param name="dest-sheet-name">testSheet</param>
<param name="dest-file-name">D:/xls/EXCEL/test.xlsx</param>
</params>
</action>
1.8.9.10 创建透视表
excelCreatePivotTable
描述:创建透视表. 注意:由于 office 与 wps 兼容性问题,使用 wps 创建透视表时无法指定 sheet 页
和位置生成透视表, wps 会新生成一个单独 sheet 页,将透视表生成在 A1 位置
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
sheet-name string True - - 表示源 Sheet
页
range string True - - 表示源表格范
围,et:
A1:D10
dest-sheet- string True - - 目标 Sheet 页,
name 不存在则新建
dest-cell string True - - 表示目的范围
的起始位置,
et:"A1"
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 486
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
table-name string True - - 表示透视表名
data string - - - 设置透视表的
参数和格式:
可以包含多组
数据,一组数
据用括号包
围,各组之间
用逗号隔开。
目前一组数据
仅支持 2-3 个
参数。第一个
表示源数据的
列标签(表
头)第二个表
示在透视表中
的作用(行、
列、统计等第
三个表示的统
计方式,具体
可参看下列文
档
https://docs.mi
crosoft.com/en
-
us/office/vba/a
pi/excel.xlcon
solidationfunct
ion
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 读取 Excel 文件中 Sheet3 页的 A1:D10 区域的表格数据作为即将创建透视表的列标签,在
Sheet4 页设置透视表 t2,透视表参数如下:
(buyer,xlRowField),(type,xlColumnField),(Money,xlDataField,xlSum)
<action>
<command>excelCreatePivotTable</command>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 487
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<params>
<param name="sheet-name">Sheet3</param>
<param name="range">A1:D10</param>
<param name="dest-sheet-name">Sheet4</param>
<param name="dest-cell">A1</param>
<param name="table-name">t2</param>
<param
name="data">(buyer,xlRowField),(type,xlColumnField),(Money,xlDataField,xlSum)</param>
</params>
</action>
1.8.9.11 创建表格
excelCreateTable
描述:创建表格
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
target string True - - 创建表格的范
围
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 488
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1. 在 Excel 文件的 J29:K30 区域创建表格
<action>
<command>excelCreateTable</command>
<params>
<param name="target">J29:K30</param>
<param name="delay">1000</param>
</params>
</action>
1.8.9.12 删除列
excelDeleteColumns
描述:删除列
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
target string True - - 起始列号,正
整数或字母
value number True - - 要删除的列数
(包括起始
列),正整数
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 489
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
示例:
1. 删除 Excel 文件的第 10,11 列
<action>
<command>excelDeleteColumns</command>
<params>
<param name="target">10</param>
<param name="value">2</param>
<param name="delay">1000</param>
</params>
</action>
1.8.9.13 删除单元格
excelDeleteRange
描述:删除单元格,向左填充
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
target string True - - 单元格的范
围,et:
"A1:D3"
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 490
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
示例:
1. 删除 Excel 文件中 A2:D4 区域的单元格
<action>
<command>excelDeleteRange</command>
<params>
<param name="target">A2:D4</param>
<param name="delay">1000</param>
</params>
</action>
1.8.9.14 删除行
excelDeleteRows
描述:删除行
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
target number True - - 起始行号,正
整数
value number True - - 要删除的行数
(包括起始
行),正整数
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 491
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 删除 Excel 文件的第 10,11 行
<action>
<command>excelDeleteRows</command>
<params>
<param name="target">10</param>
<param name="value">2</param>
<param name="delay">1000</param>
</params>
</action>
1.8.9.15 执行 excel 中的宏
excelExecuteMacro
描述:执行 excel 中的宏,注意:要执行此命令,必须在 excel 的 信任中心->宏设置->开发人员
宏设置->信任对 VBA 工程对象模型的访问,警告:此命令涉及执行宏(可能包含恶意代码)的操
作,存在安全风险,请确保文件来源可靠并谨慎使用此命令。
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
macro-name string True - - 宏的名称
macro-params string - - - 可选,输入的
参数,多个参
数使用逗号隔
开,注意:字
符串类型参数
需要加双引
号,如"abc",
"@{变量名}"
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 492
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
password string - - - 可选,执行宏
的密码
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 执行 Excel 文件中的 Sheet1.test4 这个宏,传入两个参数:"abc", 2
<action>
<command>excelExecuteMacro</command>
<params>
<param name="macro-name">Sheet1.test4</param>
<param name="macro-params">"abc", 2</param>
</params>
</action>
1.8.9.16 获取单元格属性
excelGetCellAttribute
描述:获取单元格属性
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
target string True - - 单元格的位
置,et:"C3"
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 493
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
or "3,3"
value list True - backcolor|font 属性名称,取
name|fontsize| 值:
fontcolor|fontb backcolor、
old
fontname、
fontsize、
fontcolor、
fontbold
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string excelGetCellAttri - 单元格属性
bute_ret
return_type list - string 返回值的类型
示例:
1. 获取 Excel 文件中 C20 单元格的 backcolor 属性
<action return="cell_attr">
<command>excelGetCellAttribute</command>
<params>
<param name="target">C20</param>
<param name="value">backcolor</param>
<param name="delay">1000</param>
</params>
</action>
1.8.9.17 获取单元格颜色
excelGetCellColor
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 494
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
描述:获取单元格颜色,建议使用 excelgetcellattribute 替代此命令
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
target string True - - 单元格的位
置,et:"C3"
or "3,3"
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string excelGetCellColo - 单元格颜色
r_ret
return_type list - string 返回值的类型
示例:
1. 获取 Excel 文件中 B9 单元格的颜色
<action return="get_cell_color">
<command>excelGetCellColor</command>
<params>
<param name="target">B9</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 495
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="delay">1000</param>
</params>
</action>
1.8.9.18 获取列数
excelGetColumnCount
描述:获取当前 sheet 的总列数或者某一行的列数,注意:空表格得到的值为 1;内容为空的单元
格也可能占列数,需要删除单元格使其不占列数
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
value number - - - 填写行数,正
整数,获取某
一行的列数。
无此标签时,
表示获取当前
sheet 页的总
列数。
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string excelGetColumn - 当前 sheet 的总
Count_ret 列数或者某一行
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 496
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
的列数
return_type list - int 返回值的类型
示例:
1. 获取 Excel 文件当前 sheet 页第 2 行的总列数
<action return="col_count">
<command>excelGetColumnCount</command>
<params>
<param name="value">2</param>
<param name="delay">1000</param>
</params>
</action>
1.8.9.19 获取行数
excelGetRowCount
描述:获取当前 sheet 的总行数或者某一列的行数,注意:空表格得到的值为 1;内容为空的单元
格也可能占行数,需要删除单元格使其不占行数
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
value string - - - 填写列数,获
取某一列的行
数。无此标签
时,表示获取
当前 sheet 页
的总行数。
et:"B" or "2"
timeout number - - - 本 action 的执
行的超时时间
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 497
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string excelGetRowCou - 当前 sheet 的总
nt_ret 行数或者某一列
的行数
return_type list - int 返回值的类型
示例:
1. 获取 Excel 文件当前 sheet 页第 2 列的总行数
<action return="row_count">
<command>excelGetRowCount</command>
<params>
<param name="value">2</param>
<param name="delay">1000</param>
</params>
</action>
1.8.9.20 获取 sheet 名称
excelGetWorkbookSheet
描述:获取 sheet 名称
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 498
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
target number True - - sheet 的索引,
正整数,索引
大于文件现有
总 sheet 页索
引,则默认获
取最后一个
sheet 页
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string excelGetWorkboo - sheet 名称
kSheet_ret
return_type list - string 返回值的类型
示例:
1. 获取 Excel 文件中第 1 个 sheet 页的名称
<action return="get_workbook_sheet">
<command>excelGetWorkbookSheet</command>
<params>
<param name="target">1</param>
<param name="delay">1000</param>
</params>
</action>
1.8.9.21 获取所有 sheet 名称
excelGetWorkbookSheets
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 499
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
描述:获取所有 sheet 名称集
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string excelGetWorkboo - 所有 sheet 名称
kSheets_ret 集
return_type list - list 返回值的类型
示例:
1. 获取返回 Excel 文件中所有 sheet 页的名称
<action return="get_workbook_sheet">
<command>excelGetWorkbookSheets</command>
</action>
1.8.9.22 插入列
excelInsertColumns
描述:插入列
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 500
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
target string True - - 目标列号,正
整数或字母,
et:"B" or "2"
value number True - - 要插入的列
数,正整数
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 在 Excel 文件中的 R 列前插入 3 列
<action>
<command>excelInsertColumns</command>
<params>
<param name="target">R</param>
<param name="value">3</param>
<param name="delay">1000</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 501
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.9.23 插入行
excelInsertRows
描述:插入行
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
target number True - - 目标行号,正
整数
value number True - - 要插入的行
数,正整数
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 在 Excel 文件第 10 行前面插入两行
<action>
<command>excelInsertRows</command>
<params>
<param name="target">10</param>
<param name="value">2</param>
<param name="delay">1000</param>
</params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 502
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</action>
1.8.9.24 调用外部的 vba 函数
excelInvokeVBA
描述:调用外部的 VBA 函数.
office 和 wps 在使用时的设置不同:
1.针对 office 要执行此命令,必须在 excel 的 信任中心->宏设置->开发人员宏设置-> 信任对
VBA 工程对象模型的访问;
2.针对 WPS 个人版,则需要安装 VBA FOR WPS.exe 软件 6.0 以上的版本启用宏,并且在 wps 的选
项->信任中心-> 勾选启用宏后自动添加为受信任文档,同时 wps 工具栏点击开发工具->宏安全性-
>(1)安全级勾选低;(2)可靠发行商勾选信任对于 Visual Basic 项目的访问;
此命 令涉及执行宏(可能包含恶意代码)的操作,存在安全风险,请确保文件来源可靠并谨慎使
用此命令.
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
file-name file True - - 目标 VBA 函
数的文件的路
径
function-name string True - - 函数名
function- string - - - 函数参数
params
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 503
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 调用 D:/xls/EXCEL/myMacro.bas 文件中的 VBA 函数:
函数名:testPara;
传入参数:1,1
如果 vba 有返回值的,请在 Xml Code 的 action 中添加变量 return="xxxx"
<action>
<command>excelInvokeVBA</command>
<params>
<param name="file-name">D:/xls/EXCEL/myMacro.bas</param>
<param name="function-name">testPara</param>
<param name="function-params">1,1</param>
</params>
</action>
2. None
<action return="excelInvokeVBA_ret">
<command>excelInvokeVBA</command>
<params>
<param name="file-name">D:/xls/EXCEL/myMacro.bas</param>
<param name="function-name">testPara</param>
<param name="function-params">1,1</param>
</params>
</action>
1.8.9.25 结束 Excel 进程
excelKillProcess
描述:结束 Excel 进程(警告:此命令会强制结束 Excel 进程关闭系统中所有正在被打开的工作
簿,可能会导致工作簿的更改丢失)
输入:无
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 504
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string excelKillProcess_ - 是否成功结束进
ret 程
return_type list - bool 返回值的类型
示例:
1. 结束 Excel 进程
<action return="excelKillProcess_ret">
<command>excelkillprocess</command>
</action>
1.8.9.26 获取内容位置
excelLookUpRange
描述:获取查找内容位置信息
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 505
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
target string True - - 目标范围,
et:"A1:G10"
value string True - - 查找目标。第
一个参数表示
要查找的内
容;第二个参
数表示内容的
type,支持
float 和
string。若第
二个参数没
有,则表示不
区分单元格的
类型。如查找
单个数
据:123.02,floa
t|123.02;
查找多个数据
(多个数据不
支持参数类
型):
hello|123|dem
o
by multi-select - - like|formatCel like:表示模糊
l 查找(value
可以部分匹配
单元格内
容), 可选
项;
formatCell:按
照单元格显示
的内容来查
找, 可选项。
result_style list - - default|merge_ 用于区分当查
detail 找的内容在合
并区域中时返
回结果的规
则,default:
返回合并区域
左上角的单元
格坐标, 如
"A1";
merge_detail:
返回合并区
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 506
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
域,如
"A1:D4"
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string excelLookUpRan - 查找内容的坐标
ge_ret 位置
return_type list - string 返回值的类型
示例:
1. 在 Excel 文件中单元格 F18:H20 单元格区域查找浮点数据 123.02 的位置信息
<action return="look_up_range">
<command>excelLookUpRange</command>
<params>
<param name="target">F18:H20</param>
<param name="value">123.02,float</param>
<param name="delay">1000</param>
</params>
</action>
1.8.9.27 合并单元格
excelMergeRange
描述:合并单元格
输入:
name type help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 507
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
target string True - - 单元格的范
围,et:
"A1,D3"
value list - - unmerge 可选,unmerge
表示取消合
并,不填此项
表示合并
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 将 Excel 文件中的 A2:D4 区域进行单元格合并
<action>
<command>excelMergeRange</command>
<params>
<param name="target">A2:D4</param>
<param name="delay">1000</param>
</params>
</action>
1.8.9.28 获取区域包含的单元格列表
excelRangeToCellList
描述:获取区域包含的单元格列表
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 508
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输入:无
参数:
name type is_required default range help
target string True - - 单元格区域,
如"A1:B3"
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string excelRangeToCell - 区域包含的单元
List_ret 格列表
return_type list - list 返回值的类型
示例:
1. 获取区域"A1:B3"包含的单元格列表
<action>
<command>excelrangetocelllist</command>
<params>
<param name="target">A1:B3</param>
</params>
</action>
1.8.9.29 获取单元格文本
excelReadCell
描述:获取单元格文本
输入:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 509
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
target string True - - 单元格的位
置,et:"C3"
or "3,3"
value list - - merge merge 读取合
并单元格的
值,可选项
by list - - formatCell formatCell 按
照单元格显示
的内容来读
取,可选项
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string excelReadCell_ret - 单个单元格的文
本数据
return_type list - string 返回值的类型
示例:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 510
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1. 获取 Excel 文件中 C10 单元格的文本信息
<action return="read_cell">
<command>excelReadCell</command>
<params>
<param name="target">C10</param>
<param name="delay">1000</param>
</params>
</action>
1.8.9.30 获取单元格公式
excelReadCellFormula
描述:获取单元格公式
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
target string True - - 单元格的位
置,et:"C3"
or "3,3"
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 511
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
return string excelReadCellFor - 单个单元格的公
mula_ret 式
return_type list - string 返回值的类型
示例:
1. 获取 Excel 文件中 C10 单元格的公式
<action return="read_formula">
<command>excelReadCellFormula</command>
<params>
<param name="target">C10</param>
<param name="delay">1000</param>
</params>
</action>
1.8.9.31 获取某列单元格文本
excelReadColumn
描述:获取某列单元格文本
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
target string True - - 列号,正整数
或者字母
value list - - merge merge 读取合
并单元格的
值,可选项
by list - - formatCell formatCell 按
照单元格显示
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 512
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
的内容来读
取,可选项
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string excelReadColumn - 某列单元格文本
_ret
return_type list - list 返回值的类型
示例:
1. 获取 Excel 文件中 A 列的文本
<action return="read_column">
<command>excelReadColumn</command>
<params>
<param name="target">A</param>
<param name="delay">1000</param>
</params>
</action>
1.8.9.32 获取单元格批注文本
excelReadCommentOfCell
描述:获取单元格批注文本, 无批注返回 None
输入:
name type help
reference string 指定要操作的 excel 文件,通
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 513
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
过 excel 文件别名
参数:
name type is_required default range help
target string True - - 单元格的位
置,如:"C3"
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string excelReadComme - 单元格的批注文
ntOfCell_ret 本
return_type list - string 返回值的类型
示例:
1. 获取 C10 单元格的批注文本
<action return="excelReadCommentOfCell_ret">
<command>excelReadCommentOfCell</command>
<params>
<param name="target">C10</param>
</params>
</action>
1.8.9.33 获取 range/sheet 批注文本
excelReadCommentOfRange
描述:获取 range/sheet 中所有含有批注的单元格及其批注的字典文本
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 514
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
target string - - - 区域,如:
"A1:F10",不
填代表获取
sheet 页中所
有批注
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string excelReadComme - range/sheet 中所
ntOfRange_ret 有含有批注的单
元格及其批注的
字典文本
return_type list - string 返回值的类型
示例:
1. 获取 range:"A1:F10"中所有含有批注的单元格及其批注的字典文本
<action return="excelReadCommentOfRange_ret">
<command>excelReadCommentOfRange</command>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 515
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<params>
<param name="target">A1:F10</param>
</params>
</action>
1.8.9.34 获取区域文本
excelReadRange
描述:获取区域文本
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
target string True - - 单元格位置范
围,取值:et:
B2:L5
value list - - merge 可选,提取合
并单元格的
值,取值:
merge
by list - - skipLastEmpt skipLastEmpt
y|formatCell|s y:忽略表格
kipLastEmpty, 末尾行列的空
formatCell 单元格数据,
可选项;
formatCell:
将获取的表格
数据格式化显
示,可选项;
skipLastEmpty
,formatCell:同
时配置以上两
个参数
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 516
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string excelReadRange_ - 区域的文本数据
ret
return_type list - list|DataFrame 返回值的类型
示例:
1. 获取 Excel 文件中 J18:L19 单元格区域的文本信息
<action return="read_range">
<command>excelReadRange</command>
<params>
<param name="target">J18:L19</param>
<param name="delay">1000</param>
</params>
</action>
1.8.9.35 获取某行单元格文本
excelReadRow
描述:获取某行单元格文本
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 517
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
参数:
name type is_required default range help
target number True - - 行号,正整数
value list - - merge merge 读取合
并单元格的
值,可选项
by list - - formatCell formatCell 按
照单元格显示
的内容来读
取,可选项
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string excelReadRow_re - 某行单元格文本
t
return_type list - list 返回值的类型
示例:
1. 获取 Excel 文件中第 10 行的单元格文本
<action return="read_row">
<command>excelReadRow</command>
<params>
<param name="target">10</param>
<param name="delay">1000</param>
</params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 518
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</action>
1.8.9.36 提取 sheet 内容
excelReadSheet
描述:提取 Sheet 内容,默认提取激活的 sheet 页内容
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
value list - - merge merge:合并
单元格中的每
一个单元格都
取值,可选项
by list - - skipLastEmpt skipLastEmpt
y|formatCell|s y:忽略表格
kipLastEmpty, 末尾行列的空
formatCell 单元格数据,
可选项;
formatCell:
将获取的表格
数据格式化显
示,可选项;
skipLastEmpty
,formatCell:同
时配置以上两
个参数
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 519
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:
name type default range help
return string excelReadSheet_r - 整个 sheet 页的
et 内容
return_type list - list|DataFrame 返回值的类型
示例:
1. 获取 Excel 文件中的 sheet 页内容
<action return="read_sheet">
<command>excelReadSheet</command>
</action>
1.8.9.37 刷新透视表
excelRefreshPivotTable
描述:刷新透视表
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
target string True - - 设置 sheet 页
value string True - - 透视表的名称
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 520
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
再执行当前
action
输出:无
示例:
1. 刷新 Excel 文件里面 sheet4 页中的透视表 sheet1
<action>
<command>excelRefreshPivotTable</command>
<params>
<param name="target">Sheet4</param>
<param name="value">sheet1</param>
<param name="delay">1000</param>
</params>
</action>
1.8.9.38 删除重复行
excelRemoveDuplicatesRange
描述:删除重复行
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
target string True - - 目标范围,
et:"A1:D10"
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 521
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
action
输出:无
示例:
1. 删除 Excel 文件中 J29:K30 单元格区域内的重复行
<action>
<command>excelRemoveDuplicatesRange</command>
<params>
<param name="target">J29:K30</param>
<param name="delay">1000</param>
</params>
</action>
1.8.9.39 删除 sheet 页
excelRemoveSheet
描述:删除 Sheet 页
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
by list True - sheetname|ind 按照 sheet 页
ex 名称或索引删
除,取值
"sheetname"
or "index"
value string ture - - 当 by 参数选
择 sheetname
时,填写要删
除的 Sheet 页
名称;当 by
参数选择
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 522
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
index 时,填
写索引(正整
数), 索引大
于文件现有总
sheet 页索
引,则默认删
除最后一个
sheet 页
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 删除 Excel 文件中的第三个 sheet 页
<action>
<command>excelRemoveSheet</command>
<params>
<param name="by">index</param>
<param name="value">3</param>
</params>
</action>
1.8.9.40 重命名 sheet 页
excelRenameSheet
描述:重命名 Sheet 页
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 523
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
source-type list True - sheetname|ind 按照 sheet 页
ex 名称或索引重
命名,取值:
"sheetname"
or "index"
source-name string True - - 当 source-type
参数选择
sheetname
时,填写要重
命名的 Sheet
页名称;当
source-type 参
数选择 index
时,填写索引
(正整数),
索引大于文件
现有总 sheet
页索引,则默
认重命名最后
一个 sheet 页
dest-name string True - - 目标 sheet 名
称
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 将 Excel 文件中的 Sheet1 页更改名称为 SheetNew
<action>
<command>excelRenameSheet</command>
<params>
<param name="source-type">sheetname</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 524
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="source-name">Sheet1</param>
<param name="dest-name">SheetNew</param>
</params>
</action>
1.8.9.41 另存为工作簿
excelSaveAsWorkbook
描述:另存为工作簿,注意:改变文件类型可能由于格式不支持互相转换而失败;如果执行完
excelsaveasworkbook 命令不做后续操作,请执行 excelcloseworkbook 命令关闭另存后的 excel 工
作簿
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
file-name new_file True - - 另存为工作簿
的路径
is-replace list - False True|False 另存为工作簿
的路径出现重
名,是否覆盖
同名文件:
True 表示覆
盖同名文件,
False 表示不
覆盖同名文
件,默认
False
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 525
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 打开当前工程目录下的 test.xlsx 工作簿,在单元格 C4 写入字符串 abcd,另存当前工程目录下,
命名为 test3.xlsx 并关闭工作簿
<action driver_type="common" desc="打开 excel 文件">
<command>excelapplicationscope</command>
<params>
<param name="target">@{WORK_DIR}\test.xlsx</param>
<param name="visible">True</param>
<param name="delay">2000</param>
</params>
</action>
<action driver_type="common" desc="将文本或者公式写入单元格">
<command>excelWriteCell</command>
<params>
<param name="target">C4</param>
<param name="value">abcd</param>
<param name="delay">200</param>
</params>
</action>
<action driver_type="common" desc="另存为工作簿">
<command>excelsaveasworkbook</command>
<params>
<param name="file-name">@{WORK_DIR}\test3.xlsx</param>
<param name="is-replace">False</param>
<param name="delay">2000</param>
</params>
</action>
<action driver_type="common" desc="Close Excel">
<command>excelcloseworkbook</command>
<params>
<param name="delay">200</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 526
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</params>
</action>
1.8.9.42 保存工作簿
excelSaveWorkbook
描述:保存工作簿
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 保存打开的 Excel 文件
<action>
<command>excelSaveWorkbook</command>
</action>
1.8.9.43 选定区域单元格
excelSelectRange
描述:选定区域单元格
输入:
name type help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 527
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
target string True - - 单元格的范
围,et:
"A1:D3"
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 选定 Excel 文件中 B3:C6 区域的单元格
<action>
<command>excelSelectRange</command>
<params>
<param name="target">B3:C6</param>
<param name="delay">1000</param>
</params>
</action>
1.8.9.44 激活 sheet
excelSelectSheet
描述:激活 sheet
输入:
name type help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 528
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
by list - name name|index 按名称(name)
或索引(index)
选择工作表,
不填默认使用
名称进行选
择。
target string True - - 当 by 为 name
时填写 sheet
名称,不区分
大小写;当
by 为 index 时
填写 sheet 索
引,正整数
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 激活 Excel 文件的 sheet1 页
<action>
<command>excelSelectSheet</command>
<params>
<param name="target">Sheet1</param>
<param name="delay">1000</param>
</params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 529
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</action>
1.8.9.45 设置范围背景颜色
excelSetRangeColor
描述:设置范围单元格背景颜色
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
target string True - - 目标范围,
et:"A1:A1"
or "B3:C6"
value string True - - 要设置的颜色
值,取值:6
位 16 进制数
或者
RGB(%d,%d,
%d) 如:
"0xff0080" or
"RGB(255, 0,
128)"
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 设置 Excel 文件的 B3:C6 区域的单元格颜色为:0xff0080
<action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 530
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<command>excelSetRangeColor</command>
<params>
<param name="target">B3:C6</param>
<param name="value">0xff0080</param>
<param name="delay">1000</param>
</params>
</action>
1.8.9.46 写入单元格
excelWriteCell
描述:将文本或者公式写入单元格
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
target string True - - 目标单元格,
et:"A1"
value string - - - 要写入的文本
或者公式,公
式以等号开
头;为空表示
删除单元格内
容
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 531
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 在 Excel 文件中的 B2 单元格写入 abcd
<action>
<command>excelWriteCell</command>
<params>
<param name="target">B2</param>
<param name="value">abcd</param>
<param name="delay">1000</param>
</params>
</action>
1.8.9.47 写入范围单元格
excelWriteRange
描述:将文本或者公式写入某个范围的单元格中
输入:
name type help
reference string 指定要操作的 excel 文件,通
过 excel 文件别名
参数:
name type is_required default range help
target string True - - 目标范围,
et:"A1:D3"
value string True - - 要写入的文本
或者公式,公
式以等号开
头,设置单个
数据时,所有
单元格写入相
同的值,设置
为列表时,
按顺序写入,
et:123 or
[['123',None,'a
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 532
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
bc'],['test','=C
ELL("contents
", A8)',None]]
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 在 Excel 文件中的 J18:L19 单元格区域写入如下数
据:>[['123',None,'abc'],['test','=CELL("contents", A8)',None]]
<action>
<command>excelWriteRange</command>
<params>
<param name="target">J18:L19</param>
<param name="value">[['123',None,'abc'],['test','=CELL("contents", A8)',None]]</param>
<param name="delay">1000</param>
</params>
</action>
1.8.10 Word 文档操作
1.8.10.1 文档末尾添加图片
word.AddPicture
描述:在 word 文档末尾添加图片,支持图片类型:png|jpg|gif|ico|jpeg|bmp|tif|tiff
输入:无
参数:
name type is_required default range help
value file True - - 插入图片的路
径
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 533
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 将位于 D:\robot_test\case\word\word_demo\Pic\路径下的 irrt.PNG 图片插入 word 文档末尾
<action>
<command>word.AddPicture</command>
<params>
<param name="value">D:\robot_test\case\word\word_demo\Pic\irrt.PNG</param>
<param name="delay">1000</param>
</params>
</action>
1.8.10.2 文档末尾追加文本
word.AppendText
描述:word 文档末尾追加文本内容
输入:无
参数:
name type is_required default range help
value string True - - 追加的文本内
容
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 534
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 将 word 文档末尾追加 hello world
<action>
<command>word.AppendText</command>
<params>
<param name="value">hello world</param>
<param name="delay">1000</param>
</params>
</action>
1.8.10.3 打开 word
word.ApplicationScope
描述:打开 word 文档;在同一时候只容许有一个 Word 文档处于打开状态
输入:无
参数:
name type is_required default range help
target file True - - word 文档路
径
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 打开位于:D:\robot_test\case\word\word_demo\Output\路径下的 license2.docx 文档
<action>
<command>word.ApplicationScope</command>
<params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 535
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param
name="target">D:\robot_test\case\word\word_demo\Output\license2.docx</param>
</params>
</action>
1.8.10.4 关闭 word
word.CloseApplication
描述:关闭并保存 word 文档
输入:无
参数:
name type is_required default range help
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 关闭打开的 word 文档
<action>
<command>word.CloseApplication</command>
<params>
<param name="delay">1000</param>
</params>
</action>
1.8.10.5 导出为 pdf 文件
word.ExportToPDF
描述:将 word 文档导出为 PDF 文件
输入:无
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 536
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
target new_file True - - 导出 PDF 文
件的路径
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 将打开的 word 文档另存为 license2.PDF 格式的文件
<action>
<command>word.ExportToPDF</command>
<params>
<param
name="target">D:\robot_test\case\word\word_demo\Output\license2.PDF</param>
<param name="delay">1000</param>
</params>
</action>
1.8.10.6 添加表格
word.InsertDataTable
描述:在 word 文档添加表格
输入:无
参数:
name type is_required default range help
target string - - - 正文内容或书
签名,用于指
定表格插入的
位置
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 537
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
targettype list - - text|bookmark 目标元素类
型.text:正文
的内容;
bookmark:
正文的书签
index number - - - 指定表格插入
到文档中第几
个 target 值。
仅当
targettype 为
text 时有效。
0 代表第一
个,-1 代表最
后一个,不填
代表所有
table-size string True - - 插入表格的行
列数,行列数
必须在 1 和
63 之间,行
列以","分
隔,如:6,63
data string True - - 插入表格的内
容.数据格式
为二维
表:[[0,1,2],[3,
4,5]];目前不
支持变量传
参。
table-pos list True - before|replace| 表格相对目标
after|dochead| 元素插入的位
doctail 置.dochead:
在文档开头;
doctail:在文
档结尾;
before:在目
标元素之前;
after:在目标
元素之后:
replace:将目
标元素替换。
如果没有
target 和
targettype 参
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 538
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
数的前提下,
只能选
dochead、
doctail,假如
参数选择
before,after,re
place 三种插
入位置则为文
档末尾。
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 在 word 文档查找"书签名字"的书签,不涉及页眉页脚,在所有的查询结果前面插入三行四列的
表格,数据内容如下:[["name=gaoyinggang", "", "score=80", ""],["", "", "", ""],["", "age=21", "", ""]]
<action desc="Add a table to the word document">
<command>word.InsertDataTable</command>
<params>
<param name="target">书签名字</param>
<param name="targettype">bookmark</param>
<param name="table-size">3,4</param>
<param name="data">[["name=gaoyinggang", "", "score=80", ""],["", "", "", ""],["",
"age=21", "", ""]]</param>
<param name="table-pos">before</param>
<param name="delay">500</param>
</params>
</action>
2. 在 word 文档查找"文档内容"的正文内容,不涉及页眉页脚,在查询的第一个结果后面插入三行
四列的表格,数据内容如下:[["name=gaoyinggang", "", "score=80", ""],["", "", "", ""],["", "age=21",
"", ""]]
<action desc="Add a table to the word document">
<command>word.InsertDataTable</command>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 539
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<params>
<param name="target">文档内容</param>
<param name="targettype">text</param>
<param name="index">0</param>
<param name="table-size">3,4</param>
<param name="data">[["name=gaoyinggang", "", "score=80", ""],["", "", "", ""],["",
"age=21", "", ""]]</param>
<param name="table-pos">after</param>
<param name="delay">500</param>
</params>
</action>
3. 在 word 文档开头插入三行四列的表格,数据内容如下:[["name=gaoyinggang", "", "score=80",
""],["", "", "", ""],["", "age=21", "", ""]]
<action desc="Add a table to the word document">
<command>word.InsertDataTable</command>
<params>
<param name="table-size">3,4</param>
<param name="data">[["name=gaoyinggang", "", "score=80", ""],["", "", "", ""],["",
"age=21", "", ""]]</param>
<param name="table-pos">dochead</param>
<param name="delay">500</param>
</params>
</action>
4. 在 word 文档结尾插入三行四列的表格,数据内容如下:[["name=gaoyinggang", "", "score=80",
""],["", "", "", ""],["", "age=21", "", ""]]
<action desc="Add a table to the word document">
<command>word.InsertDataTable</command>
<params>
<param name="table-size">3,4</param>
<param name="data">[["name=gaoyinggang", "", "score=80", ""],["", "", "", ""],["",
"age=21", "", ""]]</param>
<param name="table-pos">doctail</param>
<param name="delay">500</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 540
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
5. 在 word 文档查找"文档内容"的正文内容,不涉及页眉页脚,将查询的最后一个结果替换为三行
四列的表格,数据内容如下:[["name=gaoyinggang", "", "score=80", ""],["", "", "", ""],["", "age=21",
"", ""]]
<action desc="Add a table to the word document">
<command>word.InsertDataTable</command>
<params>
<param name="target">文档内容</param>
<param name="targettype">text</param>
<param name="index">-1</param>
<param name="table-size">3,4</param>
<param name="data">[["name=gaoyinggang", "", "score=80", ""],["", "", "", ""],["",
"age=21", "", ""]]</param>
<param name="table-pos">replace</param>
<param name="delay">500</param>
</params>
</action>
1.8.10.7 读取 word 文档
word.ReadText
描述:读取指定 word 文档的文本内容
输入:无
参数:
name type is_required default range help
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string wordReadText_re - word 文档的文本
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 541
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
t 数据
return_type list - string 返回值的类型
示例:
1. 读取整篇 word 文档的内容
<action return="read_text">
<command>word.ReadText</command>
</action>
1.8.10.8 替换图片
word.ReplacePicture
描述:在 word 文档替换指定的图片,支持图片类型:png|jpg|gif|ico|jpeg|bmp|tif|tiff
输入:无
参数:
name type is_required default range help
value file True - - 用于替换图片
路径
by string True - - 需要替换图片
的 Alt_text.
执行此命令前
首先在需要替
换的图片上添
加 Alt 文本作
为标记
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 542
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1. 查找在 word 文档中用 hello world 标记的图片,将位于 D:\robot_test\case\word\word_demo\Pic\
路径下的 test.PNG 替换此标记的图片
<action>
<command>word.ReplacePicture</command>
<params>
<param name="value">D:\robot_test\case\word\word_demo\Pic\test.PNG</param>
<param name="by">hello world</param>
<param name="delay">1000</param>
</params>
</action>
1.8.10.9 替换 word 文档
word.ReplaceText
描述:替换 word 文档的文本内容
输入:无
参数:
name type is_required default range help
targettype string - all - 替换文本的方
式(默认替换
所有):
first:替换文档
中查找结果的
第一个;
last:替换文档
中查找结果的
最后一个;
all:替换文档
中查找结果的
所有;
数字:替换文
档中查找结果
的第几个
(int 类型)
value string True find_text=,repl - 查找并替换内
ace_text= 容;如把文档
中的"String"
替换成"hello
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 543
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
world"则写
成:
find_text=Stri
ng,replace_tex
t=hello world
by list - false true|false 替换区域是否
涉及页眉,页
脚
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 查找 word 文档中出现的"String",不涉及页眉页脚,用"hello world"替换查询结果的第 2 个
"String"
<action>
<command>word.ReplaceText</command>
<params>
<param name="targettype">2</param>
<param name="value">find_text=String,replace_text=hello world</param>
<param name="by">false</param>
<param name="delay">1000</param>
</params>
</action>
2. 查找 word 文档中出现的"String",不涉及页眉页脚,用"hello world"替换查询结果的第 1 个
"String"
<action>
<command>word.ReplaceText</command>
<params>
<param name="targettype">first</param>
<param name="value">find_text=String,replace_text=hello world</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 544
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="by">false</param>
<param name="delay">1000</param>
</params>
</action>
3. 查找 word 文档中出现的"String",不涉及页眉页脚,用"hello world"替换查询结果的最后一个
"String"
<action>
<command>word.ReplaceText</command>
<params>
<param name="targettype">last</param>
<param name="value">find_text=String,replace_text=hello world</param>
<param name="by">false</param>
<param name="delay">1000</param>
</params>
</action>
4. 查找 word 文档中出现的"String",涉及页眉页脚,用"hello world"替换查询结果的所有"String"
<action>
<command>word.ReplaceText</command>
<params>
<param name="targettype">all</param>
<param name="value">find_text=String,replace_text=hello world</param>
<param name="by">true</param>
<param name="delay">1000</param>
</params>
</action>
1.8.10.10 更改书签的内容
word.SetBookMarkContent
描述:更改书签的内容
输入:无
参数:
name type is_required default range help
target string True - - 书签名字
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 545
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
value string - - - 更改书签对应
的内容
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 在 word 文档查找"bookmarkname"的书签,更改书签标记的内容
<action>
<command>word.SetBookMarkContent</command>
<params>
<param name="target">bookmarkname</param>
<param name="value">other text in word</param>
<param name="delay">1000</param>
</params>
</action>
1.8.11 文件处理
1.8.11.1 复制文件/目录
fileCopy
描述:复制文件/目录
输入:无
参数:
name type is_required default range help
from file True - - 被复制的文件
或目录路径
to new_file True - - 目标目录(文
件)路径;注
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 546
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
意:当复制文
件夹时,to 参
数不止要写到
复制的文件
夹,还需要写
具体复制的文
件夹名称,具
体实现可以参
考示例 5,复制
文件则可以参
考其他几个示
例.
options multi-select - overwrite overwrite|skip| 复制文件的方
newly|currentd 式,取值方
irectoryonly|a 式:
ppend overwrite/skip
/newly/current
directoryonly/
append.
1.overwrite:
覆盖目标目录
中的相同文件
或目录;2.skip:
跳过相同文
件,保留目标
目录中相同的
文件或目
录;3.newly:
如果目标目录
中的文件或目
录修改日期比
源文件或目录
新,则保留目
标目录,如果
目标目录中的
文件或目录修
改日期比源文
件或目录旧,
则保存源文件
或目
录;4.CurrentD
irectoryOnly:
仅遍历 from
的当前目录的
文件,不再遍
历子目录,可
与以上三种方
式并用。如无
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 547
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
此项,则遍历
from 目录的
子目录。如指
定此项,仅支
持复制文件,
无法复制文件
夹;5.append:
以二进制方式
追加写入目标
文件中。仅支
持源文件和目
标文件均为纯
文本文件时,
当选此参数
时,to 参数要
写明目标文件
的文件名;
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 以覆盖相同文件或目录的方式复制文件"D:\files_test\filecreate\testfile1"到
"D:\files_test\valuefolder"目录中
<action>
<command>FileCopy</command>
<params>
<param name="from">D:\files_test\filecreate\testfile1</param>
<param name="to">D:\files_test\valuefolder</param>
<param name="options">overwrite,CurrentDirectoryOnly</param>
</params>
</action>
2. 以跳过相同文件或目录的方式复制文件"D:\files_test\filecreate\testfile1"到
"D:\files_test\valuefolder"目录中
<action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 548
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<command>FileCopy</command>
<params>
<param name="from">D:\files_test\filecreate\testfile1</param>
<param name="to">D:\files_test\valuefolder</param>
<param name="options">skip,CurrentDirectoryOnly</param>
</params>
</action>
3. 以保留修改日期最新的文件或目录的方式复制文件"D:\files_test\filecreate\testfile1"到
"D:\files_test\valuefolder"目录中
<action>
<command>FileCopy</command>
<params>
<param name="from">D:\files_test\filecreate\testfile1</param>
<param name="to">D:\files_test\valuefolder</param>
<param name="options">newly,CurrentDirectoryOnly</param>
</params>
</action>
4. 以追加文本文件的方式追加文件"D:\files_test\file_create\源文件 1.txt"到
"D:\files_test\valuefolder\源文件 2.txt"文件中
<action>
<command>FileCopy</command>
<params>
<param name="from">D:\files_test\file_create\源文件 1.txt</param>
<param name="to">D:\files_test\valuefolder\源文件 2.txt</param>
<param name="options">append</param>
</params>
</action>
5. 将 D:\test 文件夹复制到 D:\copydir 文件夹下
<action>
<command>FileCopy</command>
<params>
<param name="from">D:\test</param>
<param name="to">D:\copydir\test</param>
<param name="options">overwrite</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 549
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</params>
</action>
1.8.11.2 创建文件/目录
fileCreate
描述:创建文件/目录
输入:无
参数:
name type is_required default range help
target string True - - 要创建的文件
或目录
value list - - file 可选,默认创
建目录.如果
设为 file 则创
建文本类型的
空文件(比
如:.txt/.doc)
,如果设置为
其他格式的文
件,可能会导
致文件不可用
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 在目录"D:\files_test\filecreate"中创建名为 testfile1 的文件
<action>
<command>FileCreate</command>
<params>
<param name="target">D:\files_test\filecreate\testfile1</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 550
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="value">file</param>
<param name="delay">1000</param>
</params>
</action>
2. 在目录"D:\files_test\filecreate"中创建名为 testfile1 的目录
<action>
<command>FileCreate</command>
<params>
<param name="target">D:\files_test\filecreate\testfile1</param>
<param name="delay">1000</param>
</params>
</action>
1.8.11.3 列出目录下的文件
fileList
描述:列出目录下的文件
输入:无
参数:
name type is_required default range help
target dir True - - 目录路径
options list - - shortPath|curr 可选,默认返
entDirectoryO 回目录下所有
nly 的文件的全路
径,设置为
shortPath 只
显示文件名,
设置为
currentdirector
yonly 只获取
当前目录下文
件
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 551
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
再执行当前
action
输出:
name type default range help
return string fileList_ret - 目录下的文件
return_type list - list 返回值的类型
示例:
1. 将"D:\files_test\"目录下的文件名存入到列表 dir 中
<action return="dir">
<command>FileList</command>
<params>
<param name="target">D:\files_test\</param>
<param name="options">shortPath</param>
<param name="delay">1000</param>
</params>
</action>
2. 将"D:\files_test\"当前目录下的文件名存入到列表 dir 中
<action return="dir">
<command>FileList</command>
<params>
<param name="target">D:\files_test\</param>
<param name="options">currentdirectoryonly</param>
<param name="delay">1000</param>
</params>
</action>
3. 将"D:\files_test\"目录下的所有文件的全路径存入到列表 dir 中
<action return="dir">
<command>FileList</command>
<params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 552
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="target">D:\files_test\</param>
<param name="delay">1000</param>
</params>
</action>
1.8.11.4 移动文件
fileMove
描述:移动文件
输入:无
参数:
name type is_required default range help
target file True - - 被移动的文件
路径
value dir True - - 目标目录路径
options list - - overwrite|skip 此参数默认不
填写,当目标
目录中存在与
被移动的源文
件相同的文件
时,可选此参
数进行不同处
理方
式:overwrite
为覆盖目标目
录中文件,skip
为跳过目标目
录中文件
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 553
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1. 将文件"D:\files_test\filecreate\testfile3"移动到"D:\files_test\valuefolder"目录中
<action>
<command>FileMove</command>
<params>
<param name="target">D:\files_test\filecreate\testfile3</param>
<param name="value">D:\files_test\valuefolder</param>
<param name="delay">1000</param>
</params>
</action>
1.8.11.5 删除文件/目录
fileRemove
描述:删除文件/目录
输入:无
参数:
name type is_required default range help
target file True - - 文件或者目录
路径
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 删除文件"D:\files_test\filecreate\testfile3.txt"
<action>
<command>fileRemove</command>
<params>
<param name="target">D:\files_test\filecreate\testfile3.txt</param>
<param name="delay">1000</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 554
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</params>
</action>
1.8.11.6 重命名文件
fileRename
描述:重命名文件
输入:无
参数:
name type is_required default range help
target file True - - 文件或者目录
路径
value string True - - 目标名称. 重
命名文件时,
目标文件名称
需包含文件类
型,若不加文
件类型可能会
导致重命名后
文件不可用.
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 将文件"D:\files_test\filecreate\testfile4.txt"重命名为"D:\files_test\filecreate\testfile5.txt"
<action>
<command>FileRename</command>
<params>
<param name="target">D:\files_test\filecreate\testfile4.txt</param>
<param name="value">D:\files_test\filecreate\testfile5.txt</param>
<param name="delay">1000</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 555
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</params>
</action>
1.8.11.7 将图片生成为 pdf 文件
imageToPdf
描述:将图片生成为 pdf 文件
输入:无
参数:
name type is_required default range help
image_dir dir True - - 图片的存放路
径,将要转成
pdf 文件的图
片统一放在此
路径参数下,
支持转换成
pdf 文件的图
片格式 包
括:".png"、
".jpg"、
".jpeg"、
".tif"、
".tiff"、
".bmp"和
".gif", 注意:
此参数路径下
只能放图片,
不能放其他文
件或文件夹
output-path dir True - - 图片转换成
pdf 文件后的
存放路径
output-name str True - - 图片转换为
pdf 文件后的
文件名称,使
用的文件名必
须以.pdf 结尾
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 556
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 将此目录"D:\AntRobot\image"下的图片转成 pdf 文件,保存在"D:\project\pdf_case\test_pdf_case"
目录下
<action>
<command>imagetopdf</command>
<params>
<param name="image_dir">D:\AntRobot\image</param>
<param name="output-path">D:\project\pdf_case\test_pdf_case</param>
<param name="output-name">image.pdf</param>
</params>
</action>
1.8.11.8 PDF 合并
mergePdf
描述:PDF 合并;使用此命令需用户自行安装 pikepdf 三方件,安装步骤:在 studio 安装目录下进
入到 Python 目录中,输入 Robot.exe -m pip install pikepdf 进行安装
输入:无
参数:
name type is_required default range help
pdf_file_list str True - - 需要合并的
pdf 文件的绝
对路径列表,
多个路径以';'
分开.
output-path dir True - - pdf 合并后生
成文件的存放
路径
output-name str True - - pdf 合并后生
成的文件名
称,使用的文
件名必须以
pdf 结尾.
delay number - - - 等待多少 ms
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 557
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
再执行当前
action
输出:无
示例:
1. 将 pdf 文件"D:\AntRobot\test1.pdf"和"D:\AntRobot\test2.pdf"合并,生成新文件 merge.pdf
<action>
<command>mergepdf</command>
<params>
<param name="pdf_file_list">D:\AntRobot\test1.pdf;D:\AntRobot\test2.pdf</param>
<param name="output-path">D:\project\pdf_case\test_pdf_case\Output</param>
<param name="output-name">merge.pdf</param>
</params>
</action>
1.8.11.9 PDF 转为图片
pdfToImage
描述:PDF 转为图片;使用此命令需下载转换工具 poppler,下载链接
http://blog.alivate.com.au/poppler-windows/,下载后解压并将 bin/文件夹添加到环境变量中,并将电
脑重启即可
输入:无
参数:
name type is_required default range help
pdf-path file True - - pdf 文件的绝
对路径
output-path dir True - - pdf 转换图片
后的存放路径
output-name str True - - pdf 转换图片
后的图片名
称,使用的文
件名必须以有
效的图像扩展
名结尾。支持
的扩展名包
括:".png"、
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 558
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
".jpg"、
".jpeg"、
".tif"、
".tiff"、
".bmp"和
".gif".
filter-page string True - - 指定转换图片
的的页数,可
指定转换某一
页或者范围页
数为图片,若
需要转换 pdf
全部页数为图
片,可填写
all(注意:若文
件过大可能导
致系统卡顿).
e.g.:1-2
注意:页数只
能为正整数,
且指定页数范
围时起始页不
可以大于尾页
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 将 pdf 文件"D:\AntRobot\exceltexttable.pdf"中 1-2 页转为图片
<action>
<command>pdftoimage</command>
<params>
<param name="pdf-path">D:\AntRobot\exceltexttable.pdf</param>
<param name="output-path">D:\AntRobot\test</param>
<param name="output-name">test</param>
<param name="filter-page">2-3</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 559
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.11.10 读取 json 文件
readJson
描述:读取 json 文件
输入:无
参数:
name type is_required default range help
file-name file True - - 文件的绝对路
径
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string readJson_ret - 读取 json 文件数
据
return_type list - string 返回值的类型
示例:
1. 读取 json 格式的文件"D:\AntRobot\exceltexttable.json"
<action return="retval">
<command>readJson</command>
<params>
<param name="file-name">D:\AntRobot\exceltexttable.json</param>
<param name="delay">1000</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 560
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.11.11 读取 pdf 文件
readPdf
描述:读取 pdf 文件
输入:无
参数:
name type is_required default range help
file-name file True - - 文件的绝对路
径
filter-page string True - - 指定读取的页
数,可指定读
取某一页或者
范围页数,若
需要读取 pdf
全部页数,可
填写 all(注意:
若读取的文件
过大可能导致
系统卡顿).
e.g.:1-2
注意:页数只
能为正整数,
且指定页数范
围时起始页不
可以大于尾页
filter-type list True - text|table 指定读取的数
据类型.text:
文本内容,
table:表格数
据
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 561
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type default range help
return string readPdf_ret - 读取 pdf 文件数
据
return_type list - string 返回值的类型
示例:
1. 获取 pdf 文件"D:\AntRobot\exceltexttable.pdf"中 1-2 页的表格数据
<action return="retval">
<command>readPdf</command>
<params>
<param name="file-name">D:\AntRobot\exceltexttable.pdf</param>
<param name="filter-page">1-2</param>
<param name="filter-type">table</param>
<param name="delay">1000</param>
</params>
</action>
2. 获取 pdf 文件"D:\AntRobot\exceltexttable.pdf"中 1-2 页的所有内容
<action return="retval">
<command>readPdf</command>
<params>
<param name="file-name">D:\AntRobot\exceltexttable.pdf</param>
<param name="filter-page">1-2</param>
<param name="filter-type">text</param>
<param name="delay">1000</param>
</params>
</action>
1.8.11.12 读取文本文件
readText
描述:读取文本文件,可读取文本类型文件,注意:读取出 txt 之外的文本文件可能会有乱码问题
输入:无
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 562
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
file-name file True - - 文件的绝对路
径
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string readText_ret - 读取 txt 文件数
据
return_type list - string 返回值的类型
示例:
1. 获取文件"D:\AntRobot\exceltexttable.txt"的内容
<action return="retval">
<command>readText</command>
<params>
<param name="file-name">D:\AntRobot\exceltexttable.txt</param>
<param name="delay">1000</param>
</params>
</action>
1.8.11.13 读取 xps 文件
readXps
描述:读取 xps 文件
输入:无
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 563
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
xps-path file True - - xps 文件的绝
对路径
filter-type list True - text|image 指定读取的数
据类型.text:
文本内容,
image:图片
数据
save-text new_file - - - 读取 xps 文件
文本内容指定
写入的文件路
径,若不指定
文件路径,则
数据以返回值
返回
save-image dir True - - 读取 xps 文件
内容获取图片
指定保存图片
的文件夹.
filter-page string - all - 指定读取的页
数,可指定读
取某一页或者
范围页数,默
认读取全部内
容 e.g.:1-2
注意:页数只
能为正整数,
且指定页数范
围时起始页不
可以大于尾页
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 564
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
return string readXps_ret - 读取 xps 文件数
据,注意:只能在
获取文本数据时
有返回值
return_type string - - 返回值的类型
示例:
1. 获取 xps 文件"D:\AntRobot\test.xps"中文本数据
<action return="readXps_ret">
<command>readXps</command>
<params>
<param name="xps-path">D:\AntRobot\test.xps</param>
<param name="filter-type">text</param>
<param name="save-text">D:\AntRobot\1.txt</param>
<param name="filter-page">1</param>
<param name="delay">10</param>
</params>
<properties>
<showParam>xps-path</showParam>
</properties>
</action>
2. 获取 xps 文件"D:\AntRobot\test.xps"中图片数据
<action>
<command>readXps</command>
<params>
<param name="xps-path">D:\AntRobot\test.xps</param>
<param name="filter-type">image</param>
<param name="save-image">D:\AntRobot\images</param>
<param name="delay">10</param>
</params>
<properties>
<showParam>xps-path</showParam>
</properties>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 565
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</action>
1.8.11.14 PDF 拆分
splitPdf
描述:PDF 拆分;使用此命令需用户自行安装 pikepdf 三方件,安装步骤:在 studio 安装目录下进
入到 Python 目录中,输入 Robot.exe -m pip install pikepdf 进行安装
输入:无
参数:
name type is_required default range help
pdf-path file True - - pdf 文件的绝
对路径
output-path dir True - - pdf 拆分后的
存放路径
output-name str True - - pdf 拆分后的
文件名称,使
用的文件名必
须以 pdf 结
尾.
split-page str True - - 指定拆分 pdf
的页数,可指
定单页,也可
指定开始和结
束页数,e.g.:1-
2
注意:页数只
能为正整数,
且指定页数范
围时起始页不
可以大于尾
页.
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 566
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1. 将 pdf 文件"D:\AntRobot\exceltexttable.pdf"中 2-4 页分割出来,单独形成 pdf
<action>
<command>splitpdf</command>
<params>
<param name="pdf-path">D:\AntRobot\exceltexttable.pdf</param>
<param name="output-path">D:\AntRobot\output</param>
<param name="output-name">split.pdf</param>
<param name="split-page">2-4</param>
</params>
</action>
1.8.11.15 解压文件
unzip
描述:解压文件(支持.7z/.zip/.rar/.tar/.gz 五种格式文件解压缩,注意:解压.gz 格式文件需要解压两
次;解压缩限制:压缩包内单个文件大小 32M 内,压缩包总大小限制 512M 内,解压后的文件总大小
限制 512M 内,压缩包内文件个数限制 1000 个以内)
输入:无
参数:
name type is_required default range help
target dir True - - 解压文件的存
放路径
value file True - - 压缩文件的路
径
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 将压缩文件"D:\pro\test.zip"解压到"D:\pro\test"目录中
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 567
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<action>
<command>unzip</command>
<params>
<param name="target">D:\pro\test</param>
<param name="value">D:\pro\test.zip</param>
<param name="delay">1000</param>
</params>
</action>
2. 将压缩文件"D:\pro\test.tar.gz"解压到"D:\pro\test"目录中
<action>
<command>unzip</command>
<params>
<param name="target">D:\pro\test</param>
<param name="value">D:\pro\test.tar.gz</param>
<param name="delay">1000</param>
</params>
</action>
<action>
<command>unzip</command>
<params>
<param name="target">D:\pro\test</param>
<param name="value">D:\pro\test\test.tar</param>
<param name="delay">1000</param>
</params>
</action>
1.8.11.16 写 csv 文件
writeCsv
描述:结合 readPdf 命令,将读取 PDF 的表格数据保存到 csv 文件中
输入:无
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 568
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
file-name new_file True - - 文件的路径
contents string True - - 数据内容
mode list - w w|a|wb|ab 配置写入方
式,取值方
式:
w/a/wb/ab,
默认 w,w 清
空写,a 追加
写,wb 二进
制写,ab 二
进制追加写
encoding list - utf-8 utf- 可配置写入编
8|gb2312|gb18 码,取值方
030 式:utf-
8/gb2312/gb1
8030,默认 utf-
8
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 以 GB2312 的编码格式向 table8.csv 文件中以清空写的方式写入变量 retval 对应的内容
<action>
<command>writeCsv</command>
<params>
<param name="file-name">table8.csv</param>
<param name="contents">@{retval}</param>
<param name="mode">w</param>
<param name="encoding">GB2312</param>
<param name="delay">1000</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 569
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</params>
</action>
2. 以 utf-8 的编码格式向 table8.csv 文件中以追加写的方式写入变量 retval 对应的内容
<action>
<command>writeCsv</command>
<params>
<param name="file-name">table8.csv</param>
<param name="contents">@{retval}</param>
<param name="mode">a</param>
<param name="encoding">utf-8</param>
<param name="delay">1000</param>
</params>
</action>
3. 以 gb18030 的编码格式向 table8.csv 文件中以二进制写的方式写入变量 retval 对应的内容
<action>
<command>writeCsv</command>
<params>
<param name="file-name">table8.csv</param>
<param name="contents">@{retval}</param>
<param name="mode">wb</param>
<param name="encoding">gb18030</param>
<param name="delay">1000</param>
</params>
</action>
4. 以 utf-8 的编码格式向 table8.csv 文件中以二进制追加写的方式写入变量 retval 对应的内容
<action>
<command>writeCsv</command>
<params>
<param name="file-name">table8.csv</param>
<param name="contents">@{retval}</param>
<param name="mode">ab</param>
<param name="delay">1000</param>
</params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 570
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</action>
1.8.11.17 写 html 文件
writeHtml
描述:结合 readPdf 命令,将读取 PDF 的表格数据保存到 html 文件中
输入:无
参数:
name type is_required default range help
file-name new_file True - - 文件的路径
contents string True - - 数据内容
mode list - w w|a|wb|ab 配置写入方
式,取值方
式:
w/a/wb/ab,
默认 w,w 清
空写,a 追加
写,wb 二进
制写,ab 二
进制追加写
encoding list - utf-8 utf- 可配置写入编
8|gb2312|gb18 码,取值方
030 式:utf-
8/gb2312/gb1
8030,默认 utf-
8
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 以 GB2312 的编码格式向 table8.html 文件中以清空写的方式写入变量 retval 对应的内容
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 571
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<action>
<command>writeHtml</command>
<params>
<param name="file-name">table8.html</param>
<param name="contents">@{retval}</param>
<param name="mode">w</param>
<param name="encoding">GB2312</param>
<param name="delay">1000</param>
</params>
</action>
2. 以 utf-8 的编码格式向 table8.html 文件中以追加写的方式写入变量 retval 对应的内容
<action>
<command>writeHtml</command>
<params>
<param name="file-name">table8.html</param>
<param name="contents">@{retval}</param>
<param name="mode">a</param>
<param name="encoding">utf-8</param>
<param name="delay">1000</param>
</params>
</action>
3. 以 gb18030 的编码格式向 table8.html 文件中以二进制写的方式写入变量 retval 对应的内容
<action>
<command>writeHtml</command>
<params>
<param name="file-name">table8.html</param>
<param name="contents">@{retval}</param>
<param name="mode">wb</param>
<param name="encoding">gb18030</param>
<param name="delay">1000</param>
</params>
</action>
4. 以 utf-8 的编码格式向 table8.html 文件中以二进制追加写的方式写入变量 retval 对应的内容
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 572
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<action>
<command>writeHtml</command>
<params>
<param name="file-name">table8.html</param>
<param name="contents">@{retval}</param>
<param name="mode">ab</param>
<param name="delay">1000</param>
</params>
</action>
1.8.11.18 写 json 文件
writeJson
描述:写正确的 json 文件或者将结构为 json 格式但引号不正确的数据转为正确 json 格式数据写
入文件中
输入:无
参数:
name type is_required default range help
file-name new_file True - - 生成文件的文
件名,固定保
存在 output
目录下
contents json True - - 数据内容,内
容不超过 5M
mode list - w w|w+|wb|wb+ 配置写入方
式,取值方
式:
w/w+/wb/wb+
,默认 w,w
清空写,wb 二
进制写,w+
可读可写,
wb+二进制可
读可写
encoding list - utf-8 utf- 可配置写入编
8|gb2312|gb18 码,取值方
030 式:utf-
8/gb2312/gb1
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 573
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
8030,默认 utf-
8
options list - False True|False 写入内容是否
为正确 json
数据,True 为
正确数
据,False 为引
号不正确数
据,默认为
False;注意:
写入内容的键
值对为字符串
时均需包含引
号
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 以 GB2312 的编码格式向 table8.json 文件中以清空写的方式写入变量 retval 对应的内容
<action>
<command>writeJson</command>
<params>
<param name="file-name">table8.json</param>
<param name="contents">@{retval}</param>
<param name="mode">w</param>
<param name="encoding">GB2312</param>
<param name="delay">1000</param>
</params>
</action>
2. 以 utf-8 的编码格式向 table8.json 文件中以可读可写的方式写入变量 retval 对应的内容
<action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 574
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<command>writeJson</command>
<params>
<param name="file-name">table8.json</param>
<param name="contents">@{retval}</param>
<param name="mode">w+</param>
<param name="encoding">utf-8</param>
<param name="delay">1000</param>
</params>
</action>
3. 以 gb18030 的编码格式向 table8.json 文件中以二进制写的方式写入变量 retval 对应的内容
<action>
<command>writeJson</command>
<params>
<param name="file-name">table8.json</param>
<param name="contents">@{retval}</param>
<param name="mode">wb</param>
<param name="encoding">gb18030</param>
<param name="delay">1000</param>
</params>
</action>
4. 以 utf-8 的编码格式向 table8.html 文件中以二进制可读可写的方式写入变量 retval 对应的内容
<action>
<command>writeJson</command>
<params>
<param name="file-name">table8.json</param>
<param name="contents">@{retval}</param>
<param name="mode">wb+</param>
<param name="encoding">utf-8</param>
<param name="delay">1000</param>
</params>
</action>
1.8.11.19 写文本文件
writeText
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 575
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
描述:写文本文件,可将数据内容写入到文本文件当中,非文本文件可能会写入失败
输入:无
参数:
name type is_required default range help
file-name new_file True - - 文件的路径
contents string True - - 数据内容
mode list - w w|a|wb|ab 配置写入方
式,取值方
式:
w/a/wb/ab,默
认 w,w 清空
写,a 追加写,
wb 二进制
写,ab 二进
制追加写
encoding list - utf-8 utf- 可配置写入编
8|gb2312|gb18 码,取值方
030 式:utf-
8/gb2312/gb1
8030,默认 utf-
8
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 以 GB2312 的编码格式向 table8.txt 文件中以清空写的方式写入变量 retval 对应的内容
<action>
<command>writeText</command>
<params>
<param name="file-name">table8.txt</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 576
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="contents">@{retval}</param>
<param name="mode">w</param>
<param name="encoding">GB2312</param>
<param name="delay">1000</param>
</params>
</action>
2. 以 utf-8 的编码格式向 table8.txt 文件中以追加写的方式写入变量 retval 对应的内容
<action>
<command>writeText</command>
<params>
<param name="file-name">table8.txt</param>
<param name="contents">@{retval}</param>
<param name="mode">a</param>
<param name="encoding">utf-8</param>
<param name="delay">1000</param>
</params>
</action>
3. 以 gb18030 的编码格式向 table8.txt 文件中以二进制写的方式写入变量 retval 对应的内容
<action>
<command>writeText</command>
<params>
<param name="file-name">table8.txt</param>
<param name="contents">@{retval}</param>
<param name="mode">wb</param>
<param name="encoding">gb18030</param>
<param name="delay">1000</param>
</params>
</action>
4. 以 utf-8 的编码格式向 table8.txt 文件中以二进制追加写的方式写入变量 retval 对应的内容
<action>
<command>writeText</command>
<params>
<param name="file-name">table8.txt</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 577
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="contents">@{retval}</param>
<param name="mode">ab</param>
<param name="delay">1000</param>
</params>
</action>
1.8.11.20 写 excel 文件
writeXlsx
描述:结合 readPdf 命令,将读取 PDF 的表格数据保存到 excel 文件中
输入:无
参数:
name type is_required default range help
file-name new_file True - - 文件的路径
contents string True - - 数据内容
mode list - w w|a|wb|ab 配置写入方
式,取值方
式:
w/a/wb/ab,
默认 w,w 清
空写,a 追加
写,wb 二进
制写,ab 二
进制追加写
encoding list - utf-8 utf- 可配置写入编
8|gb2312|gb18 码,取值方
030|gbk 式:utf-
8/gb2312/gb1
8030,默认 utf-
8
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 578
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 以 GB2312 的编码格式向 table8.xlsx 文件中以清空写的方式写入变量 retval 对应的内容
<action>
<command>writeXlsx</command>
<params>
<param name="file-name">table8.xlsx</param>
<param name="contents">@{retval}</param>
<param name="mode">w</param>
<param name="encoding">GB2312</param>
<param name="delay">1000</param>
</params>
</action>
2. 以 utf-8 的编码格式向 table8.xlsx 文件中以追加写的方式写入变量 retval 对应的内容
<action>
<command>writeXlsx</command>
<params>
<param name="file-name">table8.xlsx</param>
<param name="contents">@{retval}</param>
<param name="mode">a</param>
<param name="encoding">utf-8</param>
<param name="delay">1000</param>
</params>
</action>
3. 以 gb18030 的编码格式向 table8.xlsx 文件中以二进制写的方式写入变量 retval 对应的内容
<action>
<command>writeXlsx</command>
<params>
<param name="file-name">table8.xlsx</param>
<param name="contents">@{retval}</param>
<param name="mode">wb</param>
<param name="encoding">gb18030</param>
<param name="delay">1000</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 579
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</params>
</action>
4. 以 utf-8 的编码格式向 table8.xlsx 文件中以二进制追加写的方式写入变量 retval 对应的内容
<action>
<command>writeXlsx</command>
<params>
<param name="file-name">table8.xlsx</param>
<param name="contents">@{retval}</param>
<param name="mode">ab</param>
<param name="delay">1000</param>
</params>
</action>
1.8.11.21 压缩文件
zip
描述:压缩文件
输入:无
参数:
name type is_required default range help
target new_file True - - 目标文件被压
缩后的文件文
件名(绝对路
径). 注意:
文件名后不要
加后缀,且文
件名最好不要
有.符号
targettype list - 7z 7z|zip|rar|tar 压缩文件格
式,取值:7z、
zip、rar、tar
value string True - - 被压缩的文件
或者文件夹的
路径(绝对路
径). 注意:
目录格式,在
要被压缩的目
录后加\*,则
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 580
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
只压缩目录里
面的所有文件
(不包括该目
录),压缩包
里不会多一层
该目录名
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 将目录"D:\pro\test"压缩,保存为"D:\pro\test.zip"
<action>
<command>zip</command>
<params>
<param name="target">D:\pro\test.zip</param>
<param name="targettype">zip</param>
<param name="value">D:\pro\test</param>
<param name="delay">1000</param>
</params>
</action>
2. 将目录"D:\pro\test"里面的所有文件(不包括该目录)压缩,保存为"D:\pro\test.zip"
<action>
<command>zip</command>
<params>
<param name="target">D:\pro\test.zip</param>
<param name="targettype">zip</param>
<param name="value">D:\pro\test\*</param>
<param name="delay">1000</param>
</params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 581
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</action>
1.8.12 二维数据处理
1.8.12.1 将 csv 文件转为 excel 文件格式
pandas.csvToExcel
描述:将 csv 文件转为 excel 文件格式
输入:无
参数:
name type is_required default range help
target file True - - csv 文件的存
放路径
value new_file True - - excel 文件的
存放路径
by string - - - 分隔符
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 将 test.csv 文件转化为 test.xlsx 文件格式
<action driver_type="common">
<command>pandas.csvToExcel</command>
<params>
<param name="target">D:\pro\test.csv</param>
<param name="value">D:\pro\test.xlsx</param>
<param name="by">/t</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 582
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.12.2 获取表格数据
pandas.getDataByIndex
描述:根据行和列获取 pandas 表中某个单元格的数据
输入:
name type help
reference string 指定的 pandas 表
参数:
name type is_required default range help
col string True - - 数据所在的列
row string True - - 数据所在的行
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string pandasgetDataByI - 单元格的数据
ndex_ret
return_type list - list 返回值的类型
示例:
1. 获取 pandas 表中的第一行第 city 列的单元格的数据
<action reference="table" return="data_by_index">
<command>pandas.getDataByIndex</command>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 583
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<params>
<param name="col">city</param>
<param name="row">1</param>
</params>
</action>
1.8.12.3 将数据存到 pandas 表
pandas.putDataTable
描述:将数组型数据转化为 pandas 的 Dataframe 表结构中
输入:
name type help
reference string 指定的数组型数据
参数:
name type is_required default range help
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string pandasputDataTa - pandas 表
ble_ret
return_type list - list 返回值的类型
示例:
1. 将数组型数据转化为 pandas 的 Dataframe 表结构中
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 584
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<action reference="list_data" return="table_put">
<command>pandas.putDataTable</command>
</action>
1.8.12.4 排序 pandas 表
pandas.sortValues
描述:根据行或者列排序 pandas 的 Dataframe 表
输入:
name type help
reference string 指定的 pandas 表
参数:
name type is_required default range help
row string True - - 排序依据的行
的名字
col string True - - 排序依据的列
的名字
axis list - - 0|1 选择根据行还
是列排序,0
表示列,1 表
示行
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 585
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
return string pandassortValues - pandas 表
_ret
return_type list - list 返回值的类型
示例:
1. 根据“积分”列和“城市”排序 pandas 表
<action reference="table" return="table_sort">
<command>pandas.sortValues</command>
<params>
<param name="col">["积分","城市"]</param>
<param name="axis">0</param>
</params>
</action>
1.8.12.5 执行 sql 语句
pandas.sqlExecute
描述:执行 sql 语句,此命令不再推荐使用,请使用 database.execute 命令进行替代
输入:
name type help
reference string 数据库的连接会话
参数:
name type is_required default range help
target list True Mysql Mysql 数据库类型,
现在只支持
Mysql 数据库
value string True - - sql 语句
by string - - - 表示数据所在
的行和列,取
值方式:
row=%s,col=
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 586
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
%s
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string pandassqlExecute - 执行 sql 语句的
_ret 返回值
return_type list - list 返回值的类型
示例:
1. 对 MySQL 数据库执行查询语句“select * from dashboard_robot_info where id = 1;”
<action reference="sql_cursor" return="execute_result">
<command>pandas.sqlexecute</command>
<params>
<param name="target">Mysql</param>
<param name="value">select * from dashboard_robot_info where id = 1;</param>
<param name="delay">500</param>
</params>
</action>
1.8.12.6 df 表格导出为 csv 文件
pandas.toCsv
描述:将 pandas 的 df 表格导出为 csv 文件
输入:
name type help
reference string 指定的 pandas 表
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 587
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
参数:
name type is_required default range help
target new_file True - - csv 文件的存
放路径
encoding list - - utf- 编码
8|gbk|gb2312|
gb18030
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 将 pandas 表的数据导出为 csv 文件保存到"D:/pro/table.csv"中
<action reference="table">
<command>pandas.toCsv</command>
<params>
<param name="target">D:/pro/table.csv</param>
</params>
</action>
1.8.12.7 df 表格导出为 excel 文件
pandas.toExcel
描述:将 pandas 的 df 表格导出为 excel 文件
输入:
name type help
reference string 指定的 pandas 表
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 588
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
参数:
name type is_required default range help
target new_file True - - excel 文件的
存放路径
value string - - - 导出为 excel
文件的 sheet
页名字
by list - - cover|append 导出为 excel
文件的方式
encoding list - - utf-8|utf-8- 编码
sig|gbk|gb231
2|gb18030
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 将 pandas 表的数据导出为 excel 文件保存到"D:/pro/table.xlsx"
<action reference="table">
<command>pandas.toExcel</command>
<params>
<param name="target">D:/pro/table.xlsx</param>
</params>
</action>
1.8.12.8 DataFrame 转置
pandas.transpose
描述:对 DataFrame 进行转置,return 为 DataFrame 或空时返回 DataFrame,return 为 List 时,
返回 DataFrame 转成的 List
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 589
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输入:
name type help
reference string 指定的数组型数据
参数:
name type is_required default range help
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string pandas_transpose - pandas 表
_ret
return_type list DataFrame DataFrame|List 返回值的类型
示例:
1. 对 DataFrame 进行转置, 得到转置后的 DataFrame
<action reference="pandasputDataTable_ret" return="pandas_transpose_ret"
return_type="DataFrame">
<command>pandas.transpose</command>
</action>
2. 对 DataFrame 进行转置, 得到转置后 DataFrame 转成的 List
<action reference="pandasputDataTable_ret" return="pandas_transpose_ret" return_type="List">
<command>pandas.transpose</command>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 590
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.13 系统
1.8.13.1 截图
clipImage
描述:截图
输入:无
参数:
name type is_required default range help
save-file new_file - - - 图片的保存路
径. 默认保存
在
Output/clipim
age/中.(文件
类型:jpg/png)
start-pos string - - - 左上角坐标。
默认不填为屏
幕的左上角坐
标
end-pos string - - - 右下角坐标。
默认不填为屏
幕的右下角坐
标
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string clipImage_ret - 截图的路径
return_type list - string 返回值的类型
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 591
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
示例:
1. 以左上角坐标为"100,100",右下角坐标为"630,630"截图并保存
<action>
<command>clipImage</command>
<params>
<param name="save-file">path</param>
<param name="start-pos">100,100</param>
<param name="end-pos">630,630</param>
</params>
</action>
1.8.13.2 时间戳转化为时间格式
datetime.localtime
描述:获取本地时间或者将时间戳(unix 时间戳,单位秒)转化为时间格式
输入:无
参数:
name type is_required default range help
target string - - - 时间戳. 比如
1381419600.
target 为空
时,默认为当
前时间
format string True - - 时间格式,比
如%Y-%m-
%d :%H:%M:
%S
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 592
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type default range help
return string datetimelocaltime - 时间
_ret
return_type list - string 返回值的类型
示例:
1. 将时间时间戳 1381419600 转为时间格式
<action return="currenttimestamp">
<command>datetime.localtime</command>
<params>
<param name="target">1381419600</param>
<param name="format">%Y-%m-%d :%H:%M:%S</param>
</params>
</action>
1.8.13.3 时间转化为时间戳
datetime.timestamp
描述:时间转化为时间戳(unix 时间戳,单位秒)
输入:无
参数:
name type is_required default range help
target string - - - 时间. 比
如:2019-08-08
22:22:22.
target 为空时
或没有 target
时,默认为当
前时间
format string - - - 时间格式,当
target 为
2019-08-08
22:22:22,
format 为%Y-
%m-
%d %H:%M:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 593
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
%S
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string datetimetimestam - 时间戳
p_ret
return_type list int float|int|string 返回值的类型
示例:
1. 将时间"2019-07-30"时间转为时间戳
<action return="currenttime">
<command>datetime.timestamp</command>
<params>
<param name="target">2019-07-30</param>
<param name="format">%Y-%m-%d</param>
</params>
</action>
1.8.13.4 使用 eSpace 发送信息
eSpace.sendMessage
描述:使用 eSpace 发送消息,在 3.1.8.8 以上(不包含 3.1.8.8)的新版本 Espace 中无法发送消息。
Studio 启动权限必须和 Espace 启动权限一致,必须同时为管理员启动或者同时为普通用户启动。
输入:无
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 594
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
target string True - - 需要发送的人
(账号)或者群
(群号),支持多
参(用","分隔),
群号是否存在
不支持校验。
(只能输入
1024 长度以
内的字符)
value string True - - 发送的文本内
容(只能输入
10240 长度以
内的字符)
interface-type list - local local|online 当此参数为
local 时,代
表使用本地
espace 发送文
本消息。当此
参数为 online
时,代表使用
restapi 新方式
发送 espace
卡片消息。新
方式只支持个
人卡片消息的
发送,不支持
群组消息的发
送。新方式支
持 3.1.8.8 版
本以上的
espace 发送消
息。新方式当
前仅支持绿区
espace 消息的
发送。
online-url list True - http://10.25.17 此参数代表
2.85:8090/mes restapi 的
sage_sender url。当前只
支持绿区的
url,所以只支
持绿区 espace
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 595
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
消息的发送。
sender string True - - 此参数代表发
消息人的信
息。会展示在
卡片消息的标
题上。(只能
输入 1024 长
度以内的字
符)
receiver string True - - 此参数代表收
消息人的 w3
工号。多个工
号之间使用逗
号','分隔。
(只能输入
1024 长度以
内的字符)
content string True - - 此参数代表发
卡片消息的消
息文本内容。
(只能输入
10240 长度以
内的字符)
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 使用当前登录的 Espace 账号发送纯文本信息
<action>
<command>eSpace.sendMessage</command>
<params>
<param name="target">hwx*****,hwx*****</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 596
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="value">test_content</param>
</params>
</action>
2. 使用 restapi 新方式发送 espace 个人卡片消息
<action driver_type="common">
<command>espace.sendmessage</command>
<params>
<param name="interface-type">online</param>
<param name="online-api">http://10.25.172.85:8090/message_sender</param>
<param name="sender">xwx******</param>
<param name="receiver">xwx******,owx******</param>
<param name="content">demo test</param>
</params>
</action>
1.8.13.5 获取剪贴板
getClipboard
描述:获取剪贴板中的文本数据
输入:无
参数:
name type is_required default range help
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string getClipboard_ret - 获取剪贴板中的
数据
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 597
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
return_type list - string 返回值的类型
示例:
1. 获取当前剪贴板中的数据赋值给变量 value
<action return="value">
<command>getClipboard</command>
</action>
1.8.13.6 根据当前时间获取时间节点
getCurrentTime
描述:根据当前时间获取时间节点
输入:无
参数:
name type is_required default range help
target string True - - 时间格式. %y
表示两位数的
年份(00-
99);%Y 表示
四位数的年份
(0000-
9999);%m 表
示月份(01-
12);%d 表示
月内中的一天
(0-31);%H 表
示 24 小时制
小时数(0-
23);%I 表示
12 小时制小
时数(01-
12);%M 表示
分钟数
(00=59);%S
表示秒(00-
59);%a 表示
本地简化星期
名称;%A 表
示本地完整星
期名称;%b
表示本地简化
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 598
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
的月份名
称;%B 表示
本地完整的月
份名称;%c
表示本地相应
的日期表示和
时间表示;%j
表示年内的一
天(001-
366);%p 表示
本地 A.M.或
P.M.的等价
符;%U 表示
一年中的星期
数(00-53)星期
天为星期的开
始;%w 表示
星期(0-6),星
期天为星期的
开始;%W 表
示一年中的星
期数(00-53)星
期一为星期的
开始;%x 表
示本地相应的
日期表示;%X
表示本地相应
的时间表
示;%% 表
示%号本身.
详
见:https://strfti
me.org/
offset string - - - 时间偏移,支
持
weeks/days/ho
urs
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 599
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:
name type default range help
return string getCurrentTime_r - 当前时间节点
et
return_type list - string 返回值的类型
示例:
1. 获取一天前对应的现在的时刻
<action return="timeStr">
<command>getcurrenttime</command>
<params>
<param name="target">%Y%m%d</param>
<param name="offset">days=-1</param>
</params>
</action>
2. 获取昨天的这个时刻往后 2 小时的时间点
<action driver_type="common" desc="根据当前时间获取时间节点" return="time_str">
<command>getcurrenttime</command>
<params>
<param name="target">%Y%m%d%H%M%S</param>
<param name="offset">days=-1,hours=2</param>
</params>
</action>
1.8.13.7 判断文件存在
pathExists
描述:判断文件或者目录是否存在
输入:无
参数:
name type is_required default range help
value string True - - 文件或者目录
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 600
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
路径
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string pathExists_ret - 目录是否存在的
结果
return_type list - bool 返回值的类型
示例:
1. 判断文件"D:/demo.txt"是否存在
<action return="a">
<command>pathExists</command>
<params>
<param name="value">D:/demo.txt</param>
<param name="delay">1000</param>
</params>
</action>
1.8.13.8 选择文件/目录
selectPath
描述:选择文件或者目录对话框
输入:无
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 601
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
target list - file file|folder|dir 选择打开的对
话框的类型,
填写为 file
时,打开文件
选择对话框;
填写 dir 或者
folder 时,打
开文件夹选择
对话框
value dir - - - 选择文件对话
框的基准路
径. 只有无
target 或者
target 为 file
时才可以使用
此标签
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string selectPath_ret - 文件或者目录对
话框内容
return_type list - string 返回值的类型
示例:
1. 打开选择文件对话框,默认路径"D:/demo"
<action return="a">
<command>selectPath</command>
<params>
<param name="target">file</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 602
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="value">D:/Demo</param>
<param name="delay">500</param>
</params>
</action>
2. 打开选择文件夹对话框
<action return="a">
<command>selectPath</command>
<params>
<param name="target">dir</param>
<param name="delay">500</param>
</params>
</action>
1.8.13.9 保存到剪贴板
setClipboard
描述:将文本数据保存到剪贴板中
输入:无
参数:
name type is_required default range help
value string True - - 要保存的数据
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:无
示例:
1. 将变量 value 的数据值保存到剪贴板中
<action>
<command>setClipboard</command>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 603
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<params>
<param name="value">@{value}</param>
<param name="timeout">5000</param>
</params>
</action>
1.8.13.10 使用扬声器发出提示音
sys.beep
描述:使用扬声器发出提示音
输入:无
参数:
name type is_required default range help
duration number - - - 持续时间.持
续时间单位为
ms,默认持
续时间
1500ms.
hertz number - - - 值为提示音频
率.频率单位
为 hz,默认
频率 500hz.
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 使用扬声器以 500HZ 的频率持续 2 秒发出提示音
<action>
<command>sys.beep</command>
<params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 604
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="duration">2000</param>
<param name="hertz">500</param>
</params>
</action>
1.8.13.11 获取主机名
sys.getHostname
描述:获取主机名
输入:无
参数:
name type is_required default range help
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string sysgetHostname_r - 主机名
et
return_type list - string 返回值的类型
示例:
1. 获取主机名
<action return="a">
<command>sys.getHostname</command>
</action>
1.8.13.12 获取 ip 地址
sys.getIp
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 605
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
描述:获取 ip(IPv4)地址
输入:无
参数:
name type is_required default range help
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string sysgetIp_ret - ip 地址
return_type list - string 返回值的类型
示例:
1. 获取 ip 地址
<action return="a">
<command>sys.getIp</command>
</action>
1.8.13.13 获取 mac 地址信息
sys.getMacAddress
描述:获取网卡 mac 地址信息
输入:无
参数:
name type is_required default range help
delay number - - - 等待多少 ms
再执行当前
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 606
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
输出:
name type default range help
return string sysgetMacAddres - mac 地址信息
s_ret
return_type list - string 返回值的类型
示例:
1. 获取 MAC 地址
<action return="a">
<command>sys.getMacAddress</command>
</action>
1.8.13.14 输入对话框
system.simpleDialog
描述:弹出一个输入对话框。输入框为空,点击确定返回空字符串。点击取消或者关闭返回
None
输入:无
参数:
name type is_required default range help
value string - Please enter a - 输入对话框的
value 标签内容
delay number - - - 等待多少 ms
再执行当前
action
timeout number - - - 执行失败后的
重试超时时间
(ms)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 607
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:
name type default range help
return string systemsimpleDial - 对话框内容
og_ret
return_type list - string 返回值的类型
示例:
1. 弹出一个 label 为"What is your name?"的输入对话框
<action return="a">
<command>system.simpleDialog</command>
<params>
<param name="value">What is your name?</param>
<param name="delay">1000</param>
</params>
</action>
1.8.14 数据库
1.8.14.1 连接数据库
connectdb
描述:连接数据库,不建议使用,请使用 database.connect
输入:无
参数:
name type is_required default range help
dbtype string True - - 数据库类型,
现在只支持
Mysql 数据库
dbname string True - - 数据库的名字
username string True - - 数据库的用户
名
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 608
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
password password - - - 用户密码
host string True - - 数据库 IP 地
址
port string True - - 数据库端口
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string connectdb_ret - 数据库的连接会
话
return_type fixed_string object - 返回值的类型
示例:
1. 连接 MySQL 数据库,连接信息如下:
IP:127.0.0.1
dbname: arrange
username: root
password:
port: 3306
<action return="sql_cursor">
<command>connectdb</command>
<params>
<param name="dbtype">Mysql</param>
<param name="dbname">arrange</param>
<param name="username">root</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 609
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="password"/>
<param name="host">127.0.0.1</param>
<param name="port">3306</param>
</params>
<delay>3000</delay>
</action>
1.8.14.2 调用存储过程
database.callproc
描述:存储过程针对于数据库某个具体的库,所以不管是创建还是调用,如果传入的连接对象
未连接到具体的库,需要先 execute 选择具体的库
输入:
name type help
reference string 数据库的连接会话
参数:
name type is_required default range help
procname string True - - 储存过程名
params string - - - 调用存储过程
传入的参数,
用列表形式
[2]
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 610
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
return string databasecallproc_ - 执行存储过程返
ret 回的结果
return_type list - string 返回值的类型
示例:
1. 调用存储过程 proctest,传入参数[1]
<action reference="mysql" return="mysql_callproc">
<command>database.callproc</command>
<params>
<param name="procname">proctest</param>
<param name="params">[1]</param>
</params>
</action>
1.8.14.3 关闭数据库连接对象
database.close
描述:关闭数据库连接对象
输入:
name type help
reference string 数据库的连接会话
参数:
name type is_required default range help
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 611
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
示例:
1. 关闭 MySQL 数据库连接
<action reference="mysql">
<command>database.close</command>
</action>
1.8.14.4 连接数据库
database.connect
描述:连接数据库,返回连接对象。当前支持 mysql,mariadb,oracle,postgresql,gaussdb,
mongodb。连接 Oracle 数据库需要额外下载 instantclient 依赖包,解压之后添加到电脑的环境变
量中。当前指令有可能操作生产环境数据,导致数据的变更,请谨慎使用。
输入:无
参数:
name type is_required default range help
category list True - mysql|mariadb 数据库名称类
|oracle|postgre 别
sql|gaussdb|m
ongodb
host string - localhost - 连接数据库的
ip 地址,本
地的为
localhost 或者
127.0.0.1,可
以不填,默认
连接本地数据
库
port number - - - 数据库端口
号,默认端口
号:mysql:
3306,Oracle
为 1521,
postgresql:
5432,
mongodb:
27017
user string - - - 连接数据用户
名
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 612
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
password password - - - 连接数据库密
码
database string - - - 连接到数据库
的库名,在
Oracle 中为
SERVICE_N
AME 或 SID
charset string - - - 数据库字符集
编码
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
encryption list - encryption no_encryption| 是否安全连
encryption|wal 接,默认为安
let 全连接
cert_file file - - - 客户端的证书
文件
key_file file - - - 客户端的私钥
文件
输出:
name type default range help
return string databaseconnect_r - 数据库的连接会
et 话
return_type fixed_string object - 返回值的类型
示例:
1. 连接 MySQL 数据库,连接对象保存在变量 mysql 中,连接信息如下:
host:localhost
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 613
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
port: 3306
user: root
charset:utf8
<action return="mysql">
<command>database.connect</command>
<params>
<param name="category">mysql</param>
<param name="host">localhost</param>
<param name="port">3306</param>
<param name="user">root</param>
<param name="password"/>
<param name="charset">utf8</param>
</params>
</action>
2. 连接 Oracle 数据库,连接对象保存在变量 oracle 中,连接信息如下:
host:localhost
port: 1521
user: root
password:123456
charset:utf8
<action return="oracle">
<command>database.connect</command>
<params>
<param name="category">oracle</param>
<param name="host">localhost</param>
<param name="port">1521</param>
<param name="user">root</param>
<param name="password">123456</param>
<param name="charset">utf8</param>
</params>
</action>
1.8.14.5 执行 sql 语句
database.execute
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 614
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
描述:对关系型数据库执行 sql 语句,如果执行查询语句,返回所有查询结果,可以执行多条
sql 语句,用分号隔开。postgresql 数据库的 SQL 语句中只能使用单引号,Oracle 的 SQL 语句结
尾不能加分号。
输入:
name type help
reference string 数据库的连接会话
参数:
name type is_required default range help
sql-statement string True - - sql 语句,参
数使用%s 代
表占位
符,%%代表
不转义的%,
Oracle 不支持
参数传递
params string - - - sql 语句中需
要的参数,列
表形式(et:
["xiaohua",
10])
execute-type list - one one|many 选择执行多条
sql 语句还是
单条 sql 语
句,默认取值
one
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 615
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type default range help
return string databaseexecute_r - 执行查询 sql 语
et 句返回结果
return_type list - string|list 返回值的类型
示例:
1. 对 MySQL 数据库执行多条 sql 语句,创建数据库,选择数据库,创建表,向表里插入数据
<action reference="mysql">
<command>database.execute</command>
<params>
<param name="sql-statement">
create database test;
use test;
create table student(id int(4) not null primary key auto_increment, name char(20) not null,
sex int(4) not null default 0, degree double(16,2));
insert into student values(0,'xiaoming',0,37.2);
insert into student values(7,'joan',1,36.8);
insert into student values(2,'xiaohua',0,37.1);
insert into student values(3,'lucy',0,36.3);
insert into student values(4,'hanmeimei',1,36.7);
insert into student values(5,'lilei',0,37.5);
insert into student values(6,'marry',1,37.6);
</param>
<param name="execute-type">many</param>
</params>
</action>
2. 执行 sql 语句,选择 test 库
<action reference="mysql">
<command>database.execute</command>
<params>
<param name="sql-statement">
use test;
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 616
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</param>
</params>
</action>
3. 执行 sql 语句,创建存储过程,过程名为 proctest,sql 语句:select * from student where
id>num;存储过程针对于某个具体的库,因此如果没有链接到具体的库,要先选择库(use dbname;)
<action reference="mysql">
<command>database.execute</command>
<params>
<param name="sql-statement">
create procedure proctest(in num int)
begin
select * from student where id>num;
end
</param>
</params>
</action>
1.8.14.6 执行查询 sql 语句
database.query
描述:对关系型数据库执行查询 sql 语句,执行一条 sql 语句,每一条结果为一个元组。
postgresql 数据库的 SQL 语句中只能使用单引号,Oracle 的 SQL 语句结尾不能加分号。
输入:
name type help
reference string 数据库的连接会话
参数:
name type is_required default range help
sql-statement string True - - sql 语句,参
数使用%s 代
表字符
串,%d 代表
数字
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 617
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
params string - - - sql 语句中需
要参数,列表
形式(et:
["xiaohua",
10])
fetch-type list - all all|many|one 处理查询结果
的方式,分别
表示获取返回
的所有结果以
及指定获取条
数,参数为 one
时,获取第一
条结果,参数
为 manay 时 ,
用 fetch-
numbers 来指
定获取结果的
条数,参数为
all 时获取全
部结果,默认
取值 all
fetch-numbers number True - - 当 fetch-type
取值为 many
时,指定获取
返回结果的条
数
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string databasequery_ret - 执行查询 sql 语
句返回结果
return_type list - string|list 返回值的类型
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 618
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
示例:
1. 对 MySQL 数据库执行查询 sql 语句,参数为["lilei"],返回查询到的结果的第一条数据
<action reference="mysql" return="mysql_query">
<command>database.query</command>
<params>
<param name="sql-statement">select * from student where name="%s";</param>
<param name="params">[ "lilei"]</param>
<param name="fetch-type">one</param>
</params>
</action>
2. 对 MySQL 数据库执行查询 sql 语句,参数为["lilei"],返回查询到的结果的 6 条数据
<action reference="mysql" return="mysql_query">
<command>database.query</command>
<params>
<param name="sql-statement">select * from student where name="%s";</param>
<param name="params">[ "lilei"]</param>
<param name="fetch-type">many</param>
<param name="fetch-numbers">6</param>
</params>
</action>
1.8.14.7 断开数据库
disconnectdb
描述:断开数据库,不建议使用,请使用 database.close
输入:
name type help
reference string 数据库的连接会话
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 619
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 断开数据库的连接
<action>
<command>disconnectdb</command>
<delay>1000</delay>
</action>
1.8.14.8 删除 mongodb 数据库中匹配到的所有数据
mongodb.delete
描述:删除 mongodb 数据库中匹配到的所有数据。当前指令将删除生产环境数据,请谨慎使用。
输入:
name type help
reference string 数据库的连接会话
参数:
name type is_required default range help
collection string True - - 选择要操作的
数据库集合
filter string True - - 删除数据的筛
选条件
timeout number - - - 执行失败后的
重试超时时间
(ms)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 620
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 删除 score 集合中 name 为 xiaoming 的数据
<action reference="mongdb">
<command>mongodb.delete</command>
<params>
<param name="collection">score</param>
<param name="filter">{"name": "xiaoming"}</param>
</params>
</action>
2. 删除 score 集合中 score<60 的数据
<action reference="mongdb">
<command>mongodb.delete</command>
<params>
<param name="collection">score</param>
<param name="filter">{"score": {"$lt":60}}</param>
</params>
</action>
1.8.14.9 查询 mongodb 数据库的数据
mongodb.find
描述:查询 mongodb 数据库的数据,返回 json 格式的数据
输入:
name type help
reference string 数据库的连接会话
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 621
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
collection string True - - 选择要操作的
数据库集合
filter string True - - 数据的筛选条
件
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string mongodbfind_ret - 查询 mongodb 数
据库的返回数据
return_type fixed_string object - 返回值的类型
示例:
1. 查找 score 集合中 age>10 的数据
<action reference="mongdb" return="data">
<command>mongodb.find</command>
<params>
<param name="collection">score</param>
<param name="filter">{"age": {"$gt":10}}</param>
</params>
</action>
1.8.14.10 向 mongodb 数据库插入数据
mongodb.insert
描述:向 mongodb 数据库插入数据。当前指令将添加数据到生产环境中,请谨慎使用。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 622
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输入:
name type help
reference string 数据库的连接会话
参数:
name type is_required default range help
collection string True - - 选择要操作的
数据库集合
document string True - - 要插入的 josn
格式数据
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 向数据库的 score 集合插入一条数据{"id":1, "name":"xiaoyun"}
<action reference="mongdb">
<command>mongodb.insert</command>
<params>
<param name="collection">score</param>
<param name="document">{"id":1, "name":"xiaoyun"}</param>
</params>
</action>
2. 向数据库的 score 集合插入 2 条数据[{"id":2, "name":"xiaoyun"},{"id":3, "name":"xiaohua"}]
<action reference="mongdb">
<command>mongodb.insert</command>
<params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 623
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="collection">score</param>
<param name="document">[{"id":2, "name":"xiaoyun"},{"id":3,
"name":"xiaohua"}]</param>
</params>
</action>
1.8.14.11 修改 mongodb 数据库匹配到的数据
mongodb.update
描述:修改 mongodb 数据库匹配到的数据。当前指令将修改生产环境数据,请谨慎使用。
输入:
name type help
reference string 数据库的连接会话
参数:
name type is_required default range help
collection string True - - 选择要操作的
数据库集合
filter string True - - 更新数据的筛
选条件
update string True - - 要更新的数据
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 将 score 集合中 age<10 的数据的 score 改为 90
<action reference="mongdb">
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 624
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<command>mongodb.update</command>
<params>
<param name="collection">score</param>
<param name="filter">{"age":{"$lt":10}}</param>
<param name="update">{"score”: 90}</param>
</params>
</action>
1.8.15 图像识别
1.8.15.1 OCR 识别身份证图片
getIdCardInfoOcr
描述:OCR 识别身份证图片,返回图片中的数据信息: 支持对二代居民身份证正反面所有 9 个
字段进行结构化识别,包括姓名、性别、民族、 出生日期、住址、身份证号、签发机关、有效期
限起始日期、有效期限结束日期, 目前暂时不支持少数民族身份证识别; 输入的身份证图片需保
持完整, 清晰以便提高识别准确率; 获取 user-id 和 user-key 方法: 在 https://ilearningx.huawei.com
注册后搜 AntRobot, 查看《Huawei AntRobot RPA 开发者在线课程(高级)》第十章的 10.1 单
元
输入:无
参数:
name type is_required default range help
image file True - - 图片路径: 支
持
png,jpg,jpeg,b
mp 四种格式;
base64 编码
后大小不超过
4M 且图像每
个字符的像素
大小在 5 到
5120 之间;
不支持修改过
类型的文
件,png,jpg,jpe
g 可以相互转
换; 支持对二
代居民身份证
正反面所有 9
个字段进行结
构化识别,包
括姓名、性
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 625
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
别、民族、
出生日期、住
址、身份证
号、签发机
关、有效期限
起始日期、有
效期限结束日
期;
user-id string True - - Robot 工具访
问 OCR 接口
的 ID
user-key password True - - Robot 工具访
问 OCR 接口
的 Token
save-dir-name dir - - - 保存图片识别
结果的文件目
录
save-file-name string - - - 保存图片识别
结果的文件名
字, 只适配
csv 文件
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string getIdCardInfoOcr - 图片识别数据
_ret
return_type list - string 返回值的类型
示例:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 626
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1. 使用 OCR 身份证识别 id_card.jpg 图片内容, 将返回的数据赋值给变量 getIdCardInfoOcr_ret
<action xmlId="49b4dc6a-e8ed-4a6f-9b81-86aefd956866" driver_type="common" desc="OCR 识
别身份证" return="getIdCardInfoOcr_ret" fail_on_error="True">
<command>getIdCardInfo</command>
<params>
<param name="image">@{WORK_DIR}\\id_card.jpg</param>
<param name="user-id">*******</param>
<param name="user-key">******</param>
</params>
</action>
1.8.15.2 OCR 识别结婚证
getMarriageCertificateInfoOcr
描述:OCR 在线识别结婚证图片,返回图片中的数据信息:支持对结婚证的关键字段进行结构化
识别, 包括持证人、登记日期、结婚证字号,结婚证识别支持中华人民共和国结婚证; 输入的
结婚证图片需保持完整, 清晰以便提高识别准确率; 获取 user-id 和 user-key 方法: 在
https://ilearningx.huawei.com 注册后搜 AntRobot,查看《Huawei AntRobot RPA 开发者在线课程
(高级)》第十章的 10.1 单元
输入:无
参数:
name type is_required default range help
image file True - - 图片路径:
支持
png,jpg,jpeg,b
mp 四种格式;
base64 编码
后大小不超过
4M 并且图像
每个字符的像
素大小在 5 到
5120 之间;不
支持修改过类
型的文
件,png,jpg,jpe
g 可以相互转
换
user-id string True - - Robot 工具访
问 OCR 接口
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 627
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
的 ID
user-key password True - - Robot 工具访
问 OCR 接口
的 Token
save-dir-name dir - - - 保存图片识别
结果的文件目
录
save-file-name string - - - 保存图片识别
结果的文件名
字, 只适配
csv 文件
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string getMarriageCertif - 图片识别数据
icateInfoOcr_ret
return_type list - string 返回值的类型
示例:
1. 使用 OCR 结婚证识别 married_pic.PNG 图片内容, 将返回的数据赋值给变量
getMarriageCertificateInfoOcr_ret
<action xmlId="49b4dc6a-e8ed-4a6f-9b81-86aefd956866" driver_type="common" desc="OCR 增
值税发票识别" return="getMarriageCertificateInfoOcr_ret" fail_on_error="True">
<command>getVatInfo</command>
<params>
<param name="image">@{WORK_DIR}\\married_pic.PNG</param>
<param name="user-id">*****</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 628
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="user-key">******</param>
</params>
</action>
1.8.15.3 OCR 识别表格图片
getTableInfoOcr
描述:OCR 在线识别表格, 返回图片中的数据信息: 支持识别表格线齐全的常规表格的单元格
内容(当前表格只支持横竖线明显的完整表格,即文档中插入表格场景,不支持表格线缺失、弯
曲等场景,不支持 excel 表格,不支持表格嵌套), 结构化输出每个单元格的文字内容; 获取 user-
id 和 user-key 方法: 在 https://ilearningx.huawei.com 注册后搜 AntRobot,查看《Huawei AntRobot
RPA 开发者在线课程(高级)》第十章的 10.1 单元
输入:无
参数:
name type is_required default range help
image file True - - 图片路径:
支持
png,jpg,jpeg,b
mp 四种格式;
识别语言为中
文和英文;
base64 编码
后大小不超过
4M 并且 图
像每个字符的
像素大小在 5
到 5120 之间;
不支持修改过
类型的文
件,png,jpg,jpe
g 可以相互转
换
user-id string True - - Robot 工具访
问 OCR 接口
的 ID
user-key password True - - Robot 工具访
问 OCR 接口
的 Token
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 629
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
save-dir-name dir - - - 保存图片识别
结果的文件目
录
save-file-name string - - - 保存图片识别
结果的文件名
字, 只适配
xlsx 和 csv 两
种文件格式
confidence list - - false|true 是否返回识别
结果中每一行
的置信度, 默
认不返回
detect- list - - false|true 是否自动检测
direction 文字方向, 默
认不检测
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string getTableInfoOcr_ - 图片识别数据
ret
return_type list - string 返回值的类型
示例:
1. 使用 OCR 表格识别 table.PNG 图片内容, 将返回的数据赋值给变量 getTableInfoOcr_ret, 并且
识别的数据写入 test.csv 文件
<action xmlId="49b4dc6a-e8ed-4a6f-9b81-86aefd956866" driver_type="common" desc="OCR 识
别表格图片" return="getTableInfoOcr_ret" fail_on_error="True">
<command>getTableInfo</command>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 630
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<params>
<param name="image">@{WORK_DIR}\\table.PNG</param>
<param name="confidence">true</param>
<param name="locale">Auto</param>
<param name="detect-direction">true</param>
<param name="save-file-type">csv</param>
<param name="save-file-
path">D:\Studio_project\getpicinfo_online_table\test1.csv</param>
<param name="user-id">******</param>
<param name="user-key">******</param>
</params>
</action>
1.8.15.4 OCR 识别火车票
getTrainTicketInfoOcr
描述:OCR 在线识别火车票图片,返回图片中的数据信息:只支持对 2015 年之后的蓝色火车票
的关键字段进行结构化识别, 包括车票号码、始发站、目的站、车次、日期、票价、席别、姓名、
座位号、身份证号、 售站、序列号、时间等; 输入的火车票图片需保持完整, 清晰以便提高识
别准确率; 获取 user-id 和 user-key 方法: 在 https://ilearningx.huawei.com 注册后搜 AntRobot,查
看《Huawei AntRobot RPA 开发者在线课程(高级)》第十章的 10.1 单元
输入:无
参数:
name type is_required default range help
image file True - - 图片路径:
支持
png,jpg,jpeg,b
mp 四种格式;
base64 编码
后大小不超过
4M 且图像每
个字符的像素
大小在 5 到
5120 之间;
不支持修改过
类型的文
件,png,jpg,jpe
g 可以相互转
换
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 631
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
user-id string True - - Robot 工具访
问 OCR 接口
的 ID
user-key password True - - Robot 工具访
问 OCR 接口
的 Token
save-dir-name dir - - - 保存图片识别
结果的文件目
录
save-file-name string - - - 保存图片识别
结果的文件名
字, 只适配
csv 文件
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string getTrainTicketInf - 图片识别数据
oOcr_ret
return_type list - string 返回值的类型
示例:
1. 使用 OCR 火车票识别 gaotie.jpg 图片内容, 将返回的数据赋值给变量 getTrainTicketInfoOcr_ret
<action xmlId="49b4dc6a-e8ed-4a6f-9b81-86aefd956866" driver_type="common" desc="OCR 识
别火车票" return="getTrainTicketInfoOcr_ret" fail_on_error="True">
<command>getTrainTicketInfo</command>
<params>
<param name="image">@{WORK_DIR}\\gaotie.jpg</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 632
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="user-id">******</param>
<param name="user-key">*******</param>
</params>
</action>
1.8.15.5 OCR 识别增值税发票
getVatInfoOcr
描述:OCR 在线识别增值税发票,返回图片中的数据信息:支持对增值税普票、专票、电子发票
的所有关键 字段进行结构化识别,包括发票基本信息、销售方及购买方信息、商品信息、价税
信息等,增值税 发票识别支持增值税普票、专票、电子发票; 输入的发票图片需保持完整, 清
晰以便提高识别准确率; 获取 user-id 和 user-key 方法: 在 https://ilearningx.huawei.com 注册后搜
AntRobot,查看《Huawei AntRobot RPA 开发者在线课程(高级)》第十章的 10.1 单元
输入:无
参数:
name type is_required default range help
image file True - - 图片路径:
支持
png,jpg,jpeg,b
mp 四种格式;
base64 编码
后大小不超过
4M 且图像每
个字符的像素
大小在 5 到
5120 之间;
不支持修改过
类型的文
件,png,jpg,jpe
g 可以相互转
换
user-id string True - - Robot 工具访
问 OCR 接口
的 ID
user-key password True - - Robot 工具访
问 OCR 接口
的 Token
invoice-type list True normal normal|roll 增值税发票类
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 633
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
型
save-dir-name dir - - - 保存图片识别
结果的文件目
录
save-file-name string - - - 保存图片识别
结果的文件名
字, 只适配
csv 文件
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string getVatInfoOcr_ret - 图片识别数据
return_type list - string 返回值的类型
示例:
1. 使用 OCR 增值税发票识别 VAT.jpg 图片内容,将返回的数据赋值给变量 getVatInfoOcr_ret
<action xmlId="49b4dc6a-e8ed-4a6f-9b81-86aefd956866" driver_type="common" desc="OCR 增
值税发票识别" return="getVatInfoOcr_ret" fail_on_error="True">
<command>getVatInfo</command>
<params>
<param name="image">@{WORK_DIR}\\VAT.jpg</param>
<param name="invoice-type">normal</param>
<param name="user-id">*****</param>
<param name="user-key">******</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 634
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.15.6 离线识别图片内容
getpicinfo
描述:OCR 离线识别图片,返回图片中的数据信息:
1.目前 OCR 识别图片有在线和离线两种,在没有网络的情况使用离线识别,相对在线识别而言,
离线识别速度相对较慢,准确率较低(温馨提示:基于现在的数据模型,无法保证图片识别结果
100%准确);
2.使用场景:主要识别网页和应用 app 的按钮截图;
3.使用离线 OCR 控件需要安装 OCR 离线组件包, 可以发送邮件到 [email protected] 申请
试用, 邮件主题:xx 公司 xx 人联系方式(电话)申请试用 OCR 离线软件包。获取组件包后解压至'
安装目录\Robot\cfg\ocr_model\'
输入:无
参数:
name type is_required default range help
image file True - - 图片路径:
支持
png,jpg,jpeg,b
mp 四种格式;
识别语言为中
文和英文;
base64 编码
后大小不超过
4M 并且 图
像各边的像素
大小在 5 到
5120 之间;不
支持修改过类
型的文
件,png,jpg,jpe
g 可以相互转
换
multi-line list - True True|False 图片是否含有
多行数据:
True:表示图
片含有多行数
据;
False:表示
图片只有单行
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 635
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
数据;
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string getpicinfo_ret - 图片识别数据
return_type list - string 返回值的类型
示例:
1. 使用离线 OCR 功能识别 test.png 图片,将返回图片数据赋值给变量 ocr_data
<action desc="OCR" return="ocr_data">
<command>getpicinfo</command>
<params>
<param name="image">@{WORK_DIR}\test.png</param>
<param name="multi-line">True</param>
<delay>1000</delay>
</params>
</action>
1.8.15.7 在线识别图片内容
getpicinfo_online
描述:OCR 在线识别图片,返回图片中的数据信息:
1.目前 OCR 识别图片有在线和离线两种,在有网络的情况优先选择在线识别,相对离线识别而
言,在线识别速度更快,准确率更高(温馨提示:基于现在的数据模型,无法保证图片识别结果
100%准确);
2.使用场景:主要识别网页和应用 app 的按钮截图;
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 636
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
3.OCR 在线识别目前有 noah-scene 和 noah-doc 两个数据模型,可供选择使用,详情可见参数
ocr-mode 的帮助;
4. 获取应用 user-id 和 user-key 方法: 在 https://ilearningx.huawei.com 注册后搜 AntRobot,查看
《Huawei AntRobot RPA 开发者在线课程(高级)》第十章的 10.1 单元
输入:无
参数:
name type is_required default range help
image file True - - 图片路径:
支持
png,jpg,jpeg,b
mp 四种格式;
识别语言为中
文和英文;
base64 编码
后大小不超过
4M 并且 图
像各边的像素
大小在 5 到
5120 之间;不
支持修改过类
型的文
件,png,jpg,jpe
g 可以相互转
换
ocr-online-api string - https://apigw.h - OCR 云端的
uawei.com/api API 接口
/v2/ocr/genera
l-text
user-id string True - - Robot 工具访
问 OCR 接口
的 ID
user-key password True - - Robot 工具访
问 OCR 接口
的 Token
ocr-mode list - noah-scene noah- OCR 云端接
scene|noah- 口识别图片所
doc 需的数据模
型,目前有两
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 637
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
种模型(注意
只针对图片识
别):
noah-scene:
场景模式,针
对自然场景,
比如拍的广告
牌;
noah-doc:文
档模式,针对
文档转换的图
片进行识别,
比如 word 文
档转成的图
片,PDF 文
档转的图片,
还有截图图
片;
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string getpicinfo_online - 图片识别数据
_ret
return_type list - string 返回值的类型
示例:
1. 使用 OCR 在线接口识别 test.png 图片内容,运用 noah-scene 数据模型,将返回的数据赋值给变
量 ocr_data
<action desc="OCR" return="ocr_data">
<command>getpicinfo_online</command>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 638
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<params>
<param name="image">@{WORK_DIR}\test.png</param>
<param name="ocr-online-api">https://apigw.huawei.com/api/v2/ocr/general-
text</param>
<param name="user-id">*********</param>
<param name="user-key">**********</param>
<param name="ocr-mode">noah-scene</param>
<param name="delay">500</param>
</params>
</action>
1.8.15.8 对二维码进行解析并返回数据
qrcodedata
描述:对二维码进行解析并返回数据。
1:该命令识别图片中的二维码,并返回数据。
2:图片中若有多个二维码,只返回一个。
入参:
1:image-path:file 类型、必填、二维码图片位置、现阶段只支持 jpg 以及 png 格式图片。
出参:
qrcode_data_ret:string 类型、解析二维码返回的数据。
输入:无
参数:
name type is_required default range help
image-path file True - - 二维码的位置
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 639
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type default range help
return string qrcode_data_ret - 解析二维码返回
的数据
示例:
1. 选择需要解析的二维码,返回数据 data_ret
<action>
<command>qrcodedata</command>
<params>
<param name="image-path">D:\case\test.png</param>
</params>
</action>
1.8.15.9 二维码传输方案接收数据
receiveQrData
描述:二维码传输方案接收数据。
1:该命令仅用于特定场景,传输的另一端使用 sendQrData 命令配合使用。用于传输文件或者
数据量在单张二维码不能传输的情况下使用。
2:该命令涉及摄像头拍摄,摄像头画面并未展示,请将摄像头对准接收端屏幕调整。
入参:
1:index、int 类型、必填、摄像头编号(0 表示自带摄像头,1,2……表示 USB 外接摄像头)。
2:file_name、string 类型、非必填、接收到的为文件时,新文件名(默认为“new”)。
3:img_size、int 类型、展示时图片的大小设置,长宽一致;若设置的数值大于本机电脑分辨率
时,会自适应屏幕。
4:position、list 类型、展示图片的位置左上、左下、右上、右下、中,默认是中。
出参:
receive_qrdata_ret:string 类型、接收到的数据或者文件。(如果接收到的为文件,返回值为文
件保存的路径, 若为数据,返回值为接收到的数据)
输入:无
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 640
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
index int - - - 摄像头编号
(0 表示自带
摄像头,
1,2……表示
USB 外接摄
像头)
file_name string - new - 接收到的为文
件时,新文件
名(默认为
“new”)
img_size int - 300 - 展示时图片的
大小设置,长
宽一致;若设
置的数值大于
本机电脑分辨
率时,会自适
应屏幕
position list - center upper 展示图片的位
left|lower 置左上、左
left|upper 下、右上、右
right|lower 下、中,默认
right|center
是中
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string receive_qrdata_re - 接收到的数据或
t 者文件(如果接
收到的为文件,
返回值为文件保
存的路径, 若
为数据,返回值
为接收到的数
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 641
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
据)
示例:
1. 二维码传输方案接收数据
<command>receiveqrdata</command>
<params>
<param name="index">0</param>
<param name="img_size">300</param>
<param name="position">center</param>
<param name="file_name">new</param>
</params>
1.8.15.10 二维码传输方案发送数据
sendQrData
描述:二维码传输方案发送数据。
1:该命令仅用于特定场景,传输的另一端使用 receiveQrData 命令配合使用。用于传输文件或
者数据量在单张二维码不能传输的情况下使用。
2:该命令涉及摄像头拍摄,摄像头画面并未展示,请将摄像头对准接收端屏幕调整。
入参:
1: kind、int 类型、必填、二选一(data|file)、传输的数据类型(字符串类型或者文件类型)。
2:qrcode_size、int 类型、非必填、大于 64 且小于 512、每张二维码中存储的数据。
3:image_size、int 类型、非必填、大于 300 且小于 1200、展示时图片的大小设置,长宽一致;
若设置的数值大于本机电脑分辨率时,会自适应屏幕。
4:position、list 类型、展示图片的位置左上、左下、右上、右下、中,默认是中。
5:data、string 类型、kind=“data”时必填、需要传输的数据字符串。
6:file、file 类型、kind=“file”时必填、需要传输的文件的绝对路径。
7:index、int 类型、必填、摄像头编号(0 表示自带摄像头,1,2……表示 USB 外接摄像头)。
出参: 该命令无返回值。
输入:无
参数:
name type is_required default range help
kind list True data file|data 传输的数据类
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 642
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
型(字符串类
型或者文件类
型)
qrcode_size int - 128 - 每张二维码中
存储的数据
image_size int - 300 - 展示时图片的
大小设置,长
宽一致;若设
置的数值大于
本机电脑分辨
率时,会自适
应屏幕
position list True center upper 展示图片的位
left|lower 置左上、左
left|upper 下、右上、右
right|lower 下、中,默认
right|center
是中
data string True - - 需要传输的数
据字符串
file file True - - 文件的绝对路
径
index int - - - 摄像头编号
(0 表示自带
摄像头,
1,2……表示
USB 外接摄
像头)
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 643
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1. 二维码传输方案发送数据
<command>sendqrdata</command>
<params>
<param name="kind">data</param>
<param name="qrcode_size">128</param>
<param name="image_size">300</param>
<param name="position">upper right</param>
<param name="index">0</param>
<param name="data">Q 传方案发送者</param>
</params>
1.8.15.11 拍照
takepicture
描述:通过摄像头拍照(注:摄像头控件会将摄像头当前内容保存为图片,存在本地,请自行
确保隐私信息安全。)
入参:
1:index、int 类型、非必填、摄像头编号(0 表示自带摄像头,1,2……表示 USB 外接摄像头。)
默认 0。
2:save-to、new_file 类型、非必填、如果自定义了图片的存放路径及图片名,路径目录需已存
在;图片默认路径在工程目录 Pic 文件夹。现阶段只支持保存为 jpg 以及 png 格式图片。
出参:
picture_ret:图片的保存路径
输入:无
参数:
name type is_required default range help
index int - - - 摄像头编号
(0 表示自带
摄像头,
1,2……表示
USB 外接摄
像头)
save-to new_file - - - 可选,如果自
定义了图片的
存放路径及图
片名,路径目
录需已存在;
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 644
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
图片默认路径
在工程目录
Pic 文件夹。
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string picture_ret - 图片的保存路径
return_type list - string 返回值的类型
示例:
1. 用摄像头拍摄照片并保存
<action>
<command>takepictures</command>
<params>
<param name="index">0</param>
<param name="save-to">@{WORK_DIR}\Pic</param>
<param name="timeout">3000</param>
<param name="delay">0</param>
</params>
</action>
1.8.15.12 数据生成二维码
toqrcode
描述:数据生成二维码。(注:只是将数据转换为二维码,不具备加密效果,若是二维码丢失,
将造成相应信息泄露,请勿用于隐私数据传输。)
入参:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 645
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1:data、string 类型、必填、需要转换成二维码的字符串、最大可转换 512 个字符。
2:is-show、list 类型、非必填、true|false 二选一,默认 false。
3:position、list 类型、非必填、展示图片的位置。可选 upper left|lower left|upper right|lower
right|center 其中一个,默认 center,is-show=='true'时可选。
4:image-size、number 类型、非必填、展示时图片的大小设置,长宽一致;若设置的数值大于本
机电脑分辨率时,会自适应屏幕,最小可填 300, 最大可填 1200。
5:save-to、new_file 类型、非必填、可选,如果自定义了图片的存放路径,要配置此参数,若
填写相对路径,则保存在工程目录下;图片默认路径在工程目录 Pic 文件夹。
出参:
image_path_ret:二维码图片保存的路径
输入:无
参数:
name type is_required default range help
data string True - - 需要转换的数
据
is-show list - - true|false 是否展示图
片,默认
false
position list - center upper 展示图片的位
left|lower 置左上、左
left|upper 下、右上、右
right|lower 下、中,默认
right|center
是中
image-size number - 300 - 展示时图片的
大小设置,长
宽一致;若设
置的数值大于
本机电脑分辨
率时,会自适
应屏幕
save-to new_file - - - 可选,如果自
定义了图片的
存放路径,要
配置此参数,
若填写相对路
径,则保存在
工程目录下;
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 646
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
图片默认路径
在工程目录
Pic 文件夹。
timeout number - - - 本 action 的执
行的超时时间
(ms),如果展
示图片,包含
图片展示时
间,默认展示
3000ms
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string image_path_ret - 二维码图片保存
的路径
示例:
1. 输入需要转换的数据 data,保存的路径 save-to,是否展示 is_show,展示的位置 position
<action>
<command>toqrcode</command>
<params>
<param name="is-show">true</param>
<param name="image-size">300</param>
<param name="position">center</param>
<param name="data">I have a dream today</param>
<param name="save-to">D:\case\test.png</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 647
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.16 Jab 应用
1.8.16.1 左键单击
Button.click
描述:左键单击
输入:
name type help
reference string 主窗体(frame)
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - index|name 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 单击文本为 Yes 的控件
<action driver_type="jab" reference="mainframe">
<command>button.click</command>
<params>
<param name="by">name</param>
<param name="target">Yes</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 648
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.16.2 等待点击
Button.waitclick
描述:等待按钮出现并点击
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - index|name 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms);不填默
认 6s
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 等待点击文本为 Yes 的控件
<action driver_type="jab" reference="mainframe">
<command>button.waitclick</command>
<params>
<param name="by">name</param>
<param name="target">Yes</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 649
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.16.3 等待按钮消失
Button.waitdisappear
描述:等待按钮消失
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - index|name 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms);不填默
认 6s
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 等待文本为 Yes 的按钮消失
<action driver_type="jab" reference="mainframe">
<command>button.waitdisappear</command>
<params>
<param name="by">name</param>
<param name="target">Yes</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 650
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.16.4 选择复选框
CheckBox.click
描述:选择复选框
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - index|name 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 index=14 的复选框
<action reference="mainframe" driver_type="jab">
<command>checkbox.click</command>
<params>
<param name="target">14</param>
<param name="by">index</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 651
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.16.5 取选中框的值
CheckBox.gettext
描述:取选中框的值
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - index|name 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string CheckBoxgettext - 选中框的值
_ret
return_type list - string 返回值的类型
示例:
1. 获取 index=14 的复选框选中的值
<action return="checkbox_text" reference="mainframe" driver_type="jab">
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 652
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<command>checkbox.gettext</command>
<params>
<param name="target">14</param>
<param name="by">index</param>
</params>
</action>
1.8.16.6 点击下拉列表
ComboBox.click
描述:点击下拉列表
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - index|name 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 index=2 的下拉框
<action driver_type="jab" return="combo_text" reference="mainframe">
<command>combobox.click</command>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 653
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<params>
<param name="by">index</param>
<param name="target">2</param>
</params>
</action>
1.8.16.7 取下拉列表值
ComboBox.gettext
描述:取下拉列表值
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - index|name 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string ComboBoxgettext - 下拉列表值
_ret
return_type list - string 返回值的类型
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 654
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
示例:
1. 获取 index=2 的下拉框中选中的值
<action driver_type="jab" return="combo_text" reference="mainframe">
<command>combobox.gettext</command>
<params>
<param name="by">index</param>
<param name="target">2</param>
</params>
</action>
1.8.16.8 选择下拉列表
ComboBox.select
描述:选择下拉列表
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - index|name 获取控件的方
式
item-by list True - index|name 列表选项的过
滤方式
item-value string True - - 列表选项的过
滤方式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 655
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 选定 index=2 的下拉框中 index=18 的 item
<action reference="mainframe" driver_type="jab">
<command>combobox.select</command>
<params>
<param name="target">2</param>
<param name="by">index</param>
<param name="item-by">index</param>
<param name="item-value">18</param>
</params>
</action>
1.8.16.9 居中弹窗
Dialog.center
描述:居中弹窗
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|title 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 656
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 将 index=0 的窗口居中
<action driver_type="jab">
<command>dialog.center</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
</params>
</action>
1.8.16.10 关闭对话框
Dialog.close
描述:关闭对话框
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|title 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 657
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 关闭 index=0 的窗口
<action driver_type="jab">
<command>dialog.close</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
</params>
</action>
1.8.16.11 等待窗体消失
Dialog.waitdisappear
描述:等待窗体消失
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|title 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms);不填默
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 658
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
认 6s
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 等待 index=0 的窗口消失
<action driver_type="jab">
<command>dialog.waitdisappear</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="timeout">5000</param>
<param name="delay">500</param>
</params>
</action>
1.8.16.12 等待窗体出现
Dialog.waitshow
描述:等待窗体出现
输入:无
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|title 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms);不填默
认 6s
delay number - - - 等待多少 ms
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 659
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
再执行当前
action
输出:无
示例:
1. 等待标题为 Create project 的窗口出现
<action driver_type="jab">
<command>dialog.waitshow</command>
<params>
<param name="timeout">5000</param>
<param name="delay">500</param>
<param name="target">Create project</param>
<param name="by">name</param>
</params>
</action>
1.8.16.13 等待主容器加载
Frame.waitshow
描述:等待主容器加载
输入:无
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|title 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms);不填默
认 6s
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 660
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:
name type default range help
return string mainframe_ret - 主窗体
return_type fixed_string object - 返回值的类型
示例:
1. 等待 name 属性值等于 SwingSet3 的主容器加载完成
<action return="mainframe" driver_type="jab">
<command>frame.waitshow</command>
<params>
<param name="target">SwingSet3</param>
<param name="by">name</param>
<param name="timeout">10000</param>
</params>
</action>
1.8.16.14 点击标签
Label.click
描述:点击标签
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 661
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 index=8 的标签
<action reference="mainframe" driver_type="jab">
<command>label.click</command>
<params>
<param name="target">8</param>
<param name="by">index</param>
<param name="timeout">5000</param>
</params>
</action>
1.8.16.15 获取 label 的值
Label.gettext
描述:获取 label 的值
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 662
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string Labelgettext_ret - label 的值
return_type list - string 返回值的类型
示例:
1. 获取 index=8 的标签的值
<action reference="mainframe" return="resultStr" driver_type="jab">
<command>Label.gettext</command>
<params>
<param name="target">8</param>
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.16 等待标签匹配
Label.waitequals
描述:等待标签匹配达到匹配值
输入:
name type help
reference string 主窗体
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 663
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms);不填默
认 6s
value string True - - 需要匹配的目
标值
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 等待 index=8 的标签匹配值达到 Friday
<action reference="mainframe" driver_type="jab">
<command>label.waitequals</command>
<params>
<param name="target">8</param>
<param name="by">index</param>
<param name="value">Friday</param>
<param name="timeout">5000</param>
</params>
</action>
1.8.16.17 等待标签出现
Label.waitshow
描述:等待标签出现
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 664
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms);不填默
认 6s
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 等待 index=8 的标签出现
<action reference="mainframe" driver_type="jab">
<command>label.waitshow</command>
<params>
<param name="target">8</param>
<param name="by">index</param>
<param name="timeout">5000</param>
</params>
</action>
1.8.16.18 点击列表选项
List.click
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 665
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
描述:点击列表选项
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
item-by list True - name|index 定位列表选项
的方式
item-value string True - - 列表选项的方
式的值
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 根据 index 等于 2 定位列表控件,点击控件中 name=NetSoft 的选项
<action reference="mainframe" driver_type="jab">
<command>List.click</command>
<params>
<param name="target">2</param>
<param name="by">index</param>
<param name="item-by">name</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 666
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="item-value">Netsoft</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.19 获取选中列表项
List.gettext
描述:获取选中列表项
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string Listgettext_ret - 选中列表项的值
return_type list - string 返回值的类型
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 667
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
示例:
1. 根据 index 等于 2 定位列表控件,获取其选定的值
<action reference="mainframe" return="retStr" return_type="string" driver_type="jab">
<command>List.gettext</command>
<params>
<param name="target">2</param>
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.20 点击菜单
Menu.click
描述:点击菜单
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 668
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 点击文本等于 File 的菜单
<action reference="mainframe" driver_type="jab">
<command>Menu.click</command>
<params>
<param name="target">File</param>
<param name="by">name</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.21 左击菜单控件
MenuItem.click
描述:左击菜单控件
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 669
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
action
输出:无
示例:
1. 左键点击 index=-1,0,1,2,0,0 的菜单
<action reference="mainframe" driver_type="jab">
<command>MenuItem.click</command>
<params>
<param name="target">-1,0,1,2,0,0</param>
<param name="by">index</param>
</params>
</action>
1.8.16.22 左击 Panel 类型的窗口
Panel.click
描述:左击 Panel 类型的窗口
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 670
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
action
输出:无
示例:
1. 左键点击 index=-1,0,1,2,0,0,1,2,1,1,0,0 的 panel 窗口
<action reference="mainframe" driver_type="jab">
<command>panel.click</command>
<params>
<param name="target">-1,0,1,2,0,0,1,2,1,1,0,0</param>
<param name="by">index</param>
</params>
</action>
1.8.16.23 等待进度条加载
ProgressBar.wait_until_progressbar_value_is
描述:等待进度条加载或超过目标值
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number True - - 本 action 的执
行的超时时间
(ms);不填默
认 6s
当;timeout 设
置小了而进度
条没有达到目
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 671
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
标值从而导致
报错,需要将
timeout 设置
大点
delay number - - - 等待多少 ms
再执行当前
action
string string True - - 等待进度条加
载到目标值
(具体数值 or
进度条百分
比)
输出:无
示例:
1. 等待 index=1 的进度条加载到 100%
<action reference="mainframe" driver_type="jab">
<command>ProgressBar.wait_until_progressbar_value_is</command>
<params>
<param name="target">1</param>
<param name="by">index</param>
<param name="string">100</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.24 点击单选按钮
RadioButton.click
描述:点击单选按钮
输入:
name type help
reference string 主窗体
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 672
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 index 等于 0 的单选按钮
<action reference="mainframe" driver_type="jab">
<command>RadioButton.click</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.25 拖动滚动条
ScrollBar.scrollto
描述:拖动滚动条
输入:
name type help
reference string 主窗体
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 673
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
value string True - - 拖动的像素或
者百分比
输出:无
示例:
1. 拖动 index 等于 0 的滚动条到最底端
<action reference="mainframe" driver_type="jab">
<command>Scrollbar.scrollTo</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="value">1.0</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.26 点击面板
ScrollPane.click
描述:点击面板
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 674
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 index 等于 0 的面板
<action reference="mainframe" driver_type="jab">
<command>ScrollPane.click</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.27 右击面板
ScrollPane.rightclick
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 675
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
描述:右击面板
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 右击 index 等于 0 的面板
<action reference="mainframe" driver_type="jab">
<command>ScrollPane.rightclick</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 676
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.16.28 拖动滑块
Slider.type
描述:拖动滑块
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
value string True - - 滑块拖拽的距
离
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 拖动 index 等于 1 的滑块至 50 的位置
<action reference="mainframe" driver_type="jab">
<command>Slider.type</command>
<params>
<param name="target">1</param>
<param name="by">index</param>
<param name="value">50</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 677
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.29 拖动窗格分割线
SplitPane.type
描述:拖动窗格分割线
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
value number True - - 拖拽的像素比
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 拖动 index=1 的窗格分割线
<action reference="mainframe" driver_type="jab">
<command>SplitPane.type</command>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 678
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<params>
<param name="target">1</param>
<param name="by">index</param>
<param name="value">0.5</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.30 点击选项卡式窗格
TabbedPane.click
描述:点击选项卡式窗格
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
item-by list True - index|name 窗格中页签的
定位方式
item-value string True - - 页签定位方式
的值
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 679
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:无
示例:
1. 点击 index 等于 0 的表格面板中 index 等于 1 的页签
<action reference="mainframe" driver_type="jab">
<command>TabbedPane.click</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="item-by">index</param>
<param name="item-value">1</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.31 点击单元格
Table.click_cell
描述:点击单元格
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 680
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
cell-pos string True - - 单元格坐标
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 index 等于 0 的控件中坐标为 2,2 的单元格
<action reference="deleteDialog" driver_type="jab">
<command>Table.clickCell</command>
<params>
<param name="target">0</param>
<param name="cell-pos">2,2</param>
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.32 点击表头
Table.click_header
描述:点击表头
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 681
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
col-index number True - - 表头的列号
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 name 属性值等于 deleteDialog 的控件中第 3 列的表头
<action reference="deleteDialog" driver_type="jab">
<command>Table.click_header</command>
<params>
<param name="target">deleteDialog</param>
<param name="by">name</param>
<param name="col-index">2</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.33 双击单元格
Table.doubleclick
描述:双击单元格
输入:
name type help
reference string 主窗体
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 682
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
cell-pos string True - - 单元格坐标
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 双击 name 属性值等于 dataImportTaskTable 的控件中坐标为 2,2 的单元格
<action reference="deleteDialog" driver_type="jab">
<command>Table.doubleclick</command>
<params>
<param name="by">name</param>
<param name="target">dataImportTaskTable</param>
<param name="cell-pos">2,2</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.34 获取目标行号
Table.get_rowno
描述:获取目标行号
输入:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 683
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
cell-value-filter list True - equals|contain 单元格目标值
s 的过滤方式
filter-value string True - - 过滤方式的值
col-index number True - - 列的索引号
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string Tableget_rowno_r - 目标行号
et
return_type list - string 返回值的类型
示例:
1. 获取 name 属性值等于 deletDialog 的控件中第 2 列中等于 2 的行号
<action reference="deleteDialog" return="rownumber" driver_type="jab">
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 684
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<command>Table.get_rowno</command>
<params>
<param name="target">deleteDialog</param>
<param name="by">name</param>
<param name="cell-value-filter">equals</param>
<param name="filter-value">2</param>
<param name="col-index">2</param>
</params>
</action>
1.8.16.35 获取表格总列数
Table.gettablecols
描述:获取表格总列数
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 685
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type default range help
return string Tablegettablecols - 表格总列数
_ret
return_type list - string 返回值的类型
示例:
1. 获取 name 属性值等于 tableName 的控件的列数
<action reference="loginWindow" return="tableRows" driver_type="jab">
<command>Table.gettablecols</command>
<params>
<param name="target">tableName</param>
<param name="by">name</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.36 获取表格总行数
Table.gettablerows
描述:获取表格总行数
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 686
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string Tablegettablerows - 表格总行数
_ret
return_type list - string 返回值的类型
示例:
1. 获取 name 属性值等于 tableName 的控件的行数
<action reference="loginWindow" return="tableRows" driver_type="jab">
<command>Table.gettablerows</command>
<params>
<param name="target">tableName</param>
<param name="by">name</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.37 获取单元格的内容
Table.gettext
描述:获取单元格的内容
输入:
name type help
reference string 主窗体
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 687
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
cell-pos string True - - 单元格坐标
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string Tablegettext_ret - 单元格的内容
return_type list - string 返回值的类型
示例:
1. 获取 index=1 的控件中坐标为 2,2 的单元格的内容
<action reference="mainWindow" return="targetResult" driver_type="jab">
<command>table.gettext</command>
<params>
<param name="target">1</param>
<param name="by">index</param>
<param name="cell-pos">2,2</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 688
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</params>
</action>
1.8.16.38 右击单元格
Table.rightclick
描述:右击单元格
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
cell-pos string True - - 单元格坐标
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 右键单击 name 属性等于 dataImportTaskTable 的控件中坐标为 0,2 的单元格
<action reference="deleteDialog" driver_type="jab">
<command>Table.rightclick</command>
<params>
<param name="target">dataImportTaskTable</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 689
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="by">name</param>
<param name="cell-pos">0,2</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.39 右击表头
Table.rightclick_header
描述:右击表头
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
col-index number True - - 表头的列号
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 右键单击 index 等于 0 的控件的第 2 列的表头
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 690
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<action reference="deleteDialog" driver_type="jab">
<command>Table.rightclick_header</command>
<params>
<param name="by">index</param>
<param name="target">0</param>
<param name="col-index">2</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.40 全选表格
Table.selectall
描述:全选表格
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 691
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
示例:
1. 全选 index 等于 1 的表格控件
<action reference="mainframe" driver_type="jab">
<command>Table.selectall</command>
<params>
<param name="target">1</param>
<param name="by">index</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.41 批量选择行号
Table.selectrows
描述:批量选择行号;table 里面第一列有 checkbox 时,会勾上开始和结束的 checkbox
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
row-start number True - - 行号开始的位
置
row-end number True - - 行号結束的位
置
timeout number - - - 本 action 的执
行的超时时间
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 692
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 选定 index 等于 1 的控件的第 1 行到第 3 行
<action reference="mainframe" driver_type="jab">
<command>Table.selectrows</command>
<params>
<param name="target">1</param>
<param name="by">index</param>
<param name="row-start">0</param>
<param name="row-end">2</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.42 单元格包含匹配值
Table.waitcellcontains
描述:等待单元格是否包含匹配值
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 693
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms);不填默
认 6s
cell-pos string True - - 单元格坐标
cell-value string True - - 匹配目标值
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 判断 name 属性值等于 dataImportTaskTable 的控件中坐标为 2,2 的单元格是否包含 100
<action reference="mainframe" driver_type="jab">
<command>Table.waitcellcontains</command>
<params>
<param name="target">dataImportTaskTable</param>
<param name="by">name</param>
<param name="cell-value">100</param>
<param name="cell-pos">2,2</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.43 等待单元格达到匹配值
Table.waitcellmatch
描述:等待单元格是否达到匹配值
输入:
name type help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 694
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms);不填默
认 6s
cell-value string True - - 单元格目标值
cell-pos string True - - 单元格坐标
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 等待 name 属性值等于 dataImportTaskTable 的控件中坐标等于 2,2 的单元格等于 100
<action reference="mainFrame" driver_type="jab">
<command>Table.waitcellmatch</command>
<params>
<param name="target">dataImportTaskTable</param>
<param name="by">name</param>
<param name="cell-value">100</param>
<param name="cell-pos">2,2</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 695
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</action>
1.8.16.44 等待列达到匹配值
Table.waitcolmatch
描述:等待列达到匹配值;等待列所有值都达到匹配值才会成功,否则执行失败
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms);不填默
认 6s
cell-value string True - - 列的匹配目标
值
col-index number True - - 列号
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 等待 name 属性值等于 dataImportTaskTable 的控件中第 3 列所有值匹配到 100
<action reference="mainframe" driver_type="jab">
<command>Table.waitcolmatch</command>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 696
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<params>
<param name="target">dataImportTaskTable</param>
<param name="cell-value">100</param>
<param name="by">name</param>
<param name="col-index">2</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.45 获取输入框值
TextBox.gettext
描述:获取输入框值
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 697
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type default range help
return string TextBoxgettext_r - 输入框的值
et
return_type list - string 返回值的类型
示例:
1. 获取 index=2 的输入框的值
<action reference="mainframe" return="textbox_text" driver_type="jab">
<command>textbox.getText</command>
<params>
<param name="by">index</param>
<param name="target">2</param>
</params>
</action>
1.8.16.46 右击输入框
TextBox.rightclick
描述:右击输入框
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 698
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 右键点击 index=2 的输入框
<action reference="mainframe" driver_type="jab">
<command>textbox.rightclick</command>
<params>
<param name="target">2</param>
<param name="by">index</param>
</params>
</action>
1.8.16.47 点击输入框
Textbox.click
描述:点击输入框
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 699
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 index=2 的输入框
<action reference="mainframe" driver_type="jab">
<command>textbox.click</command>
<params>
<param name="target">2</param>
<param name="by">index</param>
</params>
</action>
1.8.16.48 输入框输值
Textbox.type
描述:输入框输值
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 700
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
(ms)
value string True - - 要键入的数
据,如是敏感
数据, 请使用
参数来赋值,
并将参数类型
设置为
Sensitive
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 向 index=2 的输入框中写入 2020-3-14
<action reference="mainframe" driver_type="jab">
<command>textbox.type</command>
<params>
<param name="value">2020-3-14</param>
<param name="target">2</param>
<param name="by">index</param>
</params>
</action>
1.8.16.49 点击开关按钮
ToggleButton.click
描述:点击开关按钮
输入:
name type help
reference string 主窗体
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 701
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 name 为 JDialog 的开关按钮控件
<action reference="mainframe" driver_type="jab">
<command>togglebutton.click</command>
<params>
<param name="target">JDialog </param>
<param name="by">name</param>
</params>
</action>
1.8.16.50 点击树的节点
Tree.click
描述:点击树的节点
输入:
name type help
reference string 主窗体
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 702
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
item-by list True - node|path 获取控件的方
式(path 指绝
对路径,node
指节点的具体
内容)
item-value String True - - 节点的选择方
式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 index=1 的树控件中 node 等于 Rock 的项
<action reference="mainframe" driver_type="jab">
<command>Tree.click</command>
<params>
<param name="target">1</param>
<param name="by">index</param>
<param name="item-by">node</param>
<param name="item-value">Rock</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 703
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.16.51 双击树的节点
Tree.doubleclick
描述:双击树的节点
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
item-by list True - node|path 获取控件的方
式(path 指绝
对路径,node
指节点的具体
内容)
item-value String True - - 节点的选择方
式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 index=1 的树控件中 node 等于 Rock 的项
<action reference="mainframe" driver_type="jab">
<command>Tree.doubleclick</command>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 704
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<params>
<param name="target">1</param>
<param name="by">index</param>
<param name="item-by">node</param>
<param name="item-value">Rock</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.52 右击树的节点
Tree.rightclick
描述:右击树的节点
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
item-by list True - node|path 获取控件的方
式(path 指绝
对路径,node
指节点的具体
内容)
item-value String True - - 节点的选择方
式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 705
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 index=1 的树控件中 node 等于 Rock 的项
<action reference="mainframe" driver_type="jab">
<command>Tree.rightclick</command>
<params>
<param name="target">1</param>
<param name="by">index</param>
<param name="item-by">node</param>
<param name="item-value">Rock</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.53 点击面板坐标
Viewport.click
描述:点击面板坐标
输入:
name type help
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 706
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
式
pos string True - - 点击的坐标
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 点击 index 等于 0 的控件中坐标为 666.0,373.0 的点
<action reference="mainframe" driver_type="jab">
<command>Viewport.click</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="pos">666.0,373.0</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.54 拖拽已选中的目标
Viewport.drag
描述:拖拽已选中的目标
输入:
name type help
reference string 主窗体
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 707
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
pos string True - - 点击的坐标
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 在 index 等于 0 的控件中选中坐标等于 666.0,373.0 的目标点拖拽
<action reference="mainframe" driver_type="jab">
<command>Viewport.drag</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="pos">666.0,373.0</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.55 右击 viewport 上的坐标
Viewport.rightclick
描述:右击 viewport 上的坐标
输入:
name type help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 708
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
reference string 主窗体
参数:
name type is_required default range help
target string True - - 控件方式的值
by list True - name|index 获取控件的方
式
pos string True - - 点击的坐标
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 右键点击 index 等于 0 的控件中坐标为 666.0,373.0 的点
<action reference="mainframe" driver_type="jab">
<command>Viewport.rightclick</command>
<params>
<param name="target">0</param>
<param name="by">index</param>
<param name="pos">666.0,373.0</param>
<param name="timeout">2000</param>
<param name="delay">1000</param>
</params>
</action>
1.8.16.56 键盘按键
sendkeys
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 709
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
描述:键盘按键
输入:无
参数:
name type is_required default range help
value string True - - 键盘的目标
值;功能键基
本格式:{功能
键},不区分大
小写,例
如:{Ctrl}、
{Enter};组合
键的格式{功
能键}字符、
{功能键}{功
能键}字符,例
如:{ctrl}a、
{ctrl}{shift}a
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 模拟按下键盘 enter 键
<action reference="MDIFrame" driver_type="jab">
<command>sendkeys</command>
<params>
<param name="value">{Enter}</param>
<param name="delay">1000</param>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 710
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.8.17 UI 通用操作
1.8.17.1 左击控件
click
描述:左击控件
输入:
name type help
reference string 主窗体(frame)
参数:
name type is_required default range help
target string True - - 控件方式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 单击文本为 Yes 的控件
<action reference="mainframe">
<command>click</command>
<params>
<param
name="target">{"driver_type":"swing","targettype":"ToggleButton","by":"text","target":"Yes"}</param>
</params>
</action>
1.8.17.2 双击控件
doubleclick
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 711
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
描述:双击控件
输入:
name type help
reference string 主窗体(frame)
参数:
name type is_required default range help
target string True - - 控件方式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 双击文本为 Yes 的控件
<action reference="mainframe">
<command>doubleclick</command>
<params>
<param
name="target">{"driver_type":"swing","targettype":"ToggleButton","by":"text","target":"Yes"}</param>
</params>
</action>
1.8.17.3 右击控件
rightclick
描述:右击控件
输入:
name type help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 712
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
reference string 主窗体(frame)
参数:
name type is_required default range help
target string True - - 控件方式的值
timeout number - - - 本 action 的执
行的超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 右击文本为 Yes 的控件
<action reference="mainframe">
<command>rightclick</command>
<params>
<param
name="target">{"driver_type":"swing","targettype":"ToggleButton","by":"text","target":"Yes"}</param>
</params>
</action>
1.8.18 管理中心操作
1.8.18.1 从 APP 下载文件
app.downloadFile
描述:从 APP 下载文件。
App 是通过 ADC 低代码平台开发的应用,在管理中心导入后使用此控件调用,app 的名称请联
系管理员获取。
入参:
app-name:string 类型、必填、App 名称;
attachment-id:string 类型、必填、附件 id;
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 713
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
batch-id:string 类型、必填、批次号;
save-to:dir 类型、必填、文件保存路径。
出参:
download_file_path:string 类型、下载文件保存路径。
输入:无
参数:
name type is_required default range help
app-name string True - - App 名称
attachment-id string True - - 附件 id
batch-id string True - - 批次号
save-to dir True - - 文件保存路径
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string download_file_pa - 下载文件保存路
th 径
return_type list - string 返回值的类型
示例:
1. 从 APP 下载文件
<action xmlId="732be359-7521-4e48-b1f6-56cb4280e682" driver_type="common" desc="下载文
件" fail_on_error="True">
<command>app.downloadfile</command>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 714
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<params>
<param name="attachment-id">test</param>
<param name="batch-id">test</param>
<param name="save-to">D:\eSpace_transfer_files\test</param>
</params>
</action>
1.8.18.2 上传文件至 APP
app.uploadFile
描述:上传文件至 APP。
App 是通过 ADC 低代码平台开发的应用,在管理中心导入后使用此控件调用,app 的名称请联
系管理员获取。
入参:
app-name:string 类型、必填、App 名称;
file-path:file 类型、必填、文件路径。
出参:
app_upload_file_info:string 类型、上传文件信息,样例:{"batchId":"xxx","attachmentId":"xxx"}。
输入:无
参数:
name type is_required default range help
app-name string True - - App 名称
file-path file True - - 文件路径
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 715
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
return string app_upload_file_i - 上传文件信息,
nfo 样例:
{"batchId":"xxx",
"attachmentId":"x
xx"}
return_type list - string 返回值的类型
示例:
1. 上传文件至 APP
<action xmlId="fc6c1269-e317-4857-a306-aeadae6ee2fa" driver_type="common" desc="上传文
件" return="upload_file_ret" fail_on_error="True">
<command>uploadfile</command>
<params>
<param name="folder">test</param>
<param name="file-path">D:\eSpace_transfer_files\test</param>
</params>
</action>
1.8.18.3 调用 App 服务
callAppService
描述:调用 App 服务:
App 是通过 ADC 低代码平台开发的应用,在管理中心导入后使用此控件调用,app 的名称请联
系管理员获取。
入参:
app-name: string 类型,必填,app 名称
service-name: string 类型,必填,app 服务名称
params: json 类型,非必填, app 服务的入参(需 json 格式的字典)
出参:
call_app_service_ret: 调用 app 返回的数据结果
输入:无
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 716
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
app-name string True - - App 名称
service-name string True - - 服务名称
params json - - - json 格式的参
数(字典)
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string call_app_service_ - 调用 App 服务返
ret 回数据
示例:
1. 调用 App 服务
<action xmlId="49867789-a67d-4e3e-a738-3e408a762078" driver_type="common" desc="调用
App 服务" return="call_app_service_ret" fail_on_error="True">
<command>call_app_service</command>
<params>
<param name="serviceId">test</param>
<param name="params">{"a":1}</param>
</params>
</action>
1.8.18.4 删除文件
mc.deleteFile
描述:从管理中心的共享文件中删除文件:
入参:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 717
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
file-name: string 类型,必填,文件名
folder: string 类型,必填,文件夹
输入:无
参数:
name type is_required default range help
file-name string True - - 文件名称(需
包含文件类
型)
folder string True - - 文件夹
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 删除文件
<action xmlId="16d8fe6b-986d-417d-8127-097c7265b390" driver_type="common" desc="删除文
件" fail_on_error="True">
<command>deletefile</command>
<params>
<param name="file-name">test</param>
<param name="folder">test</param>
</params>
</action>
1.8.18.5 下载文件
mc.downloadFile
描述:从管理中心的共享文件中下载文件:
入参:
file-name: string 类型,必填,文件名
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 718
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
folder: string 类型,必填, 文件夹
save-to: string 类型,必填,文件保存路径
出参:
download_file_path: 文件路径
输入:无
参数:
name type is_required default range help
file-name string True - - 文件名称(需
包含文件类
型)
folder string True - - 文件夹
save-to dir True - - 文件保存路径
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string download_file_pa - 下载文件保存路
th 径
return_type list - string 返回值的类型
示例:
1. 下载文件
<action xmlId="732be359-7521-4e48-b1f6-56cb4280e682" driver_type="common" desc="下载文
件" fail_on_error="True">
<command>downloadfile</command>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 719
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<params>
<param name="file-name">test</param>
<param name="folder">test</param>
<param name="extraction-code" type="password">*****</param>
<param name="save-to">D:\eSpace_transfer_files\test</param>
</params>
</action>
1.8.18.6 查询文件
mc.queryFile
描述:从管理中心的共享文件中查询文件:
入参:
file-name: string 类型,必填,文件名
folder: string 类型,必填,文件夹
出参:
query_file_ret:查询文件返回的数据
输入:无
参数:
name type is_required default range help
file-name string True - - 文件名称(需
包含文件类
型)
folder string True - - 文件夹
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 720
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
return string query_file_ret - 查询文件返回的
数据
示例:
1. 查询文件
<action xmlId="f4f932b0-74d8-4931-b32e-8d6b4dd8f4ee" driver_type="common" desc="查询文
件" return="query_file_ret" fail_on_error="True">
<command>queryfile</command>
<params>
<param name="file-name">test</param>
<param name="folder">test</param>
</params>
</action>
1.8.18.7 上传文件
mc.uploadFile
描述:上传文件到管理中心的共享文件:
入参:
file-path: string 类型,必填, 文件的绝对路径
folder: string 类型,必填,文件夹
出参:
upload_file_name:文件名
输入:无
参数:
name type is_required default range help
file-path file True - - 文件路径
folder string True - - 文件夹
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 721
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
再执行当前
action
输出:
name type default range help
return string upload_file_name - 上传的文件名
return_type list - string 返回值的类型
示例:
1. 上传文件
<action xmlId="fc6c1269-e317-4857-a306-aeadae6ee2fa" driver_type="common" desc="上传文
件" return="upload_file_ret" fail_on_error="True">
<command>uploadfile</command>
<params>
<param name="folder">test</param>
<param name="extraction-code" type="password">*****</param>
<param name="file-path">D:\eSpace_transfer_files\test</param>
</params>
</action>
1.8.18.8 查询全局参数
queryGlobalParam
描述:查询全局参数
输入:无
参数:
name type is_required default range help
name string True - - 参数名称
timeout number - - - 执行失败后的
重试超时时间
(ms)
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 722
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string query_global_par - 查询全局参数返
am_ret 回的结果
示例:
1. 查询全局参数
<action xmlId="68a95227-7719-49e8-bda1-e88ca9e35711" driver_type="common" desc="查询全
局参数" return="query_global_param_ret" fail_on_error="True">
<command>queryglobalparam</command>
<params>
<param name="name">test</param>
<param name="scope">global</param>
</params>
</action>
1.8.18.9 添加单条数据到队列
queue.add_data
描述:添加单条数据到队列。
队列是执行器与执行器之间的异步通信方式,在管理中心创建。基于队列能实现不同执行器之
间的数据交互。 入参:
queue-name: string 类型,必填,目标队列名称,
priority:list 类型,必填,优先级(分别为低、中、高)
tag:string 类型,队列数据的标签
description:string 类型,描述信息
expect-start-time:string 类型,预计开始时间,形如:yyyyMMddHHmmss
expect-end-time:string 类型,预计结束时间,形如:yyyyMMddHHmmss
input-json-data:string 类型,输入的 json 格式数据
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 723
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
出参:
batch_add_queue_data_ret:添加队列返回的数据。返回值为 json 格式,示例:{"result":true},如
果 result 值为 true 表示添加成功。
输入:无
参数:
name type is_required default range help
queue-name string True - - 队列名称
priority list True medium low|medium|hi 优先级。分别
gh 为低、中、高
tag string - - - 队列数据的标
签
description string - - - 描述信息
expect-start- string - - - 预计开始时
time 间,形如:
yyyyMMddH
Hmmss
expect-end- string - - - 预计结束时
time 间,形如:
yyyyMMddH
Hmmss
input-json- string - - - 输入的 json
data 格式数据
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 724
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
return string add_queue_data_r - 添加队列数据的
et 返回结果
示例:
1. 添加单条数据到队列
<action driver_type="common" desc="添加单条数据到队列" return="add_queue_data_ret"
fail_on_error="True">
<command>queue.add_data</command>
<params>
<param name="priority">low</param>
<param name="queue-name">queue1</param>
<param name="tag">good</param>
<param name="expect-start-time">20200205152112</param>
<param name="expect-end-time">20200205152130</param>
<param name="input-json-data">{"a":1,"b":2}</param>
</params>
</action>
1.8.18.10 添加多条数据到队列
queue.batch_add_data
描述:添加多条数据到队列:
队列是执行器与执行器之间的异步通信方式,在管理中心创建。基于队列能实现不同执行器之
间的数据交互。
通过表单设置需要写入的队列数据的值。
入参:
queue-name: string 类型,必填,队列名称
input-data:form 类型,必填,需要写入的队列数据
出参:
batch_add_queue_data_ret:添加队列返回的数据。返回值为 json 格式,示例:{"result":true},如
果 result 值为 true 表示添加成功。
输入:无
参数:
name type is_required default range help
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 725
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
queue-name string True - - 队列名称
input-data form True - - 在输入框中引
用参数,或在
表单中填写数
据
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string batch_add_queue - 添加队列数据的
_data_ret 返回结果
示例:
1. 添加多条数据到队列
<action xmlId="502271d6-b84f-4ce7-9e45-62cfbb7f79e4" driver_type="common" desc="添加多
条数据到队列" return="batch_add_queue_data_ret" fail_on_error="True">
<command>queue.batch_add_data</command>
<params>
<param name="queue-name">test_queue</param>
<param name="input-data">[{"tag":"test","priority":0,"expectStartTime":"2020-12-12
15:15:15","expectEndTime":"","inputJsonData":""}]</param>
</params>
</action>
1.8.18.11 消费队列数据
queue.consume_data
描述:消费队列数据:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 726
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
队列是执行器与执行器之间的异步通信方式,在管理中心创建。基于队列能实现不同执行器之
间的数据交互。
此命令只能查询到状态为等待处理的数据,并会将其状态置为处理中。 入参:
queue-name: string 类型,必填,队列名称
tag: string 类型,非必填,队列数据的标签
count: number 类型,必填,获取的队列数据量,默认为 1
send-interval: number 类型,非必填 发送间隔,单位为毫秒
出参:
consume_queue_data_ret: 从消费队列获取的返回数据,json array 格式
输入:无
参数:
name type is_required default range help
queue-name string True - - 队列名称
tag string - - - 队列数据的标
签
count number - 1 - 获取的队列数
据量,默认为
1
send-interval number - 30000 - 发送间隔,单
位为毫秒
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string consume_queue_ - 从消费队列获取
data_ret 的返回数据
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 727
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
示例:
1. 消费队列中标签为 good 的数据
<action driver_type="common" desc="从消费队列获取数据" return="consume_queue_data_ret"
fail_on_error="True">
<command>queue.consume_data</command>
<params>
<param name="count">1</param>
<param name="send-interval">1000</param>
<param name="queue-name">queue1</param>
<param name="tag">good</param>
</params>
</action>
1.8.18.12 从队列里查询数据
queue.query_data
描述:从队列里查询数据。
队列是执行器与执行器之间的异步通信方式,在管理中心创建。基于队列能实现不同执行器之
间的数据交互。
可以配置查询条件一次性查询多条。
与 queue.consume_data 命令的对比,此命令可以查询所有状态的数据,且不会更改数据的状态。
入参:
queue-name: string 类型,必填,队列名称
priority: list 类型,非必填,优先级。分别为低、中、高
status: list 类型,非必填,数据状态,分为等待处理、处理中、处理成功和处理失败
tag: string 类型,非必填,队列数据的标签
start-time: string 类型,非必填,查询队列数据创建时间区间的开始端,形如:yyyyMMddHHmmss
end-time: string 类型,非必填,查询队列数据创建时间区间的结尾端,形如:yyyyMMddHHmmss
page-no: number 类型,非必填,查询结果的第几页,默认为 1
page-size: number 类型,非必填,查询结果每页的数据量,默认为 10
出参:
consume_queue_data_ret: 从消费队列获取的返回数据,json array 格式
输入:无
参数:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 728
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type is_required default range help
queue-name string True - - 队列名称
priority list - - low|medium|hi 优先级。分别
gh 为低、中、高
status list - - pending|proce 数据状态,分
ssing|succeede 为等待处理、
d|failed 处理中、处理
成功和处理失
败
tag string - - - 队列数据的标
签
start-time string - - - 查询队列数据
创建时间区间
的开始端,形
如:
yyyyMMddH
Hmmss
end-time string - - - 查询队列数据
创建时间区间
的结尾端,形
如:
yyyyMMddH
Hmmss
page-no number - 1 - 查询结果的第
几页,默认为
1
page-size number - 10 - 查询结果每页
的数据量,默
认为 10
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 729
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
输出:
name type default range help
return string query_queue_data - 从队列查询的返
_ret 回数据
示例:
1. 从队列查询优先级为高的数据
<action driver_type="common" desc="从队列里查询数据" return="query_queue_data_ret"
fail_on_error="True">
<command>queue.query_data</command>
<params>
<param name="page-no">1</param>
<param name="page-size">10</param>
<param name="queue-name">queue1</param>
<param name="priority">high</param>
</params>
</action>
1.8.18.13 设置队列数据的值
queue.set_data
描述:设置队列数据的值。
队列是执行器与执行器之间的异步通信方式,在管理中心创建。基于队列能实现不同执行器之
间的数据交互。
根据 uid 检索要设置的队列数据,其它入参设置队列数据的值。
入参:
uid: string 类型,必填,队列数据的唯一标识
status: list 类型,非必填,数据状态,分为等待处理、处理中、处理成功和处理失败
priority: list 类型,非必填,优先级。分别为低、中、高
progress: number 类型,非必填,队列数据的处理进度,值在 0~100 之间
description: string 类型,非必填,队列数据的描述信息
failed-reason: string 类型,非必填,失败原因,只在状态为处理失败时使用
failed-reason-detail: string 类型,非必填,失败详情,只在状态为处理失败时使用
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 730
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
expect-start-time: string 类型,非必填,预计开始时间,形如:yyyyMMddHHmmss
expect-end-time: string 类型,非必填,预计结束时间,形如:yyyyMMddHHmmss
analysis-json-data: string 类型,非必填,json 格式的分析数据
output-json-data: string 类型,非必填,json 格式的输出数据
出参:
set_queue_data_ret: 设置队列数据的返回值。返回值为 json 格式,示例:
{'uid': 'xxx', 'outputJsonData': '{'success': true, 'message': xxx}'}
输入:无
参数:
name type is_required default range help
uid string True - - 队列数据的唯
一标识
status list - - pending|proce 数据状态,分
ssing|succeede 为等待处理、
d|failed 处理中、处理
成功和处理失
败
priority list - - low|medium|hi 优先级。分别
gh 为低、中、高
progress number - - - 队列数据的处
理进度,值在
0~100 之间
description string - - - 描述信息
failed-reason string - - - 失败原因
failed-reason- string - - - 失败详情
detail
expect-start- string - - - 预计开始时
time 间,形如:
yyyyMMddH
Hmmss
expect-end- string - - - 预计结束时
time 间,形如:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 731
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
yyyyMMddH
Hmmss
analysis-json- string - - - json 格式的分
data 析数据
output-json- string - - - json 格式的输
data 出数据
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string set_queue_data_r - 设置队列数据的
et 执行结果
示例:
1. 设置队列数据的 status,progress 和 expect-start-time 的值
<action driver_type="common" desc="设置队列数据的值" return="set_queue_data_ret"
fail_on_error="True">
<command>queue.set_data</command>
<params>
<param name="uid">123</param>
<param name="status">processing</param>
<param name="progress">50</param>
<param name="expect-start-time">20200205152112</param>
</params>
</action>
1.8.18.14 设置队列数据的预期时间
queue.set_data_expect_time
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 732
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
描述:设置队列数据的预期时间:
队列是执行器与执行器之间的异步通信方式,在管理中心创建。基于队列能实现不同执行器之
间的数据交互。
根据 uid 检索要设置的队列数据,expect-start-time 和 expect-end-time 设置队列数据的预期时间。
入参:
uid: string 类型,必填,队列数据的唯一标识
expect-start-time:string 类型,非必填,预计开始时间,形如:yyyyMMddHHmmss
expect-end-time: string 类型,非必填,预计结束时间,形如:yyyyMMddHHmmss
出参:
set_queue_expect_time_ret: 设置队列数据的返回值。返回值为 json 格式,示例:
{'uid': 'xxx', 'outputJsonData': '{'success': true, 'message': 'xxx'}'}
输入:无
参数:
name type is_required default range help
uid string True - - 队列数据的唯
一标识
expect-start- string - - - 预计开始时
time 间,形如:
yyyyMMddH
Hmmss
expect-end- string - - - 预计结束时
time 间,形如:
yyyyMMddH
Hmmss
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 733
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name type default range help
return string set_queue_expect - 设置队列数据的
_time_ret 执行结果
示例:
1. 设置队列数据的预期开始时间
<action driver_type="common" desc="设置队列数据的预期时间"
return="set_queue_expect_time_ret" fail_on_error="True">
<command>queue.set_data_expect_time</command>
<params>
<param name="uid">123</param>
<param name="expect-start-time">20200205152112</param>
</params>
</action>
1.8.18.15 设置队列数据的处理进度
queue.set_data_progress
描述:设置队列数据的处理进度:
队列是执行器与执行器之间的异步通信方式,在管理中心创建。基于队列能实现不同执行器之
间的数据交互。
根据 uid 检索要设置的队列数据,progress 设置队列数据的处理进度。
入参:
uid: string 类型,必填,队列数据的唯一标识
progress: number 类型,必填,队列数据的处理进度,值在 0~100 之间
出参:
set_queue_progress_ret: 设置队列数据的返回值。返回值为 json 格式,示例:
{'uid': 'xxx', 'outputJsonData': '{'success': true, 'message'': 'xxx'}'}
输入:无
参数:
name type is_required default range help
uid string True - - 队列数据的唯
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 734
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
一标识
progress number True - - 队列数据的处
理进度,值在
0~100 之间
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string set_queue_progre - 设置队列数据的
ss_ret 执行结果
示例:
1. 设置队列数据的处理进度
<action driver_type="common" desc="设置队列数据的处理进度"
return="set_queue_progress_ret" fail_on_error="True">
<command>queue.set_data_progress</command>
<params>
<param name="uid">123</param>
<param name="progress">50</param>
</params>
</action>
1.8.18.16 设置队列数据的状态
queue.set_data_status
描述:设置队列数据的状态。
队列是执行器与执行器之间的异步通信方式,在管理中心创建。基于队列能实现不同执行器之
间的数据交互。
根据 uid 检索要设置的队列数据,其它入参设置队列数据的值。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 735
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
入参:
uid: string 类型,必填,队列数据的唯一标识
status: list 类型,非必填,数据状态,分为等待处理、处理中、处理成功和处理失败
failed-reason: string 类型,非必填,失败原因,只在状态为处理失败时使用
failed-reason-detail: string 类型,非必填,失败详情,只在状态为处理失败时使用
出参:
set_queue_status_ret: 设置队列数据的返回值。返回值为 json 格式,示例:
{'uid': 'xxx', 'outputJsonData': '{'success': true, 'message': xxx}'}
输入:无
参数:
name type is_required default range help
uid string True - - 队列数据的唯
一标识
status list True - pending|proce 数据状态,分
ssing|succeede 为等待处理、
d|failed 处理中、处理
成功和处理失
败
failed-reason string - - - 失败原因
failed-reason- string - - - 失败详情
detail
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string set_queue_status_ - 设置队列数据的
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 736
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
ret 执行结果
示例:
1. 设置队列数据的状态
<action driver_type="common" desc="设置队列数据的状态" return="set_queue_status_ret"
fail_on_error="True">
<command>queue.set_data_status</command>
<params>
<param name="uid">123</param>
<param name="status">succeeded</param>
</params>
</action>
1.8.18.17 设置队列数据的 json 数据
queue.set_json_data
描述:设置队列数据的 json 数据:
队列是执行器与执行器之间的异步通信方式,在管理中心创建。基于队列能实现不同执行器之
间的数据交互。
根据 uid 检索要设置的队列数据,其它入参设置队列数据的预期时间。
入参:
uid: string 类型,必填,队列数据的唯一标识
description: string 类型,非必填,描述信息:
analysis-json-data: string 类型,非必填,json 格式的分析数据
output-json-data: string 类型,非必填,json 格式的输出数据
出参:
set_queue_json_data_ret: 设置队列数据的返回值。返回值为 json 格式,示例:
{'uid': 'xxx', 'outputJsonData': '{'success': true, 'message': xxx}'}
输入:无
参数:
name type is_required default range help
uid string True - - 队列数据的唯
一标识
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 737
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
description string - - - 描述信息
analysis-json- string - - - json 格式的分
data 析数据
output-json- string - - - json 格式的输
data 出数据
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:
name type default range help
return string set_queue_json_d - 设置队列数据的
ata_ret 执行结果
示例:
1. 设置队列数据的 json 数据
<action driver_type="common" desc="设置队列数据的 json 数据"
return="set_queue_json_data_ret" fail_on_error="True">
<command>queue.set_json_data</command>
<params>
<param name="uid">123</param>
<param name="output-json-data">{"OK":1}</param>
</params>
</action>
1.8.18.18 更新全局参数
updateGlobalParam
描述:更新全局参数:
入参:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 738
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name: string 类型,必填,参数的名称
data-type: list 类型,必填,数据的类型(boolean|number|string|object|array)
value: string 类型,必填,参数值
输入:无
参数:
name type is_required default range help
name string True - - 参数名称
data-type list True string boolean|numb 数据类型
er|string|object
|array
value string True - - 参数值
object-value json True - - 参数值
array-value json True - - 参数值
number-value number True - - 参数值
boolean-value list True - True|False 参数值
timeout number - - - 执行失败后的
重试超时时间
(ms)
delay number - - - 等待多少 ms
再执行当前
action
输出:无
示例:
1. 更新全局参数
<action xmlId="f7b69b30-350a-49b7-b92a-a5a1fdf8196d" driver_type="common" desc="更新全
局参数" fail_on_error="True">
<command>updateglobalparam</command>
<params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 739
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param name="name">test</param>
<param name="scope">global</param>
<param name="value">"test"</param>
</params>
</action>
1.9 安全风险说明
用户在开发过程中如果涉及敏感信息或者个人数据,可能导致信息泄露,建议用户开发设计
完成后,删除本地项目信息,规划好项目的保存和导出位置, 防止被其他用户获取。
HUAWEI AntRobot 采用提示、角色权限分离、高危命令白名单限制等手段对机器人进行安
全防护,但由于业务场景需要,用户可录制任意操作、自行开发如 python 脚本等可执行脚本,
由此带来的安全风险需要用户自行承担,建议将项目保存在用户目录下,以防止被其他用户
篡改,用户需要谨慎打开来源不明的项目。
物理执行机与其他系统隔离,除此之外,请安装杀毒软件(部分杀毒软件可能将客户端软件和
执行机软件检测为恶意软件,请在白名单中配置)。
请使用低权限用户安装与使用 studio, 建议安装在 C:\Program Files, 如因业务场景需要,用
户使用了高权限用户安装与使用等行为带来的安全风险需要用户关注并自行承担。
1.10 附录
1.10.1 附录一 文件校验类型说明
文件校验类型有:
doc,docx,xls,xlsx,xlsm,ppt,pptx,json,zip,rar,7z,gz,vsd,gif,png,jpg,jpeg,pdf,msg,oft,htm,html,x
ml,svg,app,itf,bm,jks,keystore,patch,wav,ico,mp4,avi,bmp,tif,tiff,exe,dll,jar,wsdl,so,data,spl,a
pk,keytab,txt,bas,csv,tar,py,cer,crt,pem,key,bat。
1.10.2 附录二 快捷键说明
1.10.2.1.1.1.1.1.1 快捷键说明
快捷键 说明
ctrl + z 撤回
ctrl + y 重做
ctrl + s 保存
ctrl + 滚轮 画布缩放
ctrl + a 画布图元全选
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 740
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
快捷键 说明
ctrl + f 查找
ctrl + d 删除行
F12 打开控制台
F6 下一步(调试时)
esc 停止元素拾取(元素捕获时有效)
delete 画布图元删除
ctrl + c 画布图元复制
ctrl + x 画布图元剪切
ctrl + v 画布图元粘贴
ctrl + shift + s 停止运行
ctrl + shift + / 注释/取消注释
ctrl + h 替换
ctrl + g 画布脚本相互切换
F8 下一个断点(调试时)
1.10.3 附录三 配置文件说明
1.10.3.1.1.1.1.1.1 rpa_conf.ini 配置文件说明
文件位置 配置项 值 配置说明
/code/adcrparobot/cf chromedriver_downl https://chromedriver. chrome 驱动下载地
g/inifile/rpa_conf.ini oad_address storage.googleapis.c 址
om/index.html
/code/adcrparobot/cf iedriver_download_ https://selenium- ie 驱动下载地址
g/inifile/rpa_conf.ini address release.storage.goog
leapis.com/index.ht
ml
/code/adcrparobot/cf firefoxdriver_downl https://github.com/m firefox 驱动下载地
g/inifile/rpa_conf.ini oad_address ozilla/geckodriver/re 址
leases
/code/adcrparobot/cf guide_address http://console.hic.hu 华为 HIC 第三方服
g/inifile/rpa_conf.ini awei.com/sns/#/guid 务应用 ID 和应用
e/manual/list TOKEN 申请流程
地址
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 741
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
文件位置 配置项 值 配置说明
/code/adcrparobot/cf send_sms_url https://apigw.huawei 华为 HIC 短信服务
g/inifile/rpa_conf.ini .com/api/sns/sms/se API 接口
nd/v2
/code/adcrparobot/cf voice_call_url https://apigw.huawei 华为 HIC 语音服务
g/inifile/rpa_conf.ini .com/api/sns/voice/v API 接口
oices
1.10.3.1.1.1.1.1.2 settings.json 配置文件说明
文件位置 配置项 值 配置说明
/code/adcrparobot/cf "ocr-online-api" "https://apigw.huaw 在线 OCR 图像识
g/settings.json ei.com/api/v2/ocr/ge 别服务 API 接口
neral-text"
/code/adcrparobot/cf "local_download_url "https://onebox.hua 离线 OCR 图像识
g/settings.json " wei.com/p/b24fc16e 别组件下载链接
b87670b3fbe9304a7 (华为内网)
11d3367"
/code/adcrparobot/cf "common_download "https://antrobot.hua 离线 OCR 图像识
g/settings.json _url" wei.com/robotserver 别组件下载链接
/dashboard/developf (公网
ile/download?is_tool
=true&file_path=ocr
_model_20200226.r
ar"
/code/adcrparobot/cf "smtp_server_defaul "smtp.huawei.com" smtp 服务器地址
g/settings.json t"
/code/adcrparobot/cf "pop_server_default "popscn.huawei.com pop3 服务器地址
g/settings.json " "
文件位置 配置项 值 配置说明
/code/adcrparobot/cf "ocr-online-api" "https://apigw.huaw 在线 OCR 图像识
g/settings.json ei.com/api/v2/ocr/ge 别服务 API 接口
neral-text"
/code/adcrparobot/cf "local_download_url "https://onebox.hua 离线 OCR 图像识
g/settings.json " wei.com/p/b24fc16e 别组件下载链接
b87670b3fbe9304a7 (华为内网)
11d3367"
/code/adcrparobot/cf "common_download "https://antrobot.hua 离线 OCR 图像识
g/settings.json _url" wei.com/robotserver 别组件下载链接
/dashboard/developf (公网
ile/download?is_tool
=true&file_path=ocr
_model_20200226.r
ar"
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 742
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
文件位置 配置项 值 配置说明
/code/adcrparobot/cf "smtp_server_defaul "smtp.huawei.com" smtp 服务器地址
g/settings.json t"
/code/adcrparobot/cf "pop_server_default "popscn.huawei.com pop3 服务器地址
g/settings.json " "
1.10.4 附录四 Robot 支持的异常列表
Robot 异常列表
异常种类 异常名称 异常解释 case 参考(脚本代码,可
复制到 studio 调试查看)
RobotError robot 异常 用于捕获 此 case 为命令使用错误
一些 捕获的异常:
Robot 运 <try xmlId="cf619037-
行命令时 d84f-4f7c-b7a1-
发生的未 69206ebff9d5">
知异常, <action xmlId="433091bf-
由于异常 b257-4059-b1ad-
未知,用 d3c1cb323fa9"
此异常捕 driver_type="selenium"
获,并给 desc="点击 alert 框的确
出可能导 认" fail_on_error="True">
致异常的 <command>assertalert</co
原因 mmand>
<params></params>
</action>
</try>
<catch xmlId="ecbbde41-
c8a2-4d89-8f36-
62a934c4a1b4"
exception="RobotError">
<action xmlId="68daf2f9-
b077-44f7-80c8-
3e43769214ff"
driver_type="common"
desc="确认窗口"
return="messageBox_ret"
fail_on_error="True">
<command>messagebox</
command>
<params>
<param name="value">捕
获异常</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 743
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</params>
</action>
</catch>
RobotNotFoundDriver 没有发现驱动异常 studio 在 此 case 为命令使用错误
Error 编写脚本 捕获的异常:
时,每个 <try xmlId="cf619037-
action 会 d84f-4f7c-b7a1-
有 69206ebff9d5">
driver_ty <action xmlId="433091bf-
pe 属 b257-4059-b1ad-
性,此异 d3c1cb323fa9"
常则为捕 driver_type="selenium"
获 action desc="点击 alert 框的确
中没有 认" fail_on_error="True">
driver_ty <command>assertalert</co
pe 属性 mmand>
导致 <params></params>
action 无
</action>
法运行的
错误 </try>
<catch xmlId="ecbbde41-
c8a2-4d89-8f36-
62a934c4a1b4"
exception="RobotError">
<action xmlId="68daf2f9-
b077-44f7-80c8-
3e43769214ff"
driver_type="common"
desc="确认窗口"
return="messageBox_ret"
fail_on_error="True">
<command>messagebox</
command>
<params>
<param name="value">捕
获异常</param>
</params>
</action>
</catch>
RobotNotFoundAction 没有发现命令异常 此异常为 此类异常用户一般不会
Error 捕获用户 触发,此异常经由内部
编写的脚 转换为
本中的 RobotValueError,用户可
action 命 用 RobotValueError 进行
令不存在 捕获
时的错
误,用于
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 744
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
告知用户
编写的脚
本中哪一
个 action
是不存在
的
RobotConfigError 配置异常 此异常用 此类异常为获取内部配
于捕获运 置文件失败异常,用户
行脚本时 不会触发
读取配置
文件失败
导致的错
误
RobotInputJsonError InputJson 异常 此异常用 此 case 为读取错误的
于捕获 json 文件,捕获异常:
Robot 在 <try xmlId="cf619037-
读取输入 d84f-4f7c-b7a1-
变量的 69206ebff9d5">
json 文件 <action xmlId="fc99791d-
失败导致 5be4-43a8-98e7-
的异常或 1c33cae45e21"
使用 driver_type="common"
readjson desc="读取 json 文件"
命令读取 return="readJson_ret"
json 文件 fail_on_error="True">
失败导致 <command>readjson</co
的异常或 mmand>
读取离线 <params>
OCR 识 <param name="file-
别图片的 name">D:\project\file_test
json 文件 \Input\variables - 副
信息失败 本.json</param>
导致的异 </params>
常
</action>
</try>
<catch xmlId="ecbbde41-
c8a2-4d89-8f36-
62a934c4a1b4"
exception="RobotInputJso
nError">
<action xmlId="68daf2f9-
b077-44f7-80c8-
3e43769214ff"
driver_type="common"
desc="确认窗口"
return="messageBox_ret"
fail_on_error="True">
<command>messagebox</
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 745
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
command>
<params>
<param name="value">捕
获异常</param>
</params>
</action>
</catch>
RobotIllegalCondition IllegalConditionStmt 此异常用 此类异常用户一般不会
StmtError 异常 于捕获使 触发
用 if 条件
语句失败
的异常以
及解析条
件语句异
常,并给
出相应条
件语法、
条件详细
信息的具
体错误信
息
RobotPermissionError Permission 异常 此异常用 当 studio 启动权限与
于捕获在 espace 不一致时会触发此
使用 异常并捕获
espace 相 <try xmlId="cf619037-
关命令 d84f-4f7c-b7a1-
时, 69206ebff9d5">
studio 与 <action xmlId="6ca37f81-
espace 启 87ed-4954-8add-
动权限不 6a14a1e98ac1"
一致所导 driver_type="common"
致的异常 desc="使用 eSpace 发送
信息"
fail_on_error="True">
<command>espace.sendm
essage</command>
<params>
<param name="interface-
type">local</param>
<param name="target">工
号</param>
<param
name="value">test</para
m>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 746
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</try>
<catch xmlId="ecbbde41-
c8a2-4d89-8f36-
62a934c4a1b4"
exception="RobotInputJso
nError">
<action xmlId="68daf2f9-
b077-44f7-80c8-
3e43769214ff"
driver_type="common"
desc="确认窗口"
return="messageBox_ret"
fail_on_error="True">
<command>messagebox</
command>
<params>
<param name="value">捕
获异常</param>
</params>
</action>
</catch>
RobotJavaError Java 异常 用于捕获 <try xmlId="cf619037-
运行 Java d84f-4f7c-b7a1-
相关命令 69206ebff9d5">
及调用 <action
java 接口 reference="mainWindow"
失败导致 driver_type="javafx"
xmlId="d47a23a5-ee5c-
的异常
41e5-9ccb-6881bbe43414"
fail_on_error="True">
<command>Textbox.click
</command>
<params>
<param
name="target">0</param>
<param
name="by">index</param
>
<param
name="timeout">2000</pa
ram>
<param
name="delay">1000</para
m>
</params>
</action>
</try>
<catch xmlId="ecbbde41-
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 747
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
c8a2-4d89-8f36-
62a934c4a1b4"
exception="RobotJavaErro
r">
<action xmlId="68daf2f9-
b077-44f7-80c8-
3e43769214ff"
driver_type="common"
desc="确认窗口"
return="messageBox_ret"
fail_on_error="True">
<command>messagebox</
command>
<params>
<param name="value">捕
获异常</param>
</params>
</action>
</catch>
RobotShutDownError ShutDown 异常 用于捕获 此类异常用户一般不会
运行 Java 触发,此异常经由内部
相关命令 转换为其他异常
共享内存
出现异常
及 robot
实现
action 执
行失败关
闭退出的
异常
RobotJabError Jab 异常 用于捕获 <try xmlId="cf619037-
在运行 d84f-4f7c-b7a1-
jab 相关 69206ebff9d5">
命令失败 <action xmlId="ecb3787c-
时的异常 a8dc-4021-b113-
65d7541bb0b4"
driver_type="jab" desc="
左键单击"
fail_on_error="True">
<command>button.click</
command>
<params>
<param
name="target">Yes</para
m>
<param
name="by">name</param
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 748
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
>
</params>
</action>
</try>
<catch xmlId="ecbbde41-
c8a2-4d89-8f36-
62a934c4a1b4"
exception="RobotJabError
">
<action xmlId="68daf2f9-
b077-44f7-80c8-
3e43769214ff"
driver_type="common"
desc="确认窗口"
return="messageBox_ret"
fail_on_error="True">
<command>messagebox</
command>
<params>
<param name="value">捕
获异常</param>
</params>
</action>
</catch>
RobotRuntimeError Runtime 异常 用于捕获 证书库传入超过 200 个
在进行数 证书,运行 case 捕获此
字证书校 异常:
验时出现 <try xmlId="cf619037-
的异常 d84f-4f7c-b7a1-
69206ebff9d5">
<action return="mysql"
driver_type="common"
xmlId="438985e3-5443-
45c1-8b39-a37ab58a3123"
return_type="object"
fail_on_error="True">
<command>database.conn
ect</command>
<params>
<param
name="category">mysql</
param>
<param
name="host">10.66.71.95
</param>
<param
name="port">3306</para
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 749
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
m>
<param
name="user">root</param
>
<param
name="password"/>
<param
name="charset">utf8</par
am>
<param
name="encryption">encry
ption</param>
</params>
<properties>
<showParam>category</s
howParam>
</properties>
</action>
</try>
<catch xmlId="ecbbde41-
c8a2-4d89-8f36-
62a934c4a1b4"
exception="RobotRuntime
Error	">
<action xmlId="68daf2f9-
b077-44f7-80c8-
3e43769214ff"
driver_type="common"
desc="确认窗口"
return="messageBox_ret"
fail_on_error="True">
<command>messagebox</
command>
<params>
<param name="value">捕
获异常</param>
</params>
</action>
</catch>
RobotWebDriverError WebDriver 异常 用于捕获 <antrobot version="2.0">
web 相关 <procedures>
命令异常 <procedure
以及上传 driver_type="selenese"
WebDriv selenium_driver_type="ie"
文件有
er executable_path="D:\Robo
问题出现 t_x64_20190725\Robot\cf
的异常 g\webdriver\IEDriverServe
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 750
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
r_2.47.exe">
<!-- WebDriver 异常,使
用 ie 浏览器,在
procedure 中引用一个不
存在的 ie 驱动 -->
<try>
<action>
<command>open</comma
nd>
<params>
<param
name="target">https://isup
cloud.huawei.com/group/u
sersite/service-
details?appId=1927
</param>
<param
name="delay">500</para
m>
</params>
</action>
<action>
<command>open</comma
nd>
<params>
<param
name="target">https://ww
w.baidu.com</param>
<param
name="by">_blank</para
m>
</params>
</action>
<action>
<command>print</comma
nd>
<params>
<param name="value">try
成功</param>
<param
name="delay">500</para
m>
</params>
</action>
</try>
<catch
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 751
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
exception="WebDriverExc
eption">
<action>
<command>print</comma
nd>
<params>
<param
name="value">WebDriver
找不到</param>
<param
name="delay">500</para
m>
</params>
</action>
</catch>
<finally>
<action>
<command>print</comma
nd>
<params>
<param
name="value">2success</
param>
<param
name="delay">500</para
m>
</params>
</action>
</finally>
</procedure>
</procedures>
</antrobot>
RobotValueError Value 异常 此异常用 <try xmlId="cf619037-
于捕获使 d84f-4f7c-b7a1-
用具体命 69206ebff9d5">
令时参数 <action xmlId="44ec90c5-
填写有误 30a3-4d4f-a277-
导致 7e7563839549"
driver_type="common"
action 运
desc="读取 pdf 文件"
行失败导
return="readPdf_ret"
致的异常 fail_on_error="True">
<command>readpdf</com
mand>
<params>
<param name="file-
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 752
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name">D:\project\test_cas
e\006file\006readPdf\excel
texttable1.pdf</param>
<param name="filter-
page">0</param>
<param name="filter-
type">text</param>
</params>
</action>
</try>
<catch xmlId="ecbbde41-
c8a2-4d89-8f36-
62a934c4a1b4"
exception="RobotValueEr
ror">
<action xmlId="68daf2f9-
b077-44f7-80c8-
3e43769214ff"
driver_type="common"
desc="确认窗口"
return="messageBox_ret"
fail_on_error="True">
<command>messagebox</
command>
<params>
<param name="value">捕
获异常</param>
</params>
</action>
</catch>
RobotNameError Name 异常 此异常用 <try xmlId="cf619037-
于捕获在 d84f-4f7c-b7a1-
使用 eval 69206ebff9d5">
命令给变 <action xmlId="ed3ebf52-
量赋值 d37a-4cb8-b9d7-
时,变量 51fa01a47412"
driver_type="common"
名字填写
desc="运行 py 表达式"
错误导致
return="eval_ret"
的异常 return_type="object"
fail_on_error="True">
<command>eval</comma
nd>
<params>
<param
name="value">json.loaas(
{"":""})</param>
<param
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 753
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name="target">json</para
m>
</params>
</action>
</try>
<catch xmlId="ecbbde41-
c8a2-4d89-8f36-
62a934c4a1b4"
exception="RobotNameEr
ror">
<action xmlId="68daf2f9-
b077-44f7-80c8-
3e43769214ff"
driver_type="common"
desc="确认窗口"
return="messageBox_ret"
fail_on_error="True">
<command>messagebox</
command>
<params>
<param name="value">捕
获异常</param>
</params>
</action>
</catch>
RobotTypeError Type 异常 此异常用 上传文件类型错误的文
于捕获 件可捕获到此异常:
action 脚 <try xmlId="cf619037-
本传到后 d84f-4f7c-b7a1-
台进行关 69206ebff9d5">
键字转换 <action xmlId="dd41aefd-
失败导致 fe24-4d5d-bfdf-
的异常以 0996bfd871d7"
及文件类 driver_type="common"
型校验失 desc="解压文件"
败导致的 fail_on_error="True">
异常 <command>unzip</comm
and>
<params>
<param
name="target">@{WORK
_DIR}</param>
<param
name="value">D:\project\f
ile_test\20UAE_DU.rar</p
aram>
</params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 754
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</action>
</try>
<catch xmlId="ecbbde41-
c8a2-4d89-8f36-
62a934c4a1b4"
exception="RobotTypeErr
or">
<action xmlId="68daf2f9-
b077-44f7-80c8-
3e43769214ff"
driver_type="common"
desc="确认窗口"
return="messageBox_ret"
fail_on_error="True">
<command>messagebox</
command>
<params>
<param name="value">捕
获异常</param>
</params>
</action>
</catch>
RobotLookupError Lookup 异常 此异常用 <antrobot version="2.0">
于捕获 <procedures>
win32 应 <procedure
用程序运 driver_type="uiautomation
行失败导 ">
致的异常 <action>
<command>startApp</co
mmand>
<params>
<param
name="target">exe</para
m>
<param
name="value">Notepad</
param>
</params>
</action>
<action>
<command>setActive</co
mmand>
<params>
<param
name="target">Notepad</
param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 755
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<param
name="targettype">Windo
wControl</param>
<param
name="by">ClassName</
param>
<param
name="delay">1500</para
m>
</params>
</action>
<action>
<command>setClipboard<
/command>
<params>
<param
name="value">@{path}</
param>
<param
name="delay">500</para
m>
</params>
</action>
<action return="abc">
<command>getClipboard<
/command>
<params>
<param
name="delay">1000</para
m>
</params>
</action>
<action>
<command>sendKeys</co
mmand>
<params>
<param
name="target">Edit</para
m>
<param
name="targettype">EditCo
ntrol</param>
<param
name="by">ClassName</
param>
<param
name="value">@{abc}</p
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 756
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
aram>
<param
name="delay">500</para
m>
</params>
</action>
<action>
<command>close</comma
nd>
<params>
<param
name="target">Notepad</
param>
<param
name="targettype">Windo
wControl</param>
<param
name="by">ClassName</
param>
<param
name="delay">1000</para
m>
</params>
</action>
<try>
<action>
<command>click</comma
nd>
<params>
<param name="target">不
保存 11(N)</param>
<param
name="targettype">Button
Control</param>
<param
name="by">Name</param
>
<param
name="delay">500</para
m>
</params>
</action>
</try>
<catch
exception="LookupError"
>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 757
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<action>
<command>print</comma
nd>
<params>
<param name="value">控
件找不到异常</param>
<param
name="delay">500</para
m>
</params>
</action>
</catch>
<finally>
<action>
<command>click</comma
nd>
<params>
<param
name="target">Don't
Save</param>
<param
name="targettype">Button
Control</param>
<param
name="by">Name</param
>
<param
name="delay">500</para
m>
</params>
</action>
</finally>
<action>
<command>print</comma
nd>
<params>
<param
name="value">success
a=@{abc}</param>
</params>
</action>
</procedure>
</procedures>
</antrobot>
RobotIndexError Index 异常 此异常为 <antrobot version="2.0">
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 758
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
捕获索引 <procedures>
越界的异 <procedure
常 driver_type="selenese">
<try>
<action>
<command>open</comma
nd>
<params>
<param
name="target">https://isup
cloud.huawei.com/group/u
sersite/service-
details?appId=1927
</param>
<param
name="delay">500</para
m>
</params>
</action>
<action>
<command>open</comma
nd>
<params>
<param
name="target">https://ww
w.baidu.com</param>
<param
name="by">_blank</para
m>
</params>
</action>
<action>
<command>selectWindow
</command>
<params>
<param
name="target">win_ser_2
</param>
<param
name="delay">500</para
m>
</params>
</action>
<action>
<command>print</comma
nd>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 759
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<params>
<param name="value">try
成功</param>
<param
name="delay">500</para
m>
</params>
</action>
</try>
<catch
exception="IndexError">
<action>
<command>print</comma
nd>
<params>
<param
name="value">Window
找不到</param>
<param
name="delay">500</para
m>
</params>
</action>
</catch>
<finally>
<action>
<command>quit</comman
d>
<params>
<param
name="delay">500</para
m>
</params>
</action>
<action>
<command>print</comma
nd>
<params>
<param
name="value">2success</
param>
<param
name="delay">500</para
m>
</params>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 760
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</action>
</finally>
</procedure>
</procedures>
</antrobot>
RobotNoSuchElement NoSuchElement 异常 此异常用 <try xmlId="cf619037-
Exception 于捕获在 d84f-4f7c-b7a1-
使用 web 69206ebff9d5">
相关命令 <action xmlId="1fed700e-
时元素未 dccf-4996-9602-
找到导致 4df5b934f8f3"
driver_type="selenium"
的异常
desc="获取元素,返回一
个锚点"
return="getElement_ret"
return_type="object"
fail_on_error="True">
<command>getelement</c
ommand>
<params>
<param
name="target">id=uid</pa
ram>
</params>
</action>
</try>
<catch xmlId="ecbbde41-
c8a2-4d89-8f36-
62a934c4a1b4"
exception="RobotNoSuch
ElementException">
<action xmlId="68daf2f9-
b077-44f7-80c8-
3e43769214ff"
driver_type="common"
desc="确认窗口"
return="messageBox_ret"
fail_on_error="True">
<command>messagebox</
command>
<params>
<param name="value">捕
获异常</param>
</params>
</action>
</catch>
RobotElementNotFou Element not found 异 此异常用 <try xmlId="cf619037-
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 761
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
ndException 常 于捕获在 d84f-4f7c-b7a1-
使用 web 69206ebff9d5">
相关命令 <action xmlId="1fed700e-
时元素未 dccf-4996-9602-
找到导致 4df5b934f8f3"
的异常 driver_type="selenium"
desc="获取元素,返回一
个锚点"
return="getElement_ret"
return_type="object"
fail_on_error="True">
<command>getelement</c
ommand>
<params>
<param
name="target">text=uid</
param>
</params>
</action>
</try>
<catch xmlId="ecbbde41-
c8a2-4d89-8f36-
62a934c4a1b4"
exception="RobotElement
NotFoundException">
<action xmlId="68daf2f9-
b077-44f7-80c8-
3e43769214ff"
driver_type="common"
desc="确认窗口"
return="messageBox_ret"
fail_on_error="True">
<command>messagebox</
command>
<params>
<param name="value">捕
获异常</param>
</params>
</action>
</catch>
RobotCitrixException Citrix 异常 此异常用 <antrobot version="2.0">
于捕获使 <procedures>
用图像处 <procedure>
理相关命
<action
令失败时
driver_type="uiautomation
导致的异 " xmlId="53bc263e-f6b9-
常 498a-ada6-3dcf27b4ebaf"
return="startapp_ret"
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 762
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
fail_on_error="True">
<command>startApp</co
mmand>
<params>
<param
name="target">exe</para
m>
<param
name="value">C:\Program
Files
(x86)\Google\Chrome\App
lication\chrome.exe</para
m>
<param
name="delay">500</para
m>
</params>
</action>
<action xmlId="644cba9f-
b35e-4286-8eb3-
49d8ce35d062"
driver_type="common"
fail_on_error="True">
<command>citrix.newWin
dow</command>
<params>
<param name="target">无
标题 - Google
Chrome</param>
<param name="start-
pos">0,0</param>
<param
name="width">1920</para
m>
<param
name="height">1080</par
am>
<param
name="delay">2110</para
m>
<param
name="timeout">15000</
param>
</params>
</action>
<action xmlId="ec56d568-
c963-4b16-9478-
5e0e5f24dc56"
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 763
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
driver_type="common"
fail_on_error="True">
<command>citrix.rawMou
se</command>
<params>
<param
name="type">LButtonDo
wn</param>
<param
name="pos">222,50</para
m>
<param
name="wheel">0</param>
<param
name="delay">2188</para
m>
</params>
</action>
<action xmlId="1ecdf6f3-
4522-4d31-b07a-
4cb398457c67"
driver_type="common"
fail_on_error="True">
<command>citrix.rawMou
se</command>
<params>
<param
name="type">LButtonUp<
/param>
<param
name="pos">222,50</para
m>
<param
name="wheel">0</param>
<param
name="delay">125</para
m>
</params>
</action>
<try xmlId="3dde6869-
c445-4970-88ff-
032cb9b4a432">
<action xmlId="9d7a2d40-
e1f0-4b0c-a33c-
7d66d15cfa44"
driver_type="common"
desc="等待图片出现"
return="citrixwaitForPic_r
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 764
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
et" fail_on_error="True">
<command>citrix.waitforp
ic</command>
<params>
<param
name="image">D:\project\
test_case\try_catch\try_cat
ch_citrix\Pic\1.PNG</para
m>
</params>
</action>
<action xmlId="640066f1-
af7b-43ce-b3d4-
1d3a163435fe"
driver_type="common"
desc="单击区域内图片"
fail_on_error="True">
<command>citrix.clickpicr
egion</command>
<params>
<param
name="image">C:\Users\l
wx5324531\Pictures\1.jpg
</param>
</params>
</action>
</try>
<catch
exception="RobotCitrixEx
ception"
xmlId="3d890ed6-619f-
45a5-87e3-
0273fd68a881">
<action xmlId="cde4a548-
3b7e-4955-84c9-
be810f98bc7b"
driver_type="common"
fail_on_error="True">
<command>citrix.rawKey
board</command>
<params>
<param
name="type">KeyDown</
param>
<param
name="key">b</param>
<param
name="delay">500</para
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 765
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
m>
</params>
</action>
<action xmlId="7bb2e2f2-
f4ed-4950-9bb9-
716f4ce6beea"
driver_type="common"
fail_on_error="True">
<command>citrix.inputVa
riable</command>
<params>
<param
name="value">aidu.com</
param>
<param
name="delay">500</para
m>
</params>
</action>
<action xmlId="fbd1c78c-
13c0-40c1-84de-
14a5d133b5e1"
driver_type="common"
fail_on_error="True">
<command>print</comma
nd>
<params>
<param name="value">异
常捕获成功</param>
</params>
</action>
</catch>
<action xmlId="3f3e720d-
77e7-4802-90f6-
ef7ef12b2468"
driver_type="common"
fail_on_error="True">
<command>citrix.rawKey
board</command>
<params>
<param
name="type">KeyDown</
param>
<param
name="key">Enter</para
m>
<param
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 766
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
name="delay">500</para
m>
</params>
</action>
<action xmlId="e40e9cfa-
63da-447d-8b8d-
9e1a1903c4bf"
driver_type="common"
fail_on_error="True">
<command>citrix.rawKey
board</command>
<params>
<param
name="type">KeyUp</par
am>
<param
name="key">Enter</para
m>
<param
name="delay">500</para
m>
</params>
</action>
<action xmlId="0cc94e9e-
4cec-4e9c-88ce-
7f7b7d8f6643"
driver_type="common"
fail_on_error="True">
<command>citrix.rawMou
se</command>
<params>
<param
name="type">LButtonDo
wn</param>
<param
name="pos">676,460</par
am>
<param
name="wheel">0</param>
<param
name="delay">2188</para
m>
</params>
</action>
<action xmlId="e1631833-
4363-4a00-ad4d-
bbe686602b5d"
driver_type="common"
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 767
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
fail_on_error="True">
<command>citrix.rawMou
se</command>
<params>
<param
name="type">LButtonUp<
/param>
<param
name="pos">676,460</par
am>
<param
name="wheel">0</param>
<param
name="delay">125</para
m>
</params>
</action>
<action xmlId="bbba06ef-
8a9f-4f61-8a1f-
6f4971fa3835"
driver_type="common"
fail_on_error="True">
<command>citrix.rawMou
se</command>
<params>
<param
name="type">LButtonDo
wn</param>
<param
name="pos">1896,8</para
m>
<param
name="wheel">0</param>
<param
name="delay">2188</para
m>
</params>
</action>
<action xmlId="e7840749-
55ef-4150-adb3-
2e7b41a10e06"
driver_type="common"
fail_on_error="True">
<command>citrix.rawMou
se</command>
<params>
<param
name="type">LButtonUp<
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 768
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
/param>
<param
name="pos">1896,8</para
m>
<param
name="wheel">0</param>
<param
name="delay">125</para
m>
</params>
</action>
<action xmlId="82a253ad-
b07f-4d30-a2bf-
5ebd904f029b"
driver_type="common"
fail_on_error="True">
<command>print</comma
nd>
<params>
<param
name="value">2success</
param>
</params>
</action>
</procedure>
</procedures>
</antrobot>
RobotTimeoutError 超时异常 用于捕获 使用 do while 命令导致
在使用具 超时异常捕获:
体命令时 <antrobot version="2.0">
设置了超
<procedures>
时时间,
运行命令 <procedure>
时超时导 <action
致运行失 driver_type="common"
desc="给变量赋值"
败的异常
return="a">
<command>assign</comm
and>
<params>
<param
name="value">1</param>
<param
name="delay">500</para
m>
</params>
</action>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 769
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<try>
<dowhile
condition="@{a}==2"
timeout="10000">
<action
driver_type="uiautomation
" desc="打开文件目录或
应用程序">
<command>startapp</com
mand>
<params>
<param
name="target">exe</para
m>
<param
name="value">notepad</p
aram>
<param
name="delay">500</para
m>
</params>
</action>
<action
driver_type="uiautomation
" desc="窗口置顶">
<command>setactive</co
mmand>
<params>
<param
name="by">ClassName</
param>
<param
name="targettype">Windo
wControl</param>
<param
name="target">Notepad</
param>
<param
name="delay">1000</para
m>
</params>
</action>
<action
driver_type="uiautomation
" desc="键盘输入">
<command>sendkeys</co
mmand>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 770
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
<params>
<param
name="value">@{keys}</
param>
<param
name="delay">1000</para
m>
</params>
</action>
<action
driver_type="uiautomation
" desc="关闭窗口">
<command>close</comma
nd>
<params>
<param
name="target">Notepad</
param>
<param
name="by">ClassName</
param>
<param
name="targettype">Windo
wControl</param>
<param
name="delay">1000</para
m>
</params>
</action>
<action
driver_type="uiautomation
" desc="鼠标左键单击">
<command>click</comma
nd>
<params>
<param
name="targettype">Button
Control</param>
<param
name="by">Name</param
>
<param
name="target">Don't
Save</param>
<param
name="delay">500</para
m>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 771
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</params>
</action>
<action
driver_type="common"
desc="给变量赋值"
return="a">
<command>assign</comm
and>
<params>
<param
name="value">2</param>
<param
name="delay">500</para
m>
</params>
</action>
<action
driver_type="common"
desc="输出文本信息到文
件中">
<command>print</comma
nd>
<params>
<param
name="value">@{keys}</
param>
<param
name="delay">500</para
m>
</params>
</action>
</dowhile>
</try>
<catch
exception="TimeoutError"
>
<action
driver_type="common"
desc="输出文本信息到文
件中">
<command>print</comma
nd>
<params>
<param
name="value">dowhile 超
时</param>
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 772
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
</params>
</action>
</catch>
<action
driver_type="common"
desc="输出文本信息到文
件中">
<command>print</comma
nd>
<params>
<param
name="value">success</p
aram>
</params>
</action>
</procedure>
</procedures>
</antrobot>
RobotWhiteListError 白名单异常 此异常用 路径白名单未通过捕获
于捕获白 此异常:
名单相关 <try xmlId="cf619037-
异常,比 d84f-4f7c-b7a1-
如用户配 69206ebff9d5">
置白名单 <action xmlId="aef21de7-
后参数填 0fd5-4f56-9f58-
写不在白 ef85f77c21a6"
名单内导 driver_type="common"
致命令运 desc="创建文件/目录"
行失败 fail_on_error="True">
<command>filecreate</co
mmand>
<params>
<param
name="target">C:\TEST</
param>
</params>
</action>
</try>
<catch xmlId="ecbbde41-
c8a2-4d89-8f36-
62a934c4a1b4"
exception="RobotWhiteLi
stError">
<action xmlId="68daf2f9-
b077-44f7-80c8-
3e43769214ff"
driver_type="common"
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 773
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
desc="确认窗口"
return="messageBox_ret"
fail_on_error="True">
<command>messagebox</
command>
<params>
<param name="value">捕
获异常</param>
</params>
</action>
</catch>
RobotQrcodeError 二维码异常 此命令用 使用非二维码图片进行
于捕获使 识别,捕获到此异常:
用二维码 <try xmlId="cf619037-
识别命令 d84f-4f7c-b7a1-
失败导致 69206ebff9d5">
的异常 <action xmlId="239e7100-
408a-417a-8d41-
c05553bf859d"
driver_type="common"
desc="对二维码进行解析
并返回数据"
return="qrcode_data_ret"
fail_on_error="True">
<command>qrcodedata</c
ommand>
<params>
<param name="image-
path">C:\Users\lwx53245
31\Pictures\0001.png</par
am>
</params>
</action>
</try>
<catch xmlId="ecbbde41-
c8a2-4d89-8f36-
62a934c4a1b4"
exception="RobotQrcodeE
rror">
<action xmlId="68daf2f9-
b077-44f7-80c8-
3e43769214ff"
driver_type="common"
desc="确认窗口"
return="messageBox_ret"
fail_on_error="True">
<command>messagebox</
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 774
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
command>
<params>
<param name="value">捕
获异常</param>
</params>
</action>
</catch>
1.10.5 附录五 Chrome 浏览器导出数字证书
3. F12 打开开发者工具,选中"Security"面板-->找到"View certificate"并点击
4. 选中“详细信息”面板-->复制到文件
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 775
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
5. 根据证书导出向导,点击“下一步”即可。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 776
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 777
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 778
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 779
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.10.6 附录六 sendkeys 功能键对照表
功能键不区分大小写
使用{key Name}发送功能键
比如:
{CONTROL} 对应按下 Ctrl 键
{CONTROL}a 对应按下 Ctrl 和 a
{CONTROL}{DELETE} 对应按下 Ctrl 和 Del 键
Key Name(sendkeys 命令的写 Description(电脑键盘中的 key)
法)
BACK BACKSPACE key
TAB TAB key
ENTER ENTER key
SHIFT SHIFT key
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 780
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
CTRL CTRL key
CONTROL CTRL key
ALT ALT key
PAUSE PAUSE key
ESCAPE ESC key
SPACE SPACEBAR
END END key
HOME HOME key
LEFT LEFT ARROW key
UP UP ARROW key
RIGHT RIGHT ARROW key
DOWN DOWN ARROW key
INSERT INS key
DELETE DEL key
HELP HELP key
WIN Left Windows key (Natural keyboard)
SEMICOLON SEMICOLON key
EQUALS EQUALS key
NUMPAD0 Numeric keypad 0 key
NUMPAD1 Numeric keypad 1 key
NUMPAD2 Numeric keypad 2 key
NUMPAD3 Numeric keypad 3 key
NUMPAD4 Numeric keypad 4 key
NUMPAD5 Numeric keypad 5 key
NUMPAD6 Numeric keypad 6 key
NUMPAD7 Numeric keypad 7 key
NUMPAD8 Numeric keypad 8 key
NUMPAD9 Numeric keypad 9 key
MULTIPLY Multiply key
ADD Add key
SEPARATOR Separator key
SUBTRACT Subtract key
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 781
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
DECIMAL Decimal key
DIVIDE Divide key
F1 F1 key
F2 F2 key
F3 F3 key
F4 F4 key
F5 F5 key
F6 F6 key
F7 F7 key
F8 F8 key
F9 F9 key
F10 F10 key
F11 F11 key
F12 F12 key
LSHIFT Left SHIFT key
RSHIFT Right SHIFT key
LCTRL Left CONTROL key
RCTRL Right CONTROL key
1.11 FAQ
1.11.1 未申请许可
问题:用 studio 进行录制前没有申请许可。
解决方案:如下图所示,在用 studio 进行录制之前,需要在工具栏“设置”里面点击
下拉菜单栏“申请许可”去申请许可证:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 782
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.11.1.1.1.1.1.1 申请许可证
1.11.2 未导入 web 驱动
问题:用 studio 进行录制前没有导入 web 驱动。
解决方案:如下图所示,在用 studio 进行录制之前,需要在工具栏“设置”里面点击
下拉菜单栏“导入 web 驱动”去导入 web 驱动:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 783
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.11.2.1.1.1.1.1 导入 web 驱动
1.11.3 申请许可和导入 web 驱动异常,服务未启动,请重启应用
问题:在 studio 中申请许可和导入 web 驱动时报错,studio 界面报“服务未启动,请
启动应用”,如下图所示:
解决方案:
6. 考虑有可能是端口占用,请确保 11483 端口没有进程占用,如果有进程占用,请
尝试关闭占用该端口的进程后重启 studio
7. 如果上述操作依然无法解决问题,考虑这种情况是因为 windows 系统的代理设置
中包含有“<-loopback>”,在 windows 的开始菜单单击“设置”,然后在弹出的
Windows 设置界面单击“网络和 Internet”,在弹出的界面单击“代理”,在手动
设置代理里面设置正确的代理 ip 地址。
1.11.4 安装 Studio 的时候安装目录带有中文特殊字符、“.”和空格
问题:安装 Studio 的时候安装目录带有中文特殊字符、“.”和空格。
解决方案:安装的时候安装目录不要带中文特殊字符、“.”和空格。
1.11.5 常见回放问题
1.11.5.1 回放时,工作目录路径中含有空格,导致回放失败
问题:回放时,工作目录路径中含有空格,导致回放失败。
解决方案:使用 Robot.exe –w 命令执行回放时,如果工作目录含有空格,在命令行
里面需要给目录加上引号,例如:
D:\周版本\Robot_x64_20191015\Robot>Robot.exe -w "D:\old cases\case\case\assign"。
1.11.5.2 studio 回放失败
问题:studio 回放失败
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 784
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
解决方案:有可能是因为 studio 的启动权限和录制回放所使用的浏览器的启动权限不
一致,应该让 studio 的启动权限和录制回放所使用的浏览器的启动权限保持一致。
1.11.5.3 回放时,程序报错 OSError: [WinError 126]找不到指定模块
问题:回放时,程序报错 OSError: [WinError 126]找不到指定模块,如何处理。
如下图所示,回放时报错 OSError: [WinError 126]找不到指定模块:
解决方案:需安装补丁 vc_redist.x64.exe。
1.11.5.4 Java 应用程序回放,如何配置 JRE
问题:对于 Java 应用程序回放,如何配置 JRE。
解决方案:
Java 回放 Jre 环境配置问题,当前支持三种 jre 环境配置方式:
8. 本机 JAVA_HOME 配置(请保证 jre 环境下有 attach.dll 文件);
9. 在 procedure 属性里面配置 jrePath=""(支持写到 bin 目录和 java.exe 的绝对路径);
10. 在 conJavaRobot 命令内,加 by 写法,如:<by>64</by> (此写法需要在 Robot 同
级目录存在 jre\jre_x64 目录,此结构请参考 studio 目录结构)。
1.11.5.5 对于回放过程中,什么情况下可能需要将 delay 值加长
问题:对于回放过程中,什么情况下可能需要将 delay 值加长。
解决方案:机器人执行过程中,如果算子出现问题,可能由于组件之间影响或者网络
问题,可以通过算子加延时解决。首先尝试算子加延时解决,如果无法解决联系华为
相关人员。
1.11.5.6 studio 服务证书怎么删除
问题:studio 服务证书怎么删除?
解决方案: 用户可在本地存放服务证书文件目录手动删除已导入或已下发的服务证书。
服务证书存放路径为:用户目录根目录\.rpa\certs\,如:C:\users\*****\.rpa\certs。
1.11.5.7 Win10 环境下 Robot.exe 回放过程当中,鼠标点击到 app 之外的地
方,或者鼠标点击的控件位置不准确,且日志当中不报错
问题:Win10 环境下 Robot.exe 回放过程当中,鼠标点击到 app 之外的地方,或者鼠
标点击的控件位置不准确,且日志当中不报错。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 785
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
原因:win10 当前的分辨率和缩放比不合适。
解决方案:win10 桌面右键点击,自定义缩放比设置,输入 100,注销重启计算机生效。
1.11.5.8 为什么有时 win32 算子处理过程时间过长?
问题:为什么有时 win32 算子处理过程时间过长?
解决方案:在机器人回放过程中,win32 的算子在不引用 reference 和 by 不为 Path 时,
会在已打开的所有的应用程序中全局遍历查询控件,当目标控件不存在时从而导致查
询时间够长。因此我们做 win32 组件处理的前期条件需要先打开这个组件,这样会避
免目标控件不存在,导致算子处理时间超长
1.11.5.9 程序报错 com.sun.tools.attach.AttachNotSupportedException:no
providers installed
问题:程序报错 com.sun.tools.attach.AttachNotSupportedException:no providers
installed。
原因:依赖的 jre 环境的 bin 目录下缺少 attach.dll 文件导致的。
解决方案:
11. 从 jdk 目录的 jre 里面的 bin 目录下 copy attach.dll 文件到 jre 环境的 bin 目录下;
12. 将当前所指的 jre 环境指向 jdk 里面的 jre。
1.11.5.10 当 Parameters 和 Variables 的 Name 都是“demo”,Parameters
的 Value 值会覆盖 Variables 的 Value 值吗?当 robot 命令的返回值 return 也
是“demo”,执行该命令后,会覆盖 Parameters 和 Variables 的 Name 同是
“demo”的 Value 值吗
问题:当 Parameters 和 Variables 的 Name 都是“demo”, Parameters 的 Value 值会
覆盖 Variables 的 Value 值吗?当 robot 命令的返回值 return 也是“demo”,执行该命
令后,会覆盖 Parameters 和 Variables 的 Name 同是“demo”的 Value 值吗?
解决方案:Parameters 的 Name 为“demo”时,对应的 Value 值会覆盖 Variables 的
Name 同为“demo”的 Value 值,而当某个 robot 命令的返回值 return 也是“demo”
时,执行该命令后,会覆盖 Parameters 和 Variables 的 Name 同是“demo”的 Value
值。
1.11.5.11 录制从 ie 浏览器打开的 java 小程序为什么失败?
问题:录制从 ie 浏览器打开的 java 小程序为什么失败?
解决方案:如果用户本地有 java 环境,则在系统配置的 java 环境的 jdk 文件夹下的
bin 目录下,打开 cmd 窗口,执行命令:jabswitch /enable;如果用户本地没有 java
环境,则在目标 java 程序运行的 jre 文件夹下的 bin 目录下,打开 cmd 窗口,执行命
令:jabswitch /enable。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 786
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.11.6 极少部分操作系统默认缺少 C++依赖库,而 Robot 包需要依赖
执行机系统环境中缺少的 C++库
问题:极少部分操作系统默认缺少 C++依赖库,而 Robot 包需要依赖执行机系统环境
中缺少的 C++库,就有可能引发一些问题。
解决方案:登录“https://isupcloud.huawei.com/group/newsite/app-download?appId=1927”,
找到“依赖库”文件夹 ,单击“依赖库”文件夹,再单击
下载并解压到本地磁盘,解压后打开文件夹内的 文件夹,双击
安装 C++依赖库,如下图所示:
1.11.6.1.1.1.1.1 安装 C++依赖库
勾选“我同意许可条款和条件(A)”,然后单击“安装”,如下图所示:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 787
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.11.6.1.1.1.1.2 C++依赖库安装完成
单击关闭,即完成安装 C++依赖库的安装。
1.11.7 Pandas 报错 importerror DLL load failed
【问题】
Pandas 报错 importerror DLL load failed : The specified module could not be found
【解决方法】
13. 去 github 下载 1.1.3 版本的 pandas,下载链接如下
https://files.pythonhosted.org/packages/dd/15/11efbb7b702abb3e5fe54385962bc1bab42
9ddfd1801c092b9960ea8e476/pandas-1.1.3-cp38-cp38-win_amd64.whl
14. 解压下载来的 whl 包, 一般的解压缩工具即可,选择以下路径下的两个 dll 文件,
复制
3. 将步骤 2 中复制的 2 个 dll 文件黏贴到 studio 的安装目录的如下位置
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 788
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.11.8 IE 录制常见问题
1.11.8.1 IE 浏览器没有按要求配置
问题:当录制时选择 IE 浏览器,但是 IE 浏览器没有按要求配置,然后进行录制,会
报如下错误:
错误一:
错误二:
解决方案:
IE 浏览器的本地环境配置要求:
1.点击 IE 浏览器右上角设置图标,点击 Internet 选项,点击安全,在安全标题下的四
个区域图标(Internet、本地 Intranet、受信任的站点、受限制的站点)下的的启用保护
模式选项前面的单选框需要设置为勾选或者不勾选,四个区域图标的勾选或不勾选要
保持一致;
2.点击 IE 浏览器右上角设置图标,点击缩放(Z),设置为 100%(0)。
1.11.8.2 获取的 XPATH 与 CHROME 手动获取一致,用 SELENUIM 回放无
法获取元素
【问题】
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 789
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
IE 录制,在网站 https://www.runoob.com/try/try.php?filename=tryhtml_select_multiple 录
制过程中获取 XPATH,获取的 XPATH 与 CHROME 手动获取一致,用 SELENUIM 回放
无法获取元素
【解决办法】
采用 COM_IE 方式回放
1.11.9 IE 回放常见问题
1.11.9.1 quit 命令无法关闭多选项卡
【问题】
IE 回放,新开发的 quit 命令,关闭多选项卡的 ie 浏览器时,弹出“是关闭所有标签页
还是当前标签页?”选择框,无法直接关闭
【解决办法】
15. 打开 IE 浏览器,点击右上方齿轮图标,在弹出的菜单中选择“Internet 选项”。
16. 点击上方菜单栏的“常规”。
17. 点击“选项卡”或“标签页”
18. 选择始终在新选项卡(标签页)中打开弹出窗口---从位于以下位置的其他程序打
开连接:当前选项或窗口,最后确定即可。
1.11.9.2 无法加载运行脚本或 active 控件
【问题】
IE 回放,浏览器限制此网页运行脚本或 Active 控件
【解决办法】
19. 打开 IE 浏览器,点击右上方齿轮图标,在弹出的菜单中选择“Internet 选项”。
20. 点击上方菜单栏的“高级”。
21. 勾选“允许活动内容在“我的电脑”的文件中运行*,然后点击右下方的应用按钮,
最后确定即可。
1.11.9.3 点击 IE 回放,反复出现 IE 浏览器的窗口
【问题】
点击回放,反复出现 IE 浏览器的窗口,窗口显示“This is the initial start page for the
WebDriver server”
【解决办法】
22. 打开 IE 浏览器,点击右上方齿轮图标,在弹出的菜单中选择“缩放(Z)”。
23. 点击 100%,将缩放比设置为 100%即可。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 790
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.11.9.4 点击回放报错
1、异常信息为(RobotNoSuchWindowException) exception details:Message:Error
retrieving window
【解决办法】
①打开 IE 浏览器,点击右上方齿轮图标,在弹出的菜单中选择“Internet 选项”。
②点击上方菜单栏的“安全”。
③将 Internet、本地 Internet、受信任的站点和受限制的站点这四个区域下的“启用保护
模式“选项全都勾选或全都不勾选(建议都不勾选),最后确定即可
2、异常信息为 (RobotNoSuchElementException) exception details: Element not found.其
中元素定位方式为 xpath=/HTML/BODY[1]/meta charset='utf-8'[1]/FORM[1]/SELECT[1]
【解决办法】
①采用 xpath 的相对路径和元素的属性来定位,类似 xpath=//input[@type='submit' and
@name=‘btn1’](定位 type 属性为 submit 和 name 属性为 btn1 的元素);
xpath=//div[contains(text(),'下一页')](定位文本包含下一页的元素);
②采用 css 选择器的方式来定位,类似 css=a[href*='www.***.com'](定位 href 属性包
含 www.***.com 的 a 标签);css=div#page > ul(定位 id 为 page 的 div 标签下的第一个
ul 元素);
③xpath 和 css 选择器的更多定位方式可以参考
https://www.cnblogs.com/huchong/p/10287427.html
3、回放脚本中只有一个 IE 浏览器窗口时,selectwindow 报错,异常信息为
(RobotIndexError) exception details: list index out of range
【解决办法】
以下方案选一种即可:
①打开任务管理器,找到 iexplore.exe 进程,手动结束;
②在使用 open 命令打开 IE 浏览器之前,先使用 startApp 命令(target 参数选择
application,value 参数填写“taskkill /im iexplore.exe /f”),杀掉 iexplore.exe 进程
1.11.9.5 IE 页面多个元素 ID 相同问题
复现步骤
1 打开 IE 录制,输入 HUAWEI
2 在搜索到的界面中有 ID 相同的元素,获取到的 XPATH 路径一样
如:xpath=//*[@id='1']/H3[1]/A[1]
问题影响
回放找不到元素
修复步骤
根据相同 ID 个数增加此元素索引参数 如: xpath=(//*[@id='1']/H3[1]/A[1])[2]
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 791
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.11.9.6 点击链接,打开新窗口,会重新跳转到登录界面(cookie or session
lost)
【解决办法】
以下方案选一种即可:
①打开任务管理器,找到 iexplore.exe 进程,手动结束;
②在使用 open 命令打开 IE 浏览器之前,先使用 startApp 命令(target 参数选择
application,value 参数填写“taskkill /im iexplore.exe /f”),杀掉 iexplore.exe 进程
1.11.9.7 senkeys 命令相关
【问题 1】
sendkeys 命令,往文本框中发送按键信息,光标停留在文本的最前面,但是需要光标
切换到文本的最后面
【解决办法】
使用 sendkeys 命令发送 ctrl+end 命令,入参格式为{CTRL}{END},可将光标切到末尾。
【问题 2】
sendkeys 命令,往百度搜索框中发送按键信息,第一个按键输入没有反应。
【解决办法】
百度输入框必须先触发一次才能正常输入。使用 click 命令点击一下文本框,再执行
sendkeys 命令。
1.11.9.8 IE 进程残留问题
复现步骤
1 打开 studio 软件
2 关闭 studio 软件
3 查看任务管理器进程多出一个 iexplore.exe
问题影响
1 iexplore.exe 进程过多,IE 录制功能无法正常使用
修复步骤
1 在任务管理器中 KILL 掉 iexplore.exe
1.11.9.9 com 回放报找不到命令
【问题】
录制后回放,报 exception details: line:4 Not found action:deselect,找不到命令
【解决方法】
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 792
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
com 回放不支持此命令,将此命令删除,再重新运行
1.11.9.10 com 回放 click 命令不触发
【问题】
click 点击命令,没有触发点击事件;观察到点击的位置不在视窗内或被其它元素遮挡;
【解决办法】
点击命令需要所点击元素在视窗范围内且不被遮挡。使用 scroll 命令将元素移动到视窗
范围
1.11.9.11 com 回放报入参格式校验类型的错误
【问题】
IE 回放,报入参格式校验类型的错误,但是检查入参格式无误;
【解决办法】
检查 xml 代码,命令是否配置有<properties><target>备用 target 入参。部分入参格式在
com 回放模式中不支持,删去此部分备用 target 入参,即可报出真实错误原因。
在存在备用 target 入参的时候,如果命令执行失败,会依次替换备用的 target 入参继续
执行。最后执行失败时,如果执行时 com 回放模式不支持的备用 target 入参,即会报
入参格式校验错误。
1.11.9.12 com 模式元素定位格式不匹配
【问题】
报错 Parameter verification failed! The element location mechanism not support.
【解决办法】
检查 xpath 路径后是否多了回车符
1.11.9.13 点击弹框命令,弹框被阻止,导致接下来的流程出现问题
【解决办法】取消启动弹出窗口阻止程序
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 793
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.11.10 Jab 录制和回放常见问题
【问题】
Jab 第一次录制,录制时没有红框识别不了控件
【解决方法】
1、检查 Studio 和 IE 是否都为管理员启动或者都为非管理员启动;
2、检查本地环境 jabswitch 状态是否为 enable:
2.1、找到本地 jdk 安装目录,打开 jdk 目录下的 bin 文件夹
2.2、在当前目录打开 cmd 窗口,输入命令:jabswitch.exe /enable
回车,输出结果:”The Java Access Bridge has been enabled.“
【问题】
Jab 回放时,报错:”Check whether the target is correct or the jabswitch status is enable.“
【解决方法】
同上
1.11.11 Chrome 和 firefox 浏览器录制回放相关
1.11.11.1 firefox 浏览器,使用本地配置时(use_local_config 为 True),本
地配置为中文,自动化打开的窗口有部分窗口的浏览器界面不是中文
解决方案:
1.这是由于 firefox 卸载后,对应的配置文件不会随之删除,安装其他版本的 firefox,
由于配置文件的路径依然存在,不会新生成配置文件,而是继续使用以前的配置文件。
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 794
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
2. 如果需要卸载 firefox,请将原来的配置文件一起删除(路径为
C:\Users\Administrator\AppData\Roaming\Mozilla),再安装其他版本的 firefox
1.11.11.2 项目使用 firefox 浏览器进行回放,使用本地浏览器配置
(use_local_config 为 True),本地语言修改为英语(英国),在回放时点击一
个链接跳转到一个新窗口后,浏览器的语言显示为中文
【解决办法】
在 firefox 浏览器的“选项”设置中,将本地语言由英语(英国)改为英语(美国);
1.11.11.3 web 元素捕获,firefox 浏览器捕获插件安装步骤:
24. 打开设置 - 附加组件
25. 点击右上角的设置图标 : 调试附加组件
26. 点击临时载入附加组件,选择 studio 安装目录 public\extension\AntRobot UI
Selector.zip 文件。因捕获插件没有上传到 firefox 应用商店,所以,每次重启浏览
器,都要手动加载一次插件。不建议使用 firefox 浏览器,请改用 chrome 浏览器。
1.11.11.4 Chrome 回放控件抓取插件无效
【问题】
安装 studio 之后使用 chrome 的控件抓取插件时,没有效果
【解决方案】
1.安装 studio 之后,需要关闭已经打开的 chrome 浏览器
2.打开 chrome 浏览器
3.点击更多工具
4.点击扩展程序
5.刷新页面
1.11.11.5 Chrome 回放提示加载插件失败
【问题】
在 window2012server 机器上,使用 open 命令打开网页,加载 UI selector 插件时,右下
角提示"加载插件失败,点击此处重新加载插件"的消息框,网页显示空白,无法打开
网页,异常信息为"failed to wait for extension background page to load: chrome-
extension://******/_generated_background_page.html";
这个问题并不是在所有的 window2012server 机器上都出现,可能是由于权限以及安全
性的问题,
【解决办法】
1 丶未使用 new_browser 命令打开 chrome:在项目属性的 driver_options_arguments 上
添加--no-sandbox(项目启动参数);
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 795
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
2 丶使用 new_browser 命令打开 chrome:需要先选择 selenium_driver_type 参数为
chrome,在选择后出现的 driver_options_arguments 参数上添加--no-sandbox(项目启动
参数);
1.11.11.6 当在 web 自动化流程中下载 exe,msi 或 bat 等可能涉及计算机安全
的文件类型时,左下角会出现浏览器的安全弹框,显示“此类型的文件可能会
损害您的计算机。您仍然要保留 xxx 吗?"
【解决办法】
1 丶在项目属性或者 new_browser 命令的 experimental_option 参数上,配置:
{"prefs":{"safebrowsing.enabled": true}};
2、在项目属性或者 new_browser 命令的 experimental_option 参数上,配置:
{"prefs":{"download.prompt_for_download": false,
"safebrowsing_for_trusted_sources_enabled": "false", "safebrowsing.enabled": true,
"download_restrictions": 0}};在 driver_options_arguments 参数上,配置:--
safebrowsing-disable-download-protection;--safebrowsing-disable-extension-blacklist;
1.11.12 windows7、8、2012server 常见问题
1.11.12.1 在 2012server 操作系统的执行机中,由于系统缺少中文字体库,当
工程 xml 中命令描述等使用中文时,可能导致 robot 及 studio 的终端日志输出
不了中文,从而导致回放时终端日志显示异常
问题:在 2012server 操作系统的执行机中,由于系统缺少中文字体库,当工程 xml 中
命令描述等使用中文时,可能导致 robot 及 studio 的终端日志输出不了中文,从而导
致回放时终端日志显示异常。
解决方案:建议在 2012server 操作系统的执行机中,工程 xml 中全部使用英文。
1.11.12.2 Window7,ImportError: DLL load failed while importing
win32api:参数错误
错误信息截图如下:
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 796
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
解决方法:
1.安装 vc_redist.exe,下载链接:
https://www.microsoft.com/en-us/download/details.aspx?id=48145;
2.安装补丁 KB3063858:
32-bit: https://www.microsoft.com/en-us/download/details.aspx?id=47409
64-bit: https://www.microsoft.com/en-us/download/details.aspx?id=47442
3.运行 Robot,可以正常运行。
1.11.12.3 citrix 报“DLL load failed:找不到指定的模块”错误,如下图红框
所示,windows2008 和 windows2012 环境下分别怎么解决
问题:citrix 报“DLL load failed:找不到指定的模块”错误,如下图红框所示,
windows2008 和 windows2012 环境下分别怎么解决?
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 797
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
解决方案:
Windows2008 环境下用户先打开或关闭 Windows 功能(控制面板-程序和功能-打开或
关闭 Windows 功能),然后跳过角色屏幕,直接进入功能屏幕,最后在“用户界面和
基础结构”下的“桌面体验”前面打勾,就可以解决该问题;
Windows2012 环境下用户需要打开 PowerShell 并执行“Import-Module
ServerManager”和“Install-WindowsFeature Server-Media-Foundation”就可以解决
该问题。
1.11.12.4 中文乱码问题 windows Server 2012 系统默认就是英文的,desc 为
中文或项目路径带中文时可能出现乱码、错误等
问题:中文乱码问题 windows Server 2012 系统默认就是英文的,desc 为中文或项目路
径带中文时可能出现乱码、错误等。
解决方案:在控制面板中,区域设置,英语(美国)改为简体中文
1.11.12.5 windows server2012 在全局 license 的情况下或加解密或管理中心操
作下的相关原子命令,报错 RobotConnectionError("Communication with
Studio or Agent failed.")
【问题】
windows server2012 在全局 license 的情况下或加解密或管理中心下操作的相关原子命
令,报错 RobotConnectionError("Communication with Studio or Agent failed.")
【解决方案】
Chrome 为例:
27. 设置--打开代理设置
28. 点击上方菜单栏的“连接”,点击局域网设置
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 798
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
29. 点击“高级”
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 799
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
30. 找到“对于下列字符开头的地址不使用代理服务器(N)下的编辑框配置:
127.0.0.1
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 800
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
1.11.13 web 元素捕获,firefox 浏览器捕获插件安装步骤:
31. 打开设置 - 附加组件
32. 点击右上角的设置图标 : 调试附加组件
33. 点击临时载入附加组件,选择 studio 安装目录 public\extension\AntRobot UI
Selector.zip 文件。因捕获插件没有上传到 firefox 应用商店,所以,每次重启浏览
器,都要手动加载一次插件。不建议使用 firefox 浏览器,请改用 chrome 浏览器。
1.11.14 路径参数如何使用特殊字符
【问题】
路径参数如何使用特殊字符
【解决办法】
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 801
RPA
RPA 机器人开发指南 1RPA 机器人开发指南
由于增加安全校验,对于所有路径参数进行了参数校验,路径内包括文件名不能有以
下特殊字符:r"\..", r"\.", "/..", "/.", "~", "#", "%", "&", "?", "<", ">", "|", "!", "$", "^", ";",
若路径中有除 r"\..", r"\.", "/..", "/."这四种字符时,可使用 filerename 命令进行重命名
1.11.15 Studio 高缩放比下显示问题
右键打开应用程序属性,选择兼容性,点击更改高 DPI 设置,如图配置
文档版本 01 (2021-03-24) 版权所有 © 华为技术有限公司 802
Note:The preview effect may be slightly different from that of the source document. You can download the document and view it on your local PC.