CN113176920A - 一种通用的rpa元素选择器管理系统 - Google Patents
一种通用的rpa元素选择器管理系统 Download PDFInfo
- Publication number
- CN113176920A CN113176920A CN202110472907.8A CN202110472907A CN113176920A CN 113176920 A CN113176920 A CN 113176920A CN 202110472907 A CN202110472907 A CN 202110472907A CN 113176920 A CN113176920 A CN 113176920A
- Authority
- CN
- China
- Prior art keywords
- selector
- rpa
- library
- management system
- nodes
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000012795 verification Methods 0.000 claims abstract description 5
- 238000000034 method Methods 0.000 claims description 4
- 238000012423 maintenance Methods 0.000 abstract description 2
- 238000000926 separation method Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 5
- 238000004801 process automation Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种通用的RPA元素选择器管理系统,包括:虚拟顶点,所述虚拟顶点为RPA项目的起始点;组件顶点,所述组件顶点包含选择器元素,且组件顶点表示组件顶点要操作(点击/获取焦点/输入文本/获取文本等)的界面元素;选择器库,所述选择器库与选择器库Id之间一一对应,且选择器库其中包含了目录节点和选择器节点。该通用的RPA元素选择器管理系统,利用选择器管理器可以创建选择器库,可以实现RPA项目和选择器元素的分离,避免更新一个或多个项目同一个选择器元素多次,极大地提升了项目实施维护人员的效率,使得选择器库更易于在不同项目实施人员之间共享,选择器库提供了验证机制,容易知道哪些选择器元素需要更新。
Description
技术领域
本发明涉及RPA元素选择器管理技术领域,更涉及选择器库和选择器管理器技术领域,具体为一种通用的RPA元素选择器管理系统。
背景技术
RPA(Robotic Process Automation),即机器人流程自动化。它是替代人工的一种工作方式,用于解放人力于重复冗杂和有规则的工作流中。实现机器人流程自动化指的是非侵入式的自动化,即采用不同的识别技术来定位目标元素,而非注入代码的形式。
准确定位目标元素是所有RPA产品的核心。当前几乎所有RPA产品都通过选择器元素(Selector)描述目标元素的特征,然后根据这些特征定位目标元素,并在目标元素上完成点击、输入文本等操作。然而软件版本的升级可能导致原本目标元素特征发生改变,导致已有选择器元素无法描述目标元素,定位目标元素失败。
首先当一个目标元素大量分布在一个或多个项目的不同部分时,项目维护者需要一个一个重新修改这些目标元素的选择器元素,这无疑给项目维护者带来了巨大负担。其次,目前所有的RPA产品不同项目间都没法做到共享选择器元素。对比一般的软件开发,如果可以将大量项目之间常用的选择器元素提取到一个公共库中,也可以减少项目开发维护者的工作量;
因此,我们提出一种通用的RPA元素选择器管理系统,以便于解决上述中提出的问题。
发明内容
本发明的目的在于提供一种通用的RPA元素选择器管理系统,以解决上述背景技术提出的目前当一个目标元素大量分布在一个或多个项目的不同部分时,项目维护者需要一个一个重新修改这些目标元素的选择器元素,这无疑给项目维护者带来了巨大负担。其次,目前所有的RPA产品不同项目间都没法做到共享选择器元素。对比一般的软件开发,如果可以将大量项目之间常用的选择器元素提取到一个公共库中,也可以减少项目开发维护者的工作量的问题。
为实现上述目的,本发明提供如下技术方案:一种通用的RPA元素选择器管理系统,包括:
虚拟顶点,所述虚拟顶点为RPA项目的起始点;
组件顶点,所述组件顶点包含选择器元素,且组件顶点表示组件顶点要操作(点击/获取焦点/输入文本/获取文本等)的界面元素;
选择器库,所述选择器库与选择器库Id(Store Id)之间一一对应,且选择器库其中包含了目录节点((Folder Node))和选择器节点(Selector Node)。
优选的,所述目录节点为选择器库中的内部节点,且目录节点合理地对选择器节点进行分类组织。
优选的,所述选择器节点为选择器库中的叶子节点,且选择器节点保存了选择器库的具体内容,其中包含Id域(Selector Id)和选择器内容域(Selector Content);
其中Id域是一个全局唯一标识符(GUID),且唯一表示该选择器库;
其中选择器内容域保存了选择器库对应的内容,且其描述了对应元素的主要特征。
优选的,所述组件顶点通过持有一个具体Id表示引用了某个选择器;
其中若多个组件引用同一个选择器,则这些组件将引用同一个Id。
优选的,所述RPA项目可关联多个选择器库,且RPA项目添加关联选择器库只需在对应的项目配置中增加选择器库所在位置;
其中项目配置文件中关于选择器库的位置信息支持多种格式,包括本地文件格式、网络文件格式。
优选的,所述选择器库嵌入设置验证机制,且其用于验证选择器库中哪些元素需要更新的PRA项目,该RPA项目所有组件所使用的所有选择器元素构成的集合和选择器库中所有选择器节点中的选择器元素构成的集合完全相等。
优选的,所述RPA项目若正常运行并结束,则说明选择器库中的所有选择器节点无需进行更新;
所述RPA项目运行过程中若出现错误,则说明选择器库中存在选择器节点需要进行更新,其中RPA项目会中断,并提示当前出现错误的组件是哪一个,且根据向导修改出现错误的组件,再次验证其有效性,再重复上述步骤,直至全部元素有效。
与现有技术相比,本发明的有益效果是:该通用的RPA元素选择器管理系统;
1.利用选择器管理器可以创建选择器库,选择器库中可以包含项目中所有的选择器元素,由于选择器库中的选择器元素都被分配了一个唯一的Id号,可以实现RPA项目和选择器元素的分离,这避免了更新一个或多个项目同一个选择器元素多次,极大地提升了项目实施维护人员的效率;
2.由于选择器管理器支持网络路径,使得选择器库中的选择器元素不局限于本机,使得选择器库更易于在不同项目实施人员之间共享;
3.由于选择器库提供了验证机制,使得软件版本升级以后,项目维护人员更容易知道哪些选择器元素需要更新,而不是选择更新选择器库中的所有元素。
附图说明
图1为本发明一个具体的RPA项目的示意图;
图2为本发明选择器库示意图;
图3为本发明更新选择器库中的选择器节点后,对应节点所含内容的变化示意图;
图4为本发明引入选择库后,RPA项目中各个组件所包含内容的变化示意图;
图5为本发明一个关联一个本地选择器库,和一个远程选择器库的项目配置文件的内容示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1-5,本发明提供一种技术方案:一种通用的RPA元素选择器管理系统,包括:
虚拟顶点,所述虚拟顶点为RPA项目的起始点;
组件顶点,所述组件顶点包含选择器元素,且组件顶点表示组件顶点要操作(点击/获取焦点/输入文本/获取文本等)的界面元素
选择器库,所述选择器库与选择器库Id(Store Id)之间一一对应,且选择器库其中包含了目录节点((Folder Node))和选择器节点(Selector Node)。
进一步的,如图1中所示,每个RPA项目都由若干个顶点和若干条边共同构成一张图G=(V,E)。图G的顶点集V可以分为虚拟顶点和组件顶点。其中虚拟顶点带有标识符Start,代表每个RPA项目的起始点。组件顶点可能包含选择器元素,表示组件顶点要操作(点击/获取焦点/输入文本/获取文本等)的界面元素,图1其中含有1个点击A元素的顶点,1个点击B元素的顶点,以及一个获取A元素文本的顶点,
同时在某次软件版本更新后元素A的Name特征由A变成了A*,元素B的Name特征未发生改变;此时组件1和组件2所包含的关于元素A的选择器元素的信息如果没有发生改变,则组件1和组件2都无法定位到元素A,都会执行失败。为了使RPA项目可以执行,需更新所有使用元素A的组件选择器元素(组件1和组件2);
进一步如图2所示,将RPA项目使用的所有选择器元素组织到一颗树形结构构成的选择器库(Selector Store)上,一个选择器库对应一个选择器库Id(Store Id),其中包含了目录节点((Folder Node))和选择器节点(Selector Node)。目录节点是选择器库中的内部节点,旨在合理地对选择器节点进行分类组织,例如根据应用名称,页面名称定义多重目录节点。选择器节点作为选择器库中的叶子节点,保存了选择器的具体内容,包含Id域(Selector Id)选择器内容域(Selector Content)。其中Id域是一个全局唯一标识符(GUID),可以唯一表示这个选择器。选择器内容域保存了选择器对应的内容,描述了对应元素的主要特征,在更新选择器库中的选择器节点后,对应节点所含内容的变化如图3中所示,从图中可知更新操作不会更改节点对应的Selector Id,只会更新选择器节点的内容;
而由于Id域可以唯一表示一个选择器,因此组件顶点可以通过持有一个具体Id表示引用了某个选择器。如果多个组件引用同一个选择器,则这些组件将引用同一个Id;
在引入选择库后,RPA项目中各个组件所包含内容的变化如图4所示中。由图可知,每个组件不再包含具体的选择器内容,取而代之的是选择器库中的Store Id和SelectorId。这使得所有操作相同控件元素的组件中都含有相同的Store Id和Selector Id。因此在软件版本升级之后,只需要更新Store Id对应的选择器库中Selector Id对应的选择器节点中的内容,就可以避免RPA项目在软件版本升级以后出现元素定位失败的问题。
进一步地,为了使已有的选择器库可跨RPA项目使用,任意RPA项目可关联多个选择器库。RPA项目添加关联选择器库只需在对应的项目配置中增加选择器库所在位置。项目配置文件中关于选择器库的位置信息支持多种格式,包括本地文件格式、网络文件格式。如图5中就显示了一个关联一个本地选择器库,和一个远程选择器库的项目配置文件的内容。
此外,为了在软件版本升级后,无需更新RPA项目所关联的选择器库中所有选择器元素。我们还为选择器库提供了验证机制。具体地,我们通过为选择器库设计一个用于验证选择器库中哪些元素需要更新的PRA项目。该RPA项目所有组件所使用的所有选择器元素构成的集合和选择器库中所有选择器节点中的选择器元素构成的集合完全相等。因此,如果RPA项目可以正常运行并结束,则说明选择器库中的所有选择器节点无需进行更新。如果RPA项目运行过程中出现错误,则说明选择器库中存在选择器节点需要进行更新。此时RPA项目会中断,并提示当前出现错误的组件是哪一个,然后根据向导修改出现错误的组件,再次验证其有效性。重复上述步骤,直至全部元素有效。
本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种通用的RPA元素选择器管理系统,其特征在于,包括:
虚拟顶点,所述虚拟顶点为RPA项目的起始点;
组件顶点,所述组件顶点包含选择器元素,且组件顶点表示组件顶点要操作(点击/获取焦点/输入文本/获取文本等)的界面元素;
选择器库(Selector Store),所述选择器库与选择器库Id(Store Id)之间一一对应,且选择器库其中包含了目录节点((Folder Node))和选择器节点(Selector Node)。
2.根据权利要求1所述的一种通用的RPA元素选择器管理系统,其特征在于:所述目录节点为选择器库中的内部节点,且目录节点合理地对选择器节点进行分类组织。
3.根据权利要求1所述的一种通用的RPA元素选择器管理系统,其特征在于:所述选择器节点为选择器库中的叶子节点,且选择器节点保存了选择器库的具体内容,其中包含Id域(Selector Id)和选择器内容域(SelectorContent);
其中Id域是一个全局唯一标识符(GUID),且唯一表示该选择器库;
其中选择器内容域保存了选择器库对应的内容,且其描述了对应元素的主要特征。
4.根据权利要求1所述的一种通用的RPA元素选择器管理系统,其特征在于:所述组件顶点通过持有一个具体Id表示引用了某个选择器;
其中若多个组件引用同一个选择器,则这些组件将引用同一个Id。
5.根据权利要求1所述的一种通用的RPA元素选择器管理系统,其特征在于:所述RPA项目可关联多个选择器库,且RPA项目添加关联选择器库只需在对应的项目配置中增加选择器库所在位置;
其中项目配置文件中关于选择器库的位置信息支持多种格式,包括本地文件格式、网络文件格式。
6.根据权利要求1所述的一种通用的RPA元素选择器管理系统,其特征在于:所述选择器库嵌入设置验证机制,且其用于验证选择器库中哪些元素需要更新的PRA项目,该RPA项目所有组件所使用的所有选择器元素构成的集合和选择器库中所有选择器节点中的选择器元素构成的集合完全相等。
7.根据权利要求6所述的一种通用的RPA元素选择器管理系统,其特征在于:所述RPA项目若正常运行并结束,则说明选择器库中的所有选择器节点无需进行更新;
所述RPA项目运行过程中若出现错误,则说明选择器库中存在选择器节点需要进行更新,其中RPA项目会中断,并提示当前出现错误的组件是哪一个,且根据向导修改出现错误的组件,再次验证其有效性,再重复上述步骤,直至全部元素有效。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110472907.8A CN113176920B (zh) | 2021-04-29 | 一种通用的rpa元素选择器管理系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110472907.8A CN113176920B (zh) | 2021-04-29 | 一种通用的rpa元素选择器管理系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113176920A true CN113176920A (zh) | 2021-07-27 |
CN113176920B CN113176920B (zh) | 2024-05-31 |
Family
ID=
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114528005A (zh) * | 2021-11-29 | 2022-05-24 | 深圳市千源互联网科技服务有限公司 | 抓取标签更新方法、装置、设备及存储介质 |
Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1745392A (zh) * | 2002-12-10 | 2006-03-08 | 通乐宝公司 | 内容创建、分发、交互和监视系统 |
CN101448852A (zh) * | 2005-12-20 | 2009-06-03 | 布里斯托尔—迈尔斯斯奎布公司 | 组合物和用于生产组合物的方法 |
US20130024371A1 (en) * | 2011-02-22 | 2013-01-24 | Prakash Hariramani | Electronic offer optimization and redemption apparatuses, methods and systems |
CN103164195A (zh) * | 2011-12-13 | 2013-06-19 | 阿里巴巴集团控股有限公司 | 基于浏览器的选择器表现方法及装置 |
CN104052661A (zh) * | 2013-03-11 | 2014-09-17 | 华为技术有限公司 | 容器名服务器和容器名解析方法 |
CN106062711A (zh) * | 2014-02-27 | 2016-10-26 | 起元技术有限责任公司 | 复合控件 |
CN108009784A (zh) * | 2017-06-15 | 2018-05-08 | 中工国际工程股份有限公司 | 一种基于项目文档的内外部协同办公管理系统 |
CN108345577A (zh) * | 2017-01-24 | 2018-07-31 | 富士施乐株式会社 | 信息处理设备和方法 |
CN109871256A (zh) * | 2019-02-12 | 2019-06-11 | 厦门商集网络科技有限责任公司 | 一种基于rpa集成稽核系统与异构系统的方法及设备 |
CN110989993A (zh) * | 2019-11-12 | 2020-04-10 | 安徽信果网络科技有限公司 | 一种基于微信小程序的开发方法 |
CN111352826A (zh) * | 2018-12-24 | 2020-06-30 | 上海云扩信息科技有限公司 | 一种界面测试用例自动生成方法及工具 |
CN111460259A (zh) * | 2020-03-31 | 2020-07-28 | 腾讯科技(深圳)有限公司 | 一种同类元素确定方法、装置、计算机设备及存储介质 |
CN111736837A (zh) * | 2020-08-25 | 2020-10-02 | 银联商务股份有限公司 | 网页操作的还原方法、装置、设备、可读存储介质及系统 |
US20200320781A1 (en) * | 2015-07-17 | 2020-10-08 | Bao Tran | Systems and Methods for Fitting Product |
CN112101357A (zh) * | 2020-11-03 | 2020-12-18 | 杭州实在智能科技有限公司 | 一种rpa机器人智能元素定位拾取方法及系统 |
CN112464623A (zh) * | 2020-11-24 | 2021-03-09 | 金蝶软件(中国)有限公司 | Rpa流程文件生成方法、装置、计算机设备和存储介质 |
CN112685671A (zh) * | 2021-01-21 | 2021-04-20 | 百度在线网络技术(北京)有限公司 | 页面显示方法、装置、设备及存储介质 |
CN113127165A (zh) * | 2019-12-30 | 2021-07-16 | 尤帕斯公司 | 用于机器人进程自动化(rpa)的触发服务管理 |
Patent Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1745392A (zh) * | 2002-12-10 | 2006-03-08 | 通乐宝公司 | 内容创建、分发、交互和监视系统 |
CN101448852A (zh) * | 2005-12-20 | 2009-06-03 | 布里斯托尔—迈尔斯斯奎布公司 | 组合物和用于生产组合物的方法 |
US20130024371A1 (en) * | 2011-02-22 | 2013-01-24 | Prakash Hariramani | Electronic offer optimization and redemption apparatuses, methods and systems |
CN103164195A (zh) * | 2011-12-13 | 2013-06-19 | 阿里巴巴集团控股有限公司 | 基于浏览器的选择器表现方法及装置 |
CN104052661A (zh) * | 2013-03-11 | 2014-09-17 | 华为技术有限公司 | 容器名服务器和容器名解析方法 |
CN106062711A (zh) * | 2014-02-27 | 2016-10-26 | 起元技术有限责任公司 | 复合控件 |
US20200320781A1 (en) * | 2015-07-17 | 2020-10-08 | Bao Tran | Systems and Methods for Fitting Product |
CN108345577A (zh) * | 2017-01-24 | 2018-07-31 | 富士施乐株式会社 | 信息处理设备和方法 |
CN108009784A (zh) * | 2017-06-15 | 2018-05-08 | 中工国际工程股份有限公司 | 一种基于项目文档的内外部协同办公管理系统 |
CN111352826A (zh) * | 2018-12-24 | 2020-06-30 | 上海云扩信息科技有限公司 | 一种界面测试用例自动生成方法及工具 |
CN109871256A (zh) * | 2019-02-12 | 2019-06-11 | 厦门商集网络科技有限责任公司 | 一种基于rpa集成稽核系统与异构系统的方法及设备 |
CN110989993A (zh) * | 2019-11-12 | 2020-04-10 | 安徽信果网络科技有限公司 | 一种基于微信小程序的开发方法 |
CN113127165A (zh) * | 2019-12-30 | 2021-07-16 | 尤帕斯公司 | 用于机器人进程自动化(rpa)的触发服务管理 |
CN111460259A (zh) * | 2020-03-31 | 2020-07-28 | 腾讯科技(深圳)有限公司 | 一种同类元素确定方法、装置、计算机设备及存储介质 |
CN111736837A (zh) * | 2020-08-25 | 2020-10-02 | 银联商务股份有限公司 | 网页操作的还原方法、装置、设备、可读存储介质及系统 |
CN112101357A (zh) * | 2020-11-03 | 2020-12-18 | 杭州实在智能科技有限公司 | 一种rpa机器人智能元素定位拾取方法及系统 |
CN112464623A (zh) * | 2020-11-24 | 2021-03-09 | 金蝶软件(中国)有限公司 | Rpa流程文件生成方法、装置、计算机设备和存储介质 |
CN112685671A (zh) * | 2021-01-21 | 2021-04-20 | 百度在线网络技术(北京)有限公司 | 页面显示方法、装置、设备及存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114528005A (zh) * | 2021-11-29 | 2022-05-24 | 深圳市千源互联网科技服务有限公司 | 抓取标签更新方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110321254B (zh) | 软件版本回滚方法、装置、服务器及存储介质 | |
US7761786B2 (en) | Reusable XPath validation expressions | |
CN100566357C (zh) | 通信设备批量配置管理方法及其装置 | |
US6539399B1 (en) | Stand alone data management system for facilitating sheet metal part production | |
CA1286414C (en) | Apparatus for distributing data processing across plurality of loci of control | |
CN109086071A (zh) | 一种管理软件版本信息的方法及服务器 | |
CN108388445B (zh) | 一种基于“平台+应用”模式的持续集成方法 | |
US20070299975A1 (en) | Systems and methods for migrating data | |
EP0423937A2 (en) | Portable and dynamic distributed applications architecture | |
US20050114361A1 (en) | Method and apparatus for integrating data repositories and frameworks | |
WO2001086485A2 (en) | Approach for re-using business rules | |
CN113176920A (zh) | 一种通用的rpa元素选择器管理系统 | |
JP3712984B2 (ja) | 業務進捗制御装置及びその方法と、業務進捗制御プログラム及びそのプログラムを記録した記録媒体 | |
CN114443294B (zh) | 大数据服务组件部署方法、系统、终端及存储介质 | |
CN113176920B (zh) | 一种通用的rpa元素选择器管理系统 | |
CN114756224A (zh) | 一种活动执行方法及装置 | |
WO2001093020A2 (en) | Virtual system configurator server for linux | |
CN110879871A (zh) | 页面菜单的配置方法及装置 | |
CN109814991A (zh) | 一种数据治理中的任务管理方法及装置 | |
JP3736467B2 (ja) | ケーブルの管理システムとその管理方法 | |
CN113052504A (zh) | 一种业务系统的管理方法及装置 | |
JP2008225762A (ja) | ライブラリ管理システム | |
US20050108279A1 (en) | Method and dynamic system for the mangement and production of technical documentation in a database | |
CN114443077A (zh) | 一种应用发布方法、装置、计算机设备和存储介质 | |
CN117370196A (zh) | 一种敏捷开发自动化测试方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |