我们拒绝付费 RPA 平台并基于开源(OpenRPA)

背景

此前,该主题已在 Habré 上详细介绍过 Python 中的桌面 GUI 应用程序自动化。 当时我对这篇文章非常感兴趣,因为它揭示了与创建机器人的元素类似的元素。 由于我的专业活动的性质,我参与了公司业务流程的机器人化(RPA 是一个直到最近才出现功能齐全的开源类似物的领域),因此这个主题与我非常相关。

RPA 领域现有的顶级 IT 解决方案(UI Path、Blueprism、Automation Anywhere 等)有 2 个重大问题:

  • 问题 1:创建机器人脚本时平台功能的技术限制 在图形界面中(是的,有调用程序代码的能力,但这种能力有很多限制)
  • 问题 2:销售这些解决方案的许可政策极其昂贵(对于顶级平台 一个持续工作的机器人每年大约需要 8000 美元)。 制造十几个机器人,每年以许可费的形式获得一大笔收入。

由于这个市场非常年轻且非常活跃,现在您可以在 Google 上轻松找到 10 多个具有不同定价政策的机器人解决方案。 但直到最近,还不可能找到功能齐全的开源解决方案。 此外,我们特别讨论的是功能齐全的开源,因为可以找到部分免费的机器人化解决方案,但它们只提供了 RPA 概念所基于的部分关键技术。

RPA概念基于什么?

机器人流程自动化 (机器人过程自动化)是实现目标的最具成本效益的形式之一。 由于RPA并不涉及放弃公司的各种遗留系统,而是基于这些系统制作必要的自动化脚本,这在开发速度方面都取得了成果(因为不需要重做现有的系统动物园)就业务成果而言(节省 个人雇员/全职员工,增加公司的收入,减少公司的开支)。

RPA 工具基于以下技术:

  • 管理打开的浏览器网页;
  • 管理开放桌面 GUI 应用程序;
  • 鼠标和键盘控制(按键、热键、鼠标按钮、移动光标);
  • 在桌面屏幕上搜索图形元素以使用鼠标和/或键盘应用进一步的操作;

凭借多年的实践经验,我们已经能够证明,这套特殊的技术使我们能够实现几乎任何不需要人工智能识别/应用元素的业务流程的机器人化(在这些情况下,有必要将现有 IT 世界中可用的相应库连接到机器人)。 缺少上述工具中的至少一种会严重影响 RPA 的功能。

毕竟,所有 RPA 工具都可以在互联网上找到。 那么缺少什么呢?

但最重要的是缺失了——他们的完整性缺失了。 完整性,这将使您能够实现在一个机器人脚本中使用各种工具(Web、GUI、鼠标、键盘)的协同效应,这在开发过程中通常是必需的(如实践所示)。 所有顶级RPA平台都提供这个关键机会,现在这个机会已经开始提供 第一个开源 RPA 平台 OpenRPA

OpenRPA 是如何工作的?

开放式RPA 是一个基于 Python 3 编程语言的开源项目,它由现有的最佳 Python 库组成,可让您实现必要的 RPA 平台工具(请参阅上面的关键 RPA 工具列表)。

关键库列表:

  • pywinauto;
  • 硒;
  • 键盘;
  • pyautogui

由于所有库都不知道彼此的存在,因此 OpenRPA 实现了 RPA 平台最重要的功能,即允许它们一起使用。 当使用 pywinauto 库管理桌面 GUI 应用程序时,这一点尤其明显。 在这一领域,该库的功能已扩展到最佳 RPA 平台中提供的功能级别(GUI 应用程序的选择器、位独立性、选择器创建工作室等)。

结论

如今,现代 IT 世界对每个人都如此开放,甚至很难想象仍然存在只有付费许可解决方案占主导地位的领域。 由于这个许可政策极大地限制了这个领域的发展,我希望我们能够扭转这种局面:让任何公司都买得起RPA; 让我们的IT同事无论所在地区的经济状况如何,都可以轻松找到RPA的工作(今天,经济薄弱的地区买不起RPA)。

如果您对这个主题感兴趣,那么将来我可以专门为 Habr 创建一个关于使用 OpenRPA 的教程 - 写在评论中。

谢谢大家,祝你有美好的一天!

来源: habr.com

添加评论