基于RPA的批量自动化操作方法、系统、设备及储存介质与流程
未命名
08-14
阅读:112
评论:0
基于rpa的批量自动化操作方法、系统、设备及储存介质
技术领域
1.本发明涉及自动化操作技术领域,特别是涉及一种基于rpa的批量自动化操作方法、系统、设备及储存介质。
背景技术:
2.随着数字化的推进,业务系统数量日益增多,跨系统的业务流程愈发复杂,并形成了数据孤岛,产生了大量需要人工执行的重复性系统操作流程,例如月报统计、年报统计、报表汇总等。传统的解决方案是由技术部门开发系统接口或重构系统,成本较高且难以快速响应业务需求的变化;此外,部分业务需求因内外部系统接口无法打通而无法实施落地,仅能通过人工执行。
3.由此可见,上述现有的自动化操作方法在使用上,显然仍存在有不便与缺陷,而亟待加以进一步改进。如何能创设一种新的自动化操作方法,成为当前业界急需改进的目标。
技术实现要素:
4.有鉴于此,本公开实施例提供一种基于rpa的批量自动化操作方法,至少部分解决现有技术中存在的问题。
5.第一方面,本公开实施例提供了一种基于rpa的批量自动化操作方法,所述方法包括以下步骤:基于pra系统批量录制操作步骤,并分别生成脚本,并通过dubbo架构对所述脚本进行管理;接收前端请求;解析所述前端请求的运行时间及运行频率及关联脚本;通过dubbo协议将所述前端请求的运行时间及运行频率发送到对端agent,由agent按照前端请求执行所述关联脚本。
6.根据本公开实施例的一种具体实现方式,所述方法还包括:根据脚本的期望返回值判断所述脚本执行是否成功;其中,当执行成功时,结束操作;当执行失败时,告警并等待人工处理。
7.根据本公开实施例的一种具体实现方式,所述接收前端请求,包括:以预设的运行时间及运行频率执行一个脚本;以及,以预设的运行时间及运行频率按照预设规则分别执行多个脚本。
8.根据本公开实施例的一种具体实现方式,所述基于pra系统批量录制操作步骤,并生成脚本,包括以下步骤:通过录制方式获取操作信息;将所述操作信息转换为rpa机器人可识别的语言;基于转换为rpa机器人可识别语言的操作信息对rpa机器人进行训练并生成脚本。
9.根据本公开实施例的一种具体实现方式,所述操作信息,包括:屏幕数据、鼠标操
作数据和键盘操作数据;其中,所述鼠标操作数据包括:单击、双击、右击和拖拽;所述键盘操作数据包括:键盘输入、快捷键使用和组合键使用;所述屏幕数据包括窗口、按钮和下拉列表。
10.根据本公开实施例的一种具体实现方式,所述方法用于裸机安装、软件自动化安装、脚本开发和流程编排。
11.第二方面,本公开实施例提供了一种基于rpa的批量自动化操作系统,所述系统包括:采集模块,被配置用于基于pra系统批量录制操作步骤,并分别生成脚本,并通过dubbo架构对所述脚本进行管理;解析模块,被配置用于接收前端请求;以及解析所述前端请求的运行时间及运行频率及关联脚本;执行模块,被配置用于通过dubbo协议将所述前端请求的运行时间及运行频率发送到对端agent,由agent按照前端请求执行所述关联脚本。
12.根据本公开实施例的一种具体实现方式,所述系统还包括:判断模块,被配置用于根据脚本的期望返回值判断所述脚本执行是否成功;其中,当执行成功时,结束操作;当执行失败时,告警并等待人工处理。
13.第三方面,本公开实施例还提供了一种电子设备,该电子设备包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有能够被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行时,使所述至少一个处理器前述第一方面或第一方面的任一实现方式中的任一项所述的基于rpa的批量自动化操作方法。
14.第四方面,本公开实施例还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令当由至少一个处理器执行时使所述至少一个处理器执行前述第一方面或第一方面的任一实现方式中的基于rpa的批量自动化操作方法。
15.第五方面,本公开实施例还提供了一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使该计算机执行前述第一方面或第一方面的任一实现方式中的基于rpa的批量自动化操作方法。
16.本公开实施例中的基于rpa的批量自动化操作方法,依据对象句柄元素抓取、依据网页标签抓取、依据图像抓取、利用ocr识别、依据坐标位置抓取以及其他特别类型的抓取方式。能够兼容ie、chrome、firefox不同浏览器类型,及兼容windows多种软件版本,并通过智能转换方法对抓取之后的操作原子自动转换为机器可识别语言,通过python敏捷性语言进行智能转换,并基于python语法进行扩展,对存在问题的任务点提供人工介入修复,降低机器人作业设计难度。通过将图形化操作转化为机器能够识别的机器语言,大大降低了人工劳动成本,提高自动化覆盖率。
附图说明
17.上述仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,以下结合附图与具体实施方式对本发明作进一步的详细说明。
18.图1为本公开实施例提供的一种基于rpa的批量自动化操作方法的案例示意图;图2为本公开实施例提供的一种基于rpa的批量自动化操作方法流程示意图;图3为本公开实施例提供的一种基于rpa的批量自动化操作方法流程框图;图4为本公开实施例提供的一种引入降噪自动编码器示意图;图5为本公开实施例提供的一种倾斜角矫正示意图;图6为本公开实施例提供的一种多机器人联合作业工作流的智能驱动示意图;图7为本公开实施例提供的一种基于rpa的批量自动化操作系统实施例示意图;图8为本公开实施例提供的一种基于rpa的批量自动化操作系统结构示意图;图9为本公开实施例提供的一种基于rpa系统示意图;以及图10为本公开实施例提供的电子设备示意图。
具体实施方式
19.下面结合附图对本公开实施例进行详细描述。
20.以下通过特定的具体实例说明本公开的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本公开的其他优点与功效。显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。本公开还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本公开的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
21.需要说明的是,下文描述在所附权利要求书的范围内的实施例的各种方面。应显而易见,本文中所描述的方面可体现于广泛多种形式中,且本文中所描述的任何特定结构及/或功能仅为说明性的。基于本公开,所属领域的技术人员应了解,本文中所描述的一个方面可与任何其他方面独立地实施,且可以各种方式组合这些方面中的两者或两者以上。举例来说,可使用本文中所阐述的任何数目个方面来实施设备及/或实践方法。另外,可使用除了本文中所阐述的方面中的一或多者之外的其他结构及/或功能性实施此设备及/或实践此方法。
22.另外,在以下描述中,提供具体细节是为了便于透彻理解实例。然而,所属领域的技术人员将理解,可在没有这些特定细节的情况下实践所述方面。
23.本发明实施例提供了一种基于rpa的批量自动化操作方法,主要开展面向文档、邮件、工单处理和跨系统对接的批量自动化操作流程技术,同时基于rpa系统实现业务统计、数据核对和数据填报、裸机安装、脚本开发、流程编排的自动化,主要包括以下内容:(1)硬件输入设备模拟技术rpa机器人中一项重要的技术就是模拟人工对鼠标和键盘的一些操作,比如单击、双击、右击、拖拽等鼠标操作,或者键盘输入、快捷键使用、组合键使用等键盘操作,是rpa将手工操作转为机器语言的重要基础。
24.与目前现有rpa技术不同的是,我们在模拟鼠标和键盘操作时,要先基于采集的数据对rpa机器人进行人工“训练”,让rpa机器人学习需要进行的一个或者一系列操作。在训练过程中,rpa机器人会通过复杂人机操作自动抓取技术方法识别出鼠标拖动的轨迹、键盘输入的信息等,通过这种自动抓取技术使我们在模拟鼠标操作时精度比现有技术更高,大大减少了由于硬件设备不同导致模拟鼠标拖拽轨迹发生偏移的现象,并通过智能转化方法对抓取之后的一个或一系列操作自动转化为机器可识别的语言,通过python语法进行扩展进而实现模拟鼠标和键盘等操作。未来,rpa自动化系统在运维自动化无人值守方面将大放异彩。
25.(2)页面元素抓取技术为了模拟人工在应用程序上的操作,rpa机器人就必须要与页面上各种窗口、按钮、下拉列表等不同要素进行交互。抓屏技术是通过终端或显示器来直接抓取界面中的数据,而无须访问底层数据库或者接口,这种技术适用于无法通过命令进行操作、不能开放或访问的遗留系统。
26.传统的rpa抓屏技术在遇到复杂背景、艺术字体、低分辨率、非均匀光照、图像退化、字符形变、多语言混合、文本行复杂版式、检测框字符残缺等问题时往往面临着图像识别难度大的巨大挑战,而我们的pra自动化技术使用基于ocr对图像进行去噪和角度矫正,通过智能ai算法提高图像识别的准确性,实现对复杂图像精准识别。抓屏技术由于提升了流程自动化处理的展示水平,使技术处理过程可以直观地展示在用户面前,因此迅速提升了rpa的易用性和影响力。
27.在未来,精准的页面元素抓取技术,定能在it、医学、光学等领域的市场占有一席之地。
28.(3)验证码自动代填验证码是rpa流程自动化中经常碰到的问题。比如进行网页或者客户端登录的时候,或者提交数据查验都有可能碰到验证码。为了模拟人工登录系统的完整操作,rpa需要完成登录特定网站时的安全校验,安全校验方式包括4位随机数字或字母组成的验证图片,或者拖拽缺失的部分组合成完整图像等,为了能够全流程自动化,rpa机器人通过ocr实现复杂图像精准识别技术对图片验证码进行识别,然后通过模拟键盘输入的方式可以实现验证码的自动代填。
29.(4)批量调度自动化批量是it运维操作中长期运行的重复性工作,批量作业执行的时间周期跨度非常大,从几分钟到几十个小时不等。批量操作大多由操作员手工完成,通过telnet等方式登录到不同的服务器上,执行各自的批量程序,并且执行过程中还要人工进行监控管理。手工执行批量作业,要进行各种检查:调度前条件的检测,调度后结果的监控,完全通过操作员遵循相关的规定和历史经验来执行,执行效率较低,大量增加操作员的工作负荷,而基于rpa的批量操作自动化系统可以大大降低人工操作的失误风险。
30.首先,我们通过rpa系统批量录制执行操作步骤并生成python脚本,然后交由批量调度自动化系统进行任务调度。批量调度自动化首先通过在服务端配置工作流程,可实现循环调用,并发调用及分支调用等,服务器端(server)解析工作流程后定时自动分发任务,代理端接收任务之后能够自动执行python脚本,实现了批量任务的调度自动化。这样,通过
一个平台即可统一调度管理开放系统、虚拟架构、分布式、微服务架构的批量作业,实现各类调度作业统一管理,统一调度。通过批量调度自动化工具替代手工操作,从根本上解决人为误操作和遗忘操作的风险,排除因人为错误可能引发的故障率,规避错账风险;同时通过一个集中管理平台进行批量操作管理,将用户、密码进行有效隔离,提高系统安全性;解决人工参与步骤过多对应用系统带来的安全隐患。
31.(5)应用变更自动化伴随it运维时代的快速发展,应用规模有了井喷式的增长,而应用变更的交付周期缩短、频次增加等问题使得人员流动频率上升,增大了变更操作风险。通过实施应用部署的自动化将会收获一套标准化的操作流程,将运维人员从复杂的传统运维工作中释放出来,将其知识和技能应用于更有价值的工作和任务上,消除那些昂贵的人为错误,提高应用部署全过程的可靠性,如图1所示。
32.应用变更自动化系统依托于rpa系统的通过元素的信息抓取,“训练”机器人把手工操作转变机器语言,进而实现了应用变更的自动化操作,通过实施应用部署的自动化实施将会明显大幅提升变更,与传统应用变更的效率相比,自动化部署的耗时可以减少75%以上,这样在一个变更窗口就可以安排更多的变更任务。
33.其基本设计方法为:使用dubbo架构实现对rpa生成机器语言的进行管理,为发布模块提供发布脚本的管理和消费,服务器端(server)主要完成应用前端的访问支撑能力,在接收到前端请求后 provider(entegorprovider,服务中心)将请求通过dubbo协议发送到对端agent(entegoragent,代理端程序),agent执行下发指令,并将执行结果反馈给provider,如果涉及到proxy(entegorproxy,跨网段代理程序),则proxy负责转发provider和agent之间的消息,最终provider更新任务结果到数据库。通过这样一系列的自动化操作,实现了应用的停止、更新,数据库更新,应用启动等步骤,大大降低了操作风险并节省大量劳动力。
34.(6)日常操作自动化在当今双态运维趋势下,云计算和大数据已渐渐成为主导,无论是基于银行传统行业的稳态运维,还是基于互联网新兴企业的敏态运维,都会面临业务量扩大、应用系统增多、海量服务器安装、经常性的软件升级安装等问题,在整个运维领域中,运维场景多种多样。而日常操作自动化可应用于如下场景:裸机安装、脚本开发、流程编排等,实现脚本统一开发及管控、运维操作自动化,达成降低运维风险、提高运维效率、提升运维价值。
35.日常操作自动化以服务器等设备为基础资源,采用rpa自动化系统生成自动化脚本及升级安装流程,从而实现操作系统安装,软件自动化安装,最终实现从裸机安装到各种软件的自动化安装。日常操作自动化从设计到开发采用了soa(面向服务架构)技术,整体架构遵循java ee规范,实际开发中大量采用了多种先进技术,跨平台、超大规模消息通讯和整合技术,实现全渠道的设备接入等技术。实现了日常运维任务的发起、审批、执行、验证等一系列流程。逐步实现
ꢀ“
运维过程无感知”、“运维操作零参与”、“运维结果可视化”,最终达到数据中心无人值守的终极服务运营目标。
36.图2为本公开实施例提供的基于rpa的批量自动化操作方法流程的示意图。
37.图3为与图2对应的基于rpa的批量自动化操作方法的流程框图。
38.如图2所示,在步骤s110处,基于pra系统批量录制操作步骤,并分别生成脚本,并
通过dubbo架构对所述脚本进行管理。
39.在本发明实施例中,所述操作步骤,包括:屏幕数据、鼠标操作数据和键盘操作数据;其中,所述鼠标操作数据包括:单击、双击、右击和拖拽;所述键盘操作数据包括:键盘输入、快捷键使用和组合键使用;所述屏幕数据包括窗口、按钮和下拉列表。
40.在本发明实施例中,通过对象句柄元素抓取、网页标签抓取、图像抓取、ocr识别、坐标位置抓取中的至少一项获取录制的操作信息。
41.在本发明实施例中,所述ocr识别,包括以下步骤:对图像进行预处理;其中,所述预处理包括:基于固定阈值算法与otsu算法将所述图像二值化;通过在llnet引入序贯相似性检测算法使低噪度图像的自适应增强;以及,通过randon变换对所述图像的倾斜角进行矫正。
42.更具体地,基于ocr实现复杂图像精准识别与自动验证方法,如下:光学字符识别技术(optical character recognition,ocr)是对图像中的文字字符进行分析并识别,并将其转换为可编辑文本格式的字符序列的技术。而在文本格式转换过程中,难免会遇到复杂背景、艺术字体、低分辨率、非均匀光照、图像退化、字符形变、多语言混合、文本行复杂版式、检测框字符残缺等等问题。面对以上问题,本技术采用二值化将像素点的灰度值设为0或255,使图像呈现明显的黑白效果。二值化一方面减少数据维度,另一方面通过排除原图中噪声带来的干扰,凸显有效区域的轮廓结构;采用基于神经网络的llnet方法,llnet通过引入序贯相似性检测算法的思想实现低噪度图片的自适应增强;采用randon变换的方法解决图片文字旋转和位移的情况。
43.基于神经网络训练模型自动识别复杂图像验证码方法,梳理不同方法的优缺点及原理,在保证图片识别的精度和速度下进一步加强模型对不同类型验证方式的兼容性,并基于识别的结果进行自动代填,以提高智能识别验证图像的成功率,辅助rpa完成系统正确登录。
44.1.复杂人机操作自动抓取与机器语言智能转换方法根据信息抓取的技术实现方式划分,本技术拟采用的抓取技术包括:依据对象句柄元素抓取、依据网页标签抓取、依据图像抓取、利用ocr识别、依据坐标位置抓取以及其他特别类型的抓取方式。
45.(1)依据对象句柄元素实现抓取:句柄是指操作系统内存里指向某个结构体的指针,在windows中设立句柄是由于内存管理的需要,windows用句柄来记载数据地址的变更。句柄标识了应用程序中不同类型的对象实例,如窗口、按钮、图标、滚动条、输出设备、控件或者文件等。同时,windows也提供了相关的api来获取这些窗口句柄,如findwindow(获取窗口句柄)、enumwindows和enumchildwindows(获取所有顶层窗口以及它们的子窗口)等函数。
46.(2)依据网页标签实现抓取:大多数web网页源代码都是通过html语言编写,页面中的数据通过各种html标签所标识,如《head》、《title》、《div》、《tr》、《td》等,抓取web网页中的数据,最重要的是在页面中准确地定位该数据的位置。本技术采用的方式是通过关键值或特征值来查询web页面中的某个元素,如id、name、tag、link、dom、xpath、cssselector等。页面中元素如id、name、tag、link值经常会改变,但页面的结构通常是不变的,为了保证抓取准确性,本技术使用的页面元素是xpath和cssselector。xpath是一种在xml文档中定
位元素的语言。因为html可以被看作xml的一种实现,因此可以将页面中元素的位置转换为xpath来表示,如xpath=//div[@id='lmenus']/div[1]/div[2]/span[1];css(cascading style sheets)是一种用来描述html和xml文档表现的专用语言。cssselector可以为网页中的元素绑定属性,如css=input[name="username"]。
[0047]
(3)利用图像对比技术实现抓取:利用图像抓取技术预先保存好需要查询的某对象的图像,如一个按钮或下拉控件的图像,当机器人在桌面窗口查询这个对象时,根据预存的该对象的图像对整个窗口的图像做查询和比对。匹配成功,机器人就可以获取该图像的坐标位置,进行下一步操作。在本技术中,为了提高图像查询的稳定性,rpa软件中预先设置对象图像的比对范围、对比模式、重试次数、精度要求等参数。
[0048]
(4)依据界面坐标位置实现抓取:本技术中,为了保证对于多种条件下信息的抓取能力,rpa软件提供依据界面坐标位置来获取界面要素的功能,这种功能在早期的自动化软件中经常被使用,但由于每次应用界面开启位置的不确定性和界面的低分辨率等问题,目前rpa技术实现中已经很少采用这种方式。为了兼顾前面所谈到的各种技术都无法实现,客户端程序的界面位置不能随意调整,大小也不能缩放的情况,本技术中提供此能力。
[0049]
2.基于ocr实现复杂图像精准识别与自动验证方法文字识别从本质上可以归类为序列化标注问题,主要目标是寻找文本串图像到文本串内容的映射,这一点与自然语言处理中的一些任务非常类似。当然,与自然语言处理相比,文字识别又有不小的区别,因为其具有一些独特性。首先是局部特性,文本串中的局部会直接体现在整个识别目标当中;其次是组合特性,文本串的内容组合千变万化,常用的英文单词有几万个,而汉字的组合就更多了,组合出来的情况千变万化。基于实际情况考虑,本技术采用先将其切分成单字,然后识别单字的类别,之后将结果串起来,其中最为关键的是图像预处理。本技术中,主要通过二值化、去噪和倾斜角检测校正实现图像预处理。
[0050]
(1)二值化图像二值化将像素点的灰度值设为0或255,使图像呈现明显的黑白效果。二值化一方面减少数据维度,另一方面通过排除原图中噪声带来的干扰,凸显有效区域的轮廓结构。
[0051]
本技术中,为保证识别精准度,拟采用固定阈值算法与otsu算法组合使用实现二值化。固定阈值方法是对于输入图像中的所有像素点统一使用同一个固定阈值。其基本思想如下:
……
公式1其中,为坐标点为(x,y)的固定阈值;t为全局阈值,x为图像横坐标;y为图像纵坐标;固定阈值方法的主要缺陷是很难为不同的输入图像确定最佳阈值。为解决这一问题,本技术组合otsu算法一起使用。
[0052]
otsu算法又称最大类间方差法,是一种自适应的阈值确定方法,其基本思想说明如下:将输入图像视为l个灰度级,表示灰度级为i的像素个数,可知像素总数。通过归一化的灰度直方图,将其视为输入图像的概率分布:
……
公式2现假设在第个灰度级设置阈值,将图像二分为和(背景和目标物体),表示灰度级为[1,
…
,]的像素点,表示灰度级为[+1,
…
,l]的像素点,两类出现的概率以及类内灰度级的均值分别为:
……
公式3
……
公式4
……
公式5
……
公式6其中,为出现的概率;为直方图;为灰度级从1到的累积出现概率;为出现的概率;为的灰度级;为的灰度级;为是整张图像的平均灰度级;为灰度级从1到的平均灰度级。很容易就能验证,对于任意值均有:
……
公式7这两类的类内方差由公式8、公式9给出:
……
公式8
……
公式9其中,为的方差;为的方差。
[0053]
为了评价阈值的好坏,引入判别式,根据判别式的标准来进行测量:
……
公式10
……
公式11
……
公式12
……
公式13其中,、、为预设用于评价图片清晰度的判别变量;分别为类内方差、类间方差和灰度级的总方差。问题转化为一个优化问题,即找到一个,使其能够最大化公式10中的目标函数。以下关系始终存在:
……
公式14
和都是的函数,但却与无关;且基于二阶统计(类方差),而则是基于一阶统计(类均值)。因此,η是判别取值好坏的最简单的衡量标准:
……
公式15至此,得到最佳的值选择,即:
……
公式16(2)去噪本技术中,图像噪声处理拟采用基于神经网络的llnet方法,llnet通过引入序贯相似性检测算法的思想实现低噪度图片的自适应增强(增亮、去噪)。
[0054]
首先介绍一下自动编码机(auto-encoder,ae)。ae属于非监督学习,由三层网络组成,其中输入层神经元数量与输出层神经元数量相等,中间层神经元数量少于输入层和输出层。对于每个训练样本,ae学习的目的是使输出信号与输入信号尽可能相同。流程可以用下式表示:
……
公式17
……
公式18其中,s是非线性函数(如sigmoid),w为输入层到中间层和中间层到输出层的链接权值,b和分别为中间层和输出层的偏置。y可视为x的有损压缩形式,信号y经过解码层解码传到输出层,变为信号z。计算x和z的误差时使用典型的平方误差,若x是位向量,则可以使用交叉熵。
[0055]
使用ae对神经网络进行预训练,确定编码器的初始权重w,然而受模型复杂度、训练集数据量以及数据噪声等问题的影响,通过ae得到的初始模型往往存在过拟合的风险。为防止过拟合,引入降噪自动编码器(denoising auto-encoder,dae),在ae的基础上,对输入的数据加入噪声,从而提高模型的稳定性。dae的示意图如图4所示。
[0056]
其中,x为输入信号,dae以特定概率将部分输入层节点的值置为0,进而得到含有噪声的输入信号,通过计算y和z,并对z与原始输入信号x做误差迭代,减小测试样本与训练样本因分布不同而对模型造成的影响。不仅如此,dae还可以多层堆叠形成栈式自编码器(stacked denoising auto-encoders,sda),即前一层的中间层输出是后一层的输入,通过逐层贪婪训练,对每层自编码都进行非监督训练,用训练好的第k层的输出作为第k+1层自编码训练的输入。
[0057]
中间层节点的个数一般小于输入输出层,因此中间层倾向于学习信号的内部规律。但如果设定的中间层节点数多于输入输出层,同时又希望自编码器能够学习到内部规律,就需要利用稀疏自编码器,即对中间层的激活函数增加稀疏性限制,保证同一时间内只有部分节点是活跃的。假设中间层的激活函数为sigmoid,那么节点输出1表示活跃,输出0表示不活跃,可以使用kl散度来衡量节点实际活跃程度与人为设定稀疏度ρ之间的相似性:
……
公式19
其中,为节点信号松散度;m为训练样本个数,为中间层第j个节点对第i个训练样本的响应输出,为中间层第j个节点的平均激活输出。一般设定ρ为0.5或0.01,kl散度越小意味着和ρ的相似度越高,因此将kl散度作为正则化项加入损失函数从而对网络的稀疏性进行约束。
[0058]
最终利用稀疏自编码器的降噪能力和深度网络的复杂建模能力学习低噪度图片的特征并生成含有最少噪声和更高对比度的图片。
[0059]
(3)倾斜角矫正本技术中针对倾斜角矫正,采用randon变换的方法解决图片文字旋转和位移的情况。
[0060]
如图5所示,radon变换以线积分的形式将图像空间投影到空间,radon变换是直线参数变换的连续形式,算法流程如下:
……
公式20其中,为线性积分;m为横坐标点;n为纵坐标点;为狄拉克函数;为倾斜角度。
[0061]
对输入图像做二值化操作,使用sobel边界检测算法找到文档边界,进行radon变换,将原始函数沿图像平面内所有可能的直线进行积分(取值为0到179
°
),将得到的积分值投影到空间,找到的最大值和对应的角度,如果图像内包含一条直线,则沿着这条直线的积分值最大,最后将弧度制的斜率转换成角度制的斜率,完成倾斜校正。
[0062]
基于转换为rpa机器人可识别语言的操作信息对rpa机器人进行训练,并生成脚本。在通过训练后的rpa机器人完成自动化操作前,对所述训练后的rpa机器人进行测试,并通过日志记录流程的运行过程。
[0063]
更具体地,rpa一项重要的技术就是模拟人工对鼠标和键盘的一些操作,比如单击、双击、右击、拖拽等鼠标操作,或者键盘输入、快捷键使用、组合键使用等键盘操作,是rpa将手工操作转为机器语言的重要基础。
[0064]
如图6所示,所述方法还包括:对于多机器人联合作业工作流的智能驱动方法,具体包括以下步骤:工作流技术是基于业务流程管理理论和实践而诞生的一套技术解决方案,本技术中设计包含工作流设计、工作流运行和工作流监控三个部分。工作流技术用来控制和管理文档在各个计算机之间自动传递。
[0065]
rpa通过操作用户界面来访问应用程序,实现了在业务逻辑上的连续处理。在这个过程中,rpa需要操作一个或多个界面,在每个界面又须处理一些数据项,被视为一种微观层面的工作流处理。所以本技术中rpa具有工作流技术的相关特征,包括流程触发、流程嵌套、分支(if else)、循环、暂停、取消、延时和错误处理等,同时在流程中支持常量、变量的定义。
[0066]
为了更好地定义和设计工作流程,rpa提供专门的工作流设计工具来帮助用户以图形化方式定义工作流,支持以拖拽控件的方式快速组装业务流程,以录制的方式自动生
成初始的流程记录。rpa还内置调试器和模拟器,用于流程的测试,并通过日志记录流程的运行过程,如图6所示。
[0067]
除却顺序工作流,有的步骤需要等待某些事件发生后才可以执行(如图7所示,模拟用户登录事件中,异常检查和超时等两个动作,需要在等待人工处理动作触发之后才能继续执行)。另一种工作流类型是状态机工作流,状态机工作流提供了一系列状态,工作流从初始状态开始,到终止状态结束,两个状态之间通过定义行为过渡。
[0068]
最后实现的部分是流程监控,流程监控是通过提供图形化方式对流程进行配置,以及对流程执行情况进行监控。配置功能包括流程启动时间、触发事件条件、执行对象设备、流程之间的关联关系等。监控功能包括流程运转状况、每个环节所耗费的时间、运行的业务量、执行成功或失败的情况等。
[0069]
更具体地,接下来转到步骤s120。
[0070]
在步骤s120处,接收前端请求。
[0071]
在本发明实施例中,所述接收前端请求,包括:以预设的运行时间及运行频率执行一个脚本;以及,以预设的运行时间及运行频率按照预设规则分别执行多个脚本。
[0072]
更具体地,接下来转到步骤s130。
[0073]
在步骤s130处,解析所述前端请求的运行时间及运行频率及关联脚本。
[0074]
更具体地,接下来转到步骤s140。
[0075]
在步骤s140处,通过dubbo协议将所述前端请求的运行时间及运行频率发送到对端agent,由agent按照前端请求执行所述关联脚本。
[0076]
在本发明实施例中,所述方法还包括:根据脚本的期望返回值判断所述脚本执行是否成功;其中,当执行成功时,结束操作;当执行失败时,告警并等待人工处理。
[0077]
在本发明实施例中,所述方法用于裸机安装、软件自动化安装、脚本开发和流程编排。
[0078]
图8示出了本发明提供的基于rpa的批量自动化操作系统800,包括采集模块810、解析模块820和执行模块830。
[0079]
采集模块810用于基于pra系统批量录制操作步骤,并分别生成脚本,并通过dubbo架构对所述脚本进行管理;解析模块820用于接收前端请求;以及解析所述前端请求的运行时间及运行频率及关联脚本;执行模块830用于通过dubbo协议将所述前端请求的运行时间及运行频率发送到对端agent,由agent按照前端请求执行所述关联脚本。
[0080]
在本发明实施例中,所述系统还包括:判断模块,被配置用于根据脚本的期望返回值判断所述脚本执行是否成功;其中,当执行成功时,结束操作;当执行失败时,告警并等待人工处理。
[0081]
图9为本公开实施例提供的一种基于rpa系统示意图;本发明实施例设计的rpa系统主要包括编辑器、控制器和运行器三大部分,编辑器和运行器部署在业务人员桌面机器上,实现本地化任务的设计和机器人配置,编辑器提供可视化的控件拖拽和编辑、自动化脚本录制、工作流编辑以及预制库和预构建模板功能,运行器提供鼠标键盘事件模拟、屏幕抓取和工作流驱动功能,控制器部署在本地,提供集中式控制中心,对多机器人运行状态进行
监控,并提供机器人的远程维护和技术支持能力。
[0082]
参见图10,本公开实施例还提供了一种电子设备100,该电子设备包括:至少一个处理器;以及,与该至少一个处理器通信连接的存储器;其中,该存储器存储有可被该至少一个处理器执行的指令,该指令被该至少一个处理器执行,以使该至少一个处理器能够执行前述方法实施例中的基于rpa的批量自动化操作方法。
[0083]
本公开实施例还提供了一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储计算机指令,该计算机指令用于使该计算机执行前述方法实施例中的基于rpa的批量自动化操作方法。
[0084]
本公开实施例还提供了一种计算机程序产品,该计算机程序产品包括存储在非暂态计算机可读存储介质上的计算程序,该计算机程序包括程序指令,当该程序指令被计算机执行时,使该计算机执行前述方法实施例中的基于rpa的批量自动化操作方法。
[0085]
下面参考图10,其示出了适于用来实现本公开实施例的电子设备100的结构示意图。本公开实施例中的电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字tv、台式计算机等等的固定终端。图10示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
[0086]
如图10所示,电子设备100可以包括处理装置(例如中央处理器、图形处理器等)1001,其可以根据存储在只读存储器(rom)1002中的程序或者从存储装置1008加载到随机访问存储器(ram)1003中的程序而执行各种适当的动作和处理。在ram 1003中,还存储有电子设备100操作所需的各种程序和数据。处理装置1001、rom 1002以及ram 1003通过总线1004彼此相连。输入/输出(i/o)接口1005也连接至总线1004。
[0087]
通常,以下装置可以连接至i/o接口1005:包括例如触摸屏、触摸板、键盘、鼠标、图像传感器、麦克风、加速度计、陀螺仪等的输入装置1006;包括例如液晶显示器(lcd)、扬声器、振动器等的输出装置1007;包括例如磁带、硬盘等的存储装置1008;以及通信装置1009。通信装置1009可以允许电子设备100与其他设备进行无线或有线通信以交换数据。虽然图中示出了具有各种装置的电子设备100,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
[0088]
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置1009从网络上被下载和安装,或者从存储装置1008被安装,或者从rom 1002被安装。在该计算机程序被处理装置1001执行时,执行本公开实施例的方法中限定的上述功能。
[0089]
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便
携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。
[0090]
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
[0091]
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:获取至少两个网际协议地址;向节点评价设备发送包括所述至少两个网际协议地址的节点评价请求,其中,所述节点评价设备从所述至少两个网际协议地址中,选取网际协议地址并返回;接收所述节点评价设备返回的网际协议地址;其中,所获取的网际协议地址指示内容分发网络中的边缘节点。
[0092]
或者,上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:接收包括至少两个网际协议地址的节点评价请求;从所述至少两个网际协议地址中,选取网际协议地址;返回选取出的网际协议地址;其中,接收到的网际协议地址指示内容分发网络中的边缘节点。
[0093]
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0094]
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0095]
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一获取单元还可以被描述为“获取至少两个网际协议地址的单元”。
[0096]
应当理解,本公开的各部分可以用硬件、软件、固件或它们的组合来实现。
[0097]
以上所述,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以权利要求的保护范围为准。
技术特征:
1.一种基于rpa的批量自动化操作方法,其特征在于,所述方法包括以下步骤:基于pra系统批量录制操作步骤,并分别生成脚本,并通过dubbo架构对所述脚本进行管理;接收前端请求;解析所述前端请求的运行时间及运行频率及关联脚本;通过dubbo协议将所述前端请求的运行时间及运行频率发送到对端agent,由agent按照前端请求执行所述关联脚本。2.根据权利要求1所述的基于rpa的批量自动化操作方法,其特征在于,所述方法还包括:根据脚本的期望返回值判断所述脚本执行是否成功;其中,当执行成功时,结束操作;当执行失败时,告警并等待人工处理。3.根据权利要求1所述的基于rpa的批量自动化操作方法,其特征在于,所述接收前端请求,包括:以预设的运行时间及运行频率执行一个脚本;以及,以预设的运行时间及运行频率按照预设规则分别执行多个脚本。4.根据权利要求1所述的基于rpa的批量自动化操作方法,其特征在于,所述基于pra系统批量录制操作步骤,并生成脚本,包括以下步骤:通过录制方式获取操作信息;将所述操作信息转换为rpa机器人可识别的语言;基于转换为rpa机器人可识别语言的操作信息对rpa机器人进行训练并生成脚本。5.根据权利要求4所述的基于rpa的批量自动化操作方法,其特征在于,所述操作信息,包括:屏幕数据、鼠标操作数据和键盘操作数据;其中,所述鼠标操作数据包括:单击、双击、右击和拖拽;所述键盘操作数据包括:键盘输入、快捷键使用和组合键使用;所述屏幕数据包括窗口、按钮和下拉列表。6.根据权利要求1-5中任意一项所述的基于rpa的批量自动化操作方法,其特征在于,所述方法用于裸机安装、软件自动化安装、脚本开发和流程编排。7.一种基于rpa的批量自动化操作系统,其特征在于,所述系统包括:采集模块,被配置用于基于pra系统批量录制操作步骤,并分别生成脚本,并通过dubbo架构对所述脚本进行管理;解析模块,被配置用于接收前端请求;以及解析所述前端请求的运行时间及运行频率及关联脚本;执行模块,被配置用于通过dubbo协议将所述前端请求的运行时间及运行频率发送到对端agent,由agent按照前端请求执行所述关联脚本。8.根据权利要求7所述的基于rpa的批量自动化操作系统,其特征在于,所述系统还包括:判断模块,被配置用于根据脚本的期望返回值判断所述脚本执行是否成功;其中,当执行成功时,结束操作;当执行失败时,告警并等待人工处理。9.一种电子设备,其特征在于,该电子设备包括:
至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有能够被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行时,使所述至少一个处理器执行如权利要求1至6中的任一项所述的基于rpa的批量自动化操作方法。10.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令当由至少一个处理器执行时使所述至少一个处理器执行如权利要求1至6中的任一项所述的基于rpa的批量自动化操作方法。
技术总结
本发明公开了一种基于RPA的批量自动化操作方法、系统、设备及储存介质,所述方法包括:基于PRA系统批量录制操作步骤,并分别生成脚本,并通过dubbo架构对所述脚本进行管理;接收前端请求;解析所述前端请求的运行时间及运行频率及关联脚本;通过dubbo协议将所述前端请求的运行时间及运行频率发送到对端Agent,由Agent按照前端请求执行所述关联脚本。通过本公开的处理方案,实现了运维操作自动化,达成降低运维风险、提高运维效率、提升运维价值的效果。效果。效果。
技术研发人员:张静波 姜全尧 邢翠霞 郭亮 姜晓东
受保护的技术使用者:北京理想信息科技有限公司
技术研发日:2023.07.10
技术公布日:2023/8/9
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
上一篇:一种软件设计器及软件开发方法与流程 下一篇:一种防护性能好的预装式变电站的制作方法
