🤖 第一章 Agent与RPA基础
📄 一句话概括

桌面软件自动化 = 让机器人操作那些没有网页版的程序(Excel/WPS、ERP、微信、钉钉、财务软件)——元素识别比网页难一档,但用对方法(属性优先、快捷键兜底)依然可靠,而且它是国内办公场景里价值最高的一块。

📝 本节和前面几节的关系

1.5.3 管浏览器里的世界,本节管【屏幕上的其他一切窗口】。两者的方法论是同一套(定位元素 → 操作 → 等待 → 异常处理),只是桌面环境的识别更难、兜底手段更多。学完本节,1.5 这条线就完整了,1.6 开始把 Agent 与 RPA 接起来。

一、桌面自动化的两类对象

类型 例子 识别难度 说明
现代桌面程序(支持自动化接口的) WPS/Office、多数业务系统客户端 中 能用【属性定位】,稳定
老旧或自绘界面的程序 老 ERP、某些行业软件、游戏化界面 高 属性取不到,要退回图像/坐标

判断方法:拾取元素时,如果平台能高亮出细粒度的控件(按钮、输入框分开),说明它支持属性定位;如果只能框出一整块区域,那就是自绘界面,得用别的手段。

二、三大主力场景

① 表格处理(最高频) Excel/WPS 的读写、公式计算、拆分合并、格式整理。 关键提醒:能用 Excel 自身的能力就用它(平台的 Excel 组件直接操作单元格和公式),不要靠【模拟鼠标点单元格】——后者慢且脆。

② 业务系统操作(价值最高) 老 ERP 里录入单据、查询数据、导出报表。 这类系统的自动化是 RPA 的看家本领——因为它没有 API,只有界面(1.4.1 讲过的那个核心价值)。

③ 通讯工具(最需谨慎) 微信、钉钉里发消息、拉群、传文件。 价值大,风险也大——平台通常有专门的安全策略,且【对外发消息】属于不可逆操作,必须留人工确认。

三、四个提高稳定性的技巧(本节的干货)

技巧 1:快捷键优先于鼠标 能用 Ctrl+C/Ctrl+V/Ctrl+S/Enter 完成的,优先用快捷键。 理由:快捷键不受窗口位置、分辨率、控件位置影响,稳定性高一个数量级。很多老 RPA 工程师的秘诀就是:能用键盘就不用鼠标。

技巧 2:善用剪贴板 【读界面文字】有时很难,但【选中 → 复制 → 读剪贴板】几乎总是可行。这是处理自绘界面的万能兜底。

技巧 3:图像识别只做兜底,且要做得讲究 如果必须用图像匹配:① 截图只截最小特征区域(别截整个窗口);② 尽量选不随主题/语言变化的图标;③ 记录当前分辨率与缩放比例(换台电脑可能就失效)。

技巧 4:让窗口状态可预期 每次操作前先把窗口激活、最大化,并确认焦点在哪。桌面自动化的多数故障来自【点错窗口】或【输入框没聚焦】。

四、一个必须理解的现象:抢焦点

桌面自动化和网页自动化的一个重大区别:桌面程序通常只有一个前台窗口,谁在前面谁收键盘。

后果:

这条决定了桌面自动化的典型部署方式:一台常年开机的电脑 + 定时任务——这也解释了为什么很多公司的 RPA 是【一台电脑专门跑流程】。

五、动手 Demo:批量整理文件(不依赖任何业务软件)

选这个 Demo 是因为文件管理是最安全、最容易看到效果的桌面场景(不碰真实业务系统)。

准备:建一个测试文件夹,往里放 10~15 个各种类型的文件(txt/png/pdf 混着),别用真实资料。

第一步——目标:把文件按【扩展名】自动分到子文件夹里(图片放【图片】,文档放【文档】,其余放【其他】)。

第二步——结构设计(沿用 1.5.2 的三结构):

1. 获取文件夹下所有文件                    → 变量:文件列表
2. 循环 文件列表 中的每一个 文件
     2.1 取扩展名(如 .png)
     2.2 判断扩展名属于哪一类
           .png/.jpg/.jpeg/.gif  → 【图片】
           .txt/.pdf/.docx       → 【文档】
           其他                   → 【其他】
     2.3 若目标文件夹不存在则创建
     2.4 移动文件
3. 输出处理结果(各类分别移动了多少个)

第三步——运行。

看到什么算成功:测试文件夹里出现三个子文件夹,文件按类型归位;日志里能看到每个文件的处理记录。

读结果:

  1. 跑第二遍会怎样?——这是幂等性的好实验:第二遍应该【没有文件可处理】或【文件已在正确位置】,而不是报一堆错。如果你的流程第二遍就崩了,说明没考虑【已经处理过】的情况(1.4.2 第 4 条误区讲的就是它);
  2. 故意放一个被占用的文件(先打开一个 txt 不关),再跑一遍——看它怎么处理【文件被占用】这个典型异常;
  3. 把它设成定时任务(每天中午跑一次):走到这一步,你就完成了【桌面自动化】的完整闭环,而且这是完全安全的练习。

30 秒实验

打开一个 Excel/WPS 表格,不用鼠标,只用键盘完成一件事:选中 A1 单元格 → 输入一个数 → 保存。

参考路径:Ctrl+Home(跳到 A1)→ 打字 → Ctrl+S。

结论:纯键盘可以完成大量操作——而键盘操作正是桌面自动化最稳的实现方式。开始有意识地留意你常用的快捷键,它们就是你未来的流程组件。

常见误区

  1. 【桌面自动化和网页自动化一样好做】——桌面更难:元素识别难、抢焦点、弹窗干扰多。所以优先选【有网页版的场景】,桌面只用在没有替代方案时。
  2. 【用鼠标点击单元格来操作 Excel】——效率极低且脆。用平台的 Excel 组件(直接读写单元格、执行公式)。
  3. 【图像识别很强大,可以解决一切】——它是最脆的一种:分辨率、缩放、主题、语言一变就失效。能不用就不用。
  4. 【流程跑的时候我还能同时用电脑】——桌面程序只有一个前台窗口,你一动鼠标就可能打断流程(或被流程抢走焦点)。跑流程时要么离开,要么另开一台机器。
  5. 【自动化发消息很方便,先做这个】——对外发消息不可逆,且平台有风控策略。本课的规矩:凡是对外动作(发消息、发帖子、提交单据)必须留人工确认点。
自测三问(点开对答案) 1. **桌面自动化的四个稳定性技巧是什么?** ① 快捷键优先于鼠标;② 善用剪贴板兜底;③ 图像识别只做兜底且要截最小特征区域;④ 每次操作前把窗口状态弄可预期(激活、最大化、确认焦点)。 2. **为什么说【键盘操作比鼠标操作稳】?** 因为快捷键**不受窗口位置、分辨率、控件位置变化的影响**——鼠标点击依赖坐标或元素定位,这两样都比【按一个组合键】脆弱得多。**能用键盘就不用鼠标**是行业老手的口头禅。 3. **桌面自动化的典型部署方式是什么?为什么?** **一台常年开机的电脑 + 定时任务**。因为桌面程序只有一个前台窗口,**流程运行时人不能同时操作**,且弹窗会打断流程——所以需要在专门的机器上、或无人使用的时间段运行。

相关笔记