Links

RPA

RPA

单从概念上说:机器人流程自动化(Robotic process automation),指的是依托机器人流程自动化技术的电脑程序,代替人类用来自动执行任务,以达到快速降低成本、提升表现的目的。最适合采用这类技术的是涉及大量重复性手工处理、有固定规则、结构化数据较多的机构,比如金融财务服务行业。RPA 能够替代人工,将繁琐的业务操作流程自动化,并更加精准地完成工作。

背景特性

以最常见的 RPA 财务分析机器人为例,处理财务分析报表时,机器人会打开指定的企业财务数据页面,一键提取页面中相应的数据信息,并自动汇总在表格软件当中。一些功能较多的 RPA 软件甚至可以将汇总好的表格数据自动生成柱状图、饼图等,并直接按照要求置入 PPT 文件里,大部分需要人工几小时甚至十几小时完成的任务,RPA 软件可以在几分钟之内搞定,极大程度上缩短业务流程。当然,这只是财务分析业务这一种 RPA 机器人的案例,在其他领域还有更多不同的 RPA 软件能够提供相应的服务。如果只看上面的案例,可能会有读者认为 RPA 与 AI 并无差别,但实际上,RPA 从技术层面来说并不能等同于人工智能,只是在很多环节上会用到人工智能的技术。
当机器人打开需要分析的企业财务页面时,就会用到人工智能中的 NLP(自然语言处理)技术,识别页面中企业名称、财务数据等相关字段,从而更加精准的整理成表格文件。

技术分析

RPA 要实现的最核心的功能是通过模拟人类手工在电脑的操作,包括键盘、鼠标的输入等等,以达到节省人工操作、提升效率的目的,所以模拟技术可以说是 RPA 的核心之一。
多数主流 RPA 产品采用的技术主要有以下几种:
  • 利用 WIN32 API 基于屏幕坐标点进行鼠标的移动点击拖放以及键盘操作;
  • 利用 WIN32 API 获取句柄从而在鼠标光标不动情况下直接操作 windows OS 上运行的任意窗体及其内的控件;
  • 利用 IE DOM 类库在鼠标光标不动情况下直接操作 IE 浏览器所打开的网页中的 HTML 元素;
  • 利用图像识别和 OCR 技术基于屏幕区域截图比对来获取屏幕坐标位置并用 WIN32 API 触发鼠标键盘操作。