背景
此前,该主题已在 Habré 上详细介绍过
RPA 领域现有的顶级 IT 解决方案(UI Path、Blueprism、Automation Anywhere 等)有 2 个重大问题:
- 问题 1:创建机器人脚本时平台功能的技术限制 仅 在图形界面中(是的,有调用程序代码的能力,但这种能力有很多限制)
- 问题 2:销售这些解决方案的许可政策极其昂贵(对于顶级平台 一个持续工作的机器人每年大约需要 8000 美元)。 制造十几个机器人,每年以许可费的形式获得一大笔收入。
由于这个市场非常年轻且非常活跃,现在您可以在 Google 上轻松找到 10 多个具有不同定价政策的机器人解决方案。 但直到最近,还不可能找到功能齐全的开源解决方案。 此外,我们特别讨论的是功能齐全的开源,因为可以找到部分免费的机器人化解决方案,但它们只提供了 RPA 概念所基于的部分关键技术。
RPA概念基于什么?
机器人流程自动化 (
RPA 工具基于以下技术:
- 管理打开的浏览器网页;
- 管理开放桌面 GUI 应用程序;
- 鼠标和键盘控制(按键、热键、鼠标按钮、移动光标);
- 在桌面屏幕上搜索图形元素以使用鼠标和/或键盘应用进一步的操作;
凭借多年的实践经验,我们已经能够证明,这套特殊的技术使我们能够实现几乎任何不需要人工智能识别/应用元素的业务流程的机器人化(在这些情况下,有必要将现有 IT 世界中可用的相应库连接到机器人)。 缺少上述工具中的至少一种会严重影响 RPA 的功能。
毕竟,所有 RPA 工具都可以在互联网上找到。 那么缺少什么呢?
但最重要的是缺失了——他们的完整性缺失了。 完整性,这将使您能够实现在一个机器人脚本中使用各种工具(Web、GUI、鼠标、键盘)的协同效应,这在开发过程中通常是必需的(如实践所示)。 所有顶级RPA平台都提供这个关键机会,现在这个机会已经开始提供
OpenRPA 是如何工作的?
关键库列表:
- pywinauto;
- 硒;
- 键盘;
- pyautogui
由于所有库都不知道彼此的存在,因此 OpenRPA 实现了 RPA 平台最重要的功能,即允许它们一起使用。 当使用 pywinauto 库管理桌面 GUI 应用程序时,这一点尤其明显。 在这一领域,该库的功能已扩展到最佳 RPA 平台中提供的功能级别(GUI 应用程序的选择器、位独立性、选择器创建工作室等)。
结论
如今,现代 IT 世界对每个人都如此开放,甚至很难想象仍然存在只有付费许可解决方案占主导地位的领域。 由于这个许可政策极大地限制了这个领域的发展,我希望我们能够扭转这种局面:让任何公司都买得起RPA; 让我们的IT同事无论所在地区的经济状况如何,都可以轻松找到RPA的工作(今天,经济薄弱的地区买不起RPA)。
如果您对这个主题感兴趣,那么将来我可以专门为 Habr 创建一个关于使用 OpenRPA 的教程 - 写在评论中。
谢谢大家,祝你有美好的一天!
来源: habr.com