Skip to content

UiPath 自动化

UiPath RPA(机器人流程自动化)开发经验与实践总结。

什么是 RPA?

RPA (Robotic Process Automation) 是一种通过软件机器人模拟人类操作的技术,可以自动执行:

  • 数据录入与搬运
  • 报表生成与分发
  • 系统间数据同步
  • 邮件批量处理

UiPath 核心组件

组件功能
UiPath Studio可视化流程设计器
UiPath Robot执行自动化流程
UiPath Orchestrator管理和调度机器人
UiPath Assistant用户端机器人入口

常用活动(Activities)

数据操作

活动功能场景
Read Range读取 Excel 区域导入表格数据
Write Range写入 Excel 区域导出处理结果
Filter Data Table筛选数据表按条件过滤行
For Each Row遍历数据行逐行处理数据
Add Data Row添加行动态构建表格

界面自动化

活动功能
Click点击界面元素
Type Into在输入框输入文字
Get Text获取元素文本
Element Exists判断元素是否存在
Send Hotkey模拟快捷键

流程控制

活动功能
If条件分支
Switch多分支选择
Try Catch异常处理
Retry Scope失败重试
Parallel并行执行

项目结构最佳实践

MyProject/
├── Main.xaml              # 主流程入口
├── Framework/
│   ├── InitAllSettings.xaml   # 初始化配置
│   ├── KillAllProcesses.xaml  # 清理进程
│   └── CloseAllApplications.xaml
├── Process/
│   ├── GetTransactionData.xaml  # 获取待处理数据
│   └── ProcessTransaction.xaml  # 核心业务处理
├── Data/
│   ├── Config.xlsx           # 配置文件
│   └── Template.xlsx         # 模板文件
└── Exceptions/
    └── BusinessRuleException.xaml

REFramework(推荐架构)

UiPath 官方推荐的企业级框架:

初始化 (Init)

获取事务数据 (Get Transaction Data)

处理事务 (Process Transaction)

  ├── 成功 → 回到获取下一事务
  ├── 业务异常 → 记录日志,跳过
  └── 系统异常 → 重试(最多 3 次)

结束 (End Process)

选择器(Selector)优化

xml
<!-- 不稳定的选择器 -->
<wnd cls='Chrome' title='Google Chrome' />
<html tag='INPUT' idx='3' />

<!-- 优化后的选择器 -->
<wnd cls='Chrome' title='*' />
<html tag='INPUT' id='username' />

优化原则:

  1. 使用 idname 等稳定属性
  2. 避免使用 idx(位置索引)
  3. 标题用通配符 * 处理动态变化
  4. 优先使用 CSS Selector 或 Fuzzy Selector

调试技巧

  1. 断点调试:在关键步骤设置断点,逐步执行
  2. 日志输出:使用 Log Message 记录中间结果
  3. 高亮显示Highlight 活动标记目标元素
  4. 慢速执行:设置步骤间延迟(Debug → Slow Step)
  5. 局部运行:选中部分活动右键 → Run Selected Activities

开发建议

  • 将重复逻辑封装为可复用的 Invoke Workflow 组件
  • 配置数据统一存储在 Config.xlsx 或 Orchestrator Assets
  • 每个流程添加完善的异常处理和日志记录
  • 使用 Orchestrator Queue 处理批量事务

用知识连接未来