CN115291883B - 自定义脚本解析器实现机器人的开发和运行的方法 - Google Patents
自定义脚本解析器实现机器人的开发和运行的方法 Download PDFInfo
- Publication number
- CN115291883B CN115291883B CN202210853773.9A CN202210853773A CN115291883B CN 115291883 B CN115291883 B CN 115291883B CN 202210853773 A CN202210853773 A CN 202210853773A CN 115291883 B CN115291883 B CN 115291883B
- Authority
- CN
- China
- Prior art keywords
- script
- node
- robot
- development
- custom
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/42—Syntactic analysis
- G06F8/427—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
本申请公开了自定义脚本解析器实现机器人的开发和运行的方法,涉及机器人开发技术领域。该自定义脚本解析器实现机器人的开发和运行的方法,包括以下步骤:根据节点文字、ID、描述、包名、类名等信息获取节点对象查询节点,指定对象输入文字内容,指定对象执行操作,同时脚本解析器还提供外部代码的读取、加载、解析和执行功能。通过本方案可大大降低自动化代码编写的复杂性,有效提升业务适配的响应速度,加速自动化机器人技术在手机端的应用,通过辅助服务功能封装方式,降低使用复杂性和学习曲线,通过脚本引擎实现文本化脚本的载入、解析和执行,实现动态脚本应用,加速业务适配的响应速度,提供更高的灵活性。
Description
技术领域
本申请涉及机器人开发技术领域,具体为自定义脚本解析器实现机器人的开发和运行的方法。
背景技术
目前手机上自动化代码的解析和运行机制主要是通过操作***的辅助功能实现,需要直接基于辅助功能API进行编码。直接基于辅助功能进行编码可以完成手动操作的自动化处理,如自动将产品动态信息发送至不同的群,但目前的实现方法主要有以下不足:
1、需要对辅助功能相关API有深入的学习和了解,其学习曲线比较陡峭,不利于自动化手段的实现和大规模推广;
2、针对不同的业务处理流程需要编写不同的原生代码逻辑,任何流程的细微变化都有可能导致自动化处理流程的失败;
3、由于使用原生代码来实现自动化处理流程,代码的变更和修改常常导致需要发布新版app才能进行适配和解决,拉长了业务适配周期,严重影响用户体验。
发明内容
针对现有技术的不足,本申请提供了自定义脚本解析器实现机器人的开发和运行的方法,解决了现有的手机上自动化代码的解析和运行机制主要是通过操作***的辅助功能实现,需要直接基于辅助功能API进行编码的问题。
为实现以上目的,本申请通过以下技术方案予以实现:自定义脚本解析器实现机器人的开发和运行的方法,包括通过自定义的脚本解析器对原生辅助功能API进行原子操作级别的封装,包含以下接口对外提供调用:
S1:查询节点:根据节点文字、ID、描述、包名或者类名信息获取节点对象;
S2:输入文字:指定对象在文字编辑界面内输入文字内容;
S3:执行操作:指定对象执行操作,包括判断是否存在、点击、点击有效父节点、长按、滚动到顶、滚动到底和触摸;
S4:***操作:包括返回桌面、返回app和等待。
优选地,所述脚本解析器还提供外部代码的读取、加载、解析和执行功能。
优选地,通过app向***发送脚本引擎调用请求,***根据脚本引擎调用请求,启动相应的脚本引擎,并从动态脚本库中选择相应的脚本代码任务。
优选地,所述S1)中将变量文件按照自定义格式存储在脚本解析器中,输入变量文件,将变量文件内的变量信息解析并以链表的形式进行存储,变量文件包含节点文字、ID、描述、包名或者类名信息。
优选地,所述脚本解析器进行解析之前,将自动化脚本输入脚本解析器中,通过脚本解析器实现辅助功能封装和脚本引擎功能。
优选地,所述S1)中节点对象采用自定义变量支持语句,包括变量的作用域与变量类型,其中变量类型包括数值型、字符串型和时间型。
优选地,所述S3)中指定对象执行操作内容包括数据参数生成、参数示例数据删除、确认采集、循环点击元素、输入文字以及切换下拉选项。
优选地,所述S3)中点击有效父节点后,获取展开的父节点ID,获取该父节点下面所对应的子节点信息。
优选地,所述S3)得到子节点信息后,通过脚本解析器分析树节点数据,进一步分析有效的节点总数。
优选地,所述S4)中***操作通过计算机和可移动智能设备进行实现,并且web页面与手机移动端进行实时交互。
本申请具有以下有益效果:
(1)、该自定义脚本解析器实现机器人的开发和运行的方法,通过本方案可大大降低自动化代码编写的复杂性,有效提升业务适配的响应速度,加速自动化机器人技术在手机端的应用,通过辅助服务功能封装方式,降低使用复杂性和学习曲线。
(2)、该自定义脚本解析器实现机器人的开发和运行的方法,通过脚本引擎实现文本化脚本的载入、解析和执行,实现动态脚本应用,加速业务适配的响应速度,提供更高的灵活性。
当然,实施本申请的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
图1为本申请工作流程图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参阅图1,本申请实施例提供技术方案:自定义脚本解析器实现机器人的开发和运行的方法,包括通过自定义的脚本解析器对原生辅助功能API进行原子操作级别的封装,包含以下接口对外提供调用:
S1:查询节点:根据节点文字、ID、描述、包名或者类名信息获取节点对象;
S2:输入文字:指定对象在文字编辑界面内输入文字内容;
S3:执行操作:指定对象执行操作,包括判断是否存在、点击、点击有效父节点、长按、滚动到顶、滚动到底和触摸;
S4:***操作:包括返回桌面、返回app和等待。
进一步的,所述脚本解析器还提供外部代码的读取、加载、解析和执行功能。
进一步的,通过app向***发送脚本引擎调用请求,***根据脚本引擎调用请求,启动相应的脚本引擎,并从动态脚本库中选择相应的脚本代码任务。
进一步的,所述S1)中将变量文件按照自定义格式存储在脚本解析器中,输入变量文件,将变量文件内的变量信息解析并以链表的形式进行存储,变量文件包含节点文字、ID、描述、包名或者类名信息。
进一步的,所述脚本解析器进行解析之前,将自动化脚本输入脚本解析器中,通过脚本解析器实现辅助功能封装和脚本引擎功能。
进一步的,所述S1)中节点对象采用自定义变量支持语句,包括变量的作用域与变量类型,其中变量类型包括数值型、字符串型和时间型。
进一步的,所述S3)中指定对象执行操作内容包括数据参数生成、参数示例数据删除、确认采集、循环点击元素、输入文字以及切换下拉选项。
进一步的,所述S3)中点击有效父节点后,获取展开的父节点ID,获取该父节点下面所对应的子节点信息。
进一步的,所述S3)得到子节点信息后,通过脚本解析器分析树节点数据,进一步分析有效的节点总数。
进一步的,所述S4)中***操作通过计算机和可移动智能设备进行实现,并且web页面与手机移动端进行实时交互使用时(工作时),将自动化脚本输入脚本解析器中,通过脚本解析器实现辅助功能封装和脚本引擎功能,通过自定义的脚本解析器对原生辅助功能API进行原子操作级别的封装,
将变量文件按照自定义格式存储在脚本解析器中,输入变量文件,将变量文件内的变量信息解析并以链表的形式进行存储,变量文件包含节点文字、ID、描述、包名或者类名信息,根据节点文字、ID、描述、包名或者类名信息获取节点对象,查询节点;
然后指定对象在文字编辑界面内输入文字内容;
根据指定对象执行操作,包括判断是否存在、点击、点击有效父节点、长按、滚动到顶、滚动到底和触摸,***操作通过计算机和可移动智能设备进行实现,并且web页面与手机移动端进行实时交互。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
以上公开的本申请优选实施例只是用于帮助阐述本申请。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本申请的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本申请。本申请仅受权利要求书及其全部范围和等效物的限制。
Claims (6)
1.一种自定义脚本解析器实现机器人的开发和运行的方法,其特征在于:通过自定义的脚本解析器对原生辅助功能API进行原子操作级别的封装,包含以下接口对外提供调用:
S1:查询节点:根据节点文字、ID、描述、包名或者类名信息获取节点对象;
S2:输入文字:指定对象在文字编辑界面内输入文字内容;
S3:执行操作:指定对象执行操作,包括判断是否存在、点击、点击有效父节点、长按、滚动到顶、滚动到底和触摸;
S4:***操作:包括返回桌面、返回app和等待;
其中,所述脚本解析器还提供外部代码的读取、加载、解析和执行功能;
通过app向***发送脚本引擎调用请求,***根据脚本引擎调用请求,启动相应的脚本引擎,并从动态脚本库中选择相应的脚本代码任务;
所述S1)中将变量文件按照自定义格式存储在脚本解析器中,输入变量文件,将变量文件内的变量信息解析并以链表的形式进行存储,变量文件包含节点文字、ID、描述、包名或者类名信息;
所述脚本解析器进行解析之前,将自动化脚本输入脚本解析器中,通过脚本解析器实现辅助功能封装和脚本引擎功能。
2.根据权利要求1所述的自定义脚本解析器实现机器人的开发和运行的方法,其特征在于:所述S1)中节点对象采用自定义变量支持语句,包括变量的作用域与变量类型,其中变量类型包括数值型、字符串型和时间型。
3.根据权利要求1所述的自定义脚本解析器实现机器人的开发和运行的方法,其特征在于:所述S3)中指定对象执行操作内容包括数据参数生成、参数示例数据删除、确认采集、循环点击元素、输入文字以及切换下拉选项。
4.根据权利要求1所述的自定义脚本解析器实现机器人的开发和运行的方法,其特征在于:所述S3)中点击有效父节点后,获取展开的父节点ID,获取该父节点下面所对应的子节点信息。
5.根据权利要求4所述的自定义脚本解析器实现机器人的开发和运行的方法,其特征在于:所述S3)得到子节点信息后,通过脚本解析器分析树节点数据,进一步分析有效的节点总数。
6.根据权利要求1所述的自定义脚本解析器实现机器人的开发和运行的方法,其特征在于:所述S4)中***操作通过计算机和可移动智能设备进行实现,并且web页面与手机移动端进行实时交互。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210853773.9A CN115291883B (zh) | 2022-07-12 | 2022-07-12 | 自定义脚本解析器实现机器人的开发和运行的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210853773.9A CN115291883B (zh) | 2022-07-12 | 2022-07-12 | 自定义脚本解析器实现机器人的开发和运行的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115291883A CN115291883A (zh) | 2022-11-04 |
CN115291883B true CN115291883B (zh) | 2023-05-05 |
Family
ID=83825200
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210853773.9A Active CN115291883B (zh) | 2022-07-12 | 2022-07-12 | 自定义脚本解析器实现机器人的开发和运行的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115291883B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110765013A (zh) * | 2019-10-18 | 2020-02-07 | 深圳市比量科技传媒有限公司 | 一种流程自动化执行方法及*** |
CN114567515A (zh) * | 2022-03-01 | 2022-05-31 | 上海中通吉网络技术有限公司 | 实现移动端聊天应用自动加群的方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110246967A1 (en) * | 2010-03-30 | 2011-10-06 | Garavaglia Jr Louis Thomas | Methods and systems for automation framework extensibility |
CN102156654B (zh) * | 2011-04-28 | 2016-02-10 | 中兴通讯股份有限公司 | 一种软件安装包的安装方法及*** |
CN108958847A (zh) * | 2017-05-24 | 2018-12-07 | 广东爱瓦力科技股份有限公司 | 一种安卓***模拟点击自动执行方法 |
CN107483576B (zh) * | 2017-08-12 | 2020-09-18 | 厦门多米诺数据科技有限公司 | 一种对Android APP进行远程控制的***及方法 |
CN110209389B (zh) * | 2019-06-05 | 2023-03-14 | 卡斯柯信号(成都)有限公司 | 一种基于xml的数据生成工具开发*** |
CN111192578B (zh) * | 2019-12-28 | 2023-04-07 | 惠州Tcl移动通信有限公司 | 应用控制方法、装置、存储介质及电子设备 |
US11507269B2 (en) * | 2020-04-21 | 2022-11-22 | AppEsteem Corporation | Technologies for indicating third party content and resources on mobile devices |
CN113900629A (zh) * | 2021-09-06 | 2022-01-07 | 浪潮软件股份有限公司 | 一种计算机流程自动化的引擎实现*** |
-
2022
- 2022-07-12 CN CN202210853773.9A patent/CN115291883B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110765013A (zh) * | 2019-10-18 | 2020-02-07 | 深圳市比量科技传媒有限公司 | 一种流程自动化执行方法及*** |
CN114567515A (zh) * | 2022-03-01 | 2022-05-31 | 上海中通吉网络技术有限公司 | 实现移动端聊天应用自动加群的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN115291883A (zh) | 2022-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107577459B (zh) | 一种基于组件化的拖拽式跨平台应用开发***及方法 | |
CN107678943B (zh) | 抽象页面对象的页面自动化测试方法 | |
CN110765013B (zh) | 一种流程自动化执行方法及*** | |
CN113420201B (zh) | 一种用于浏览器rpa***的跨域元素定位与树生成方法 | |
CN111241454A (zh) | 一种生成网页代码的方法、***和装置 | |
CN102193798B (zh) | 基于Internet的OpenAPI自动获取方法 | |
CN102750152B (zh) | 一种基于描述语言生成多种编程语言的应用的方法及装置 | |
CN105824787A (zh) | 一种html模板动态配置的控制方法及*** | |
CN106354483B (zh) | 一种数据处理方法、装置及电子设备 | |
CN110673854A (zh) | Sas语言编译方法、装置、设备及可读存储介质 | |
CN111367524B (zh) | 枚举类型设计方法及装置 | |
CN110109671B (zh) | 一种webpack标签尺寸样式转换方法及装置 | |
CN112417338B (zh) | 一种页面适配方法、***及设备 | |
CN108664546B (zh) | Xml数据结构转换方法和装置 | |
US10157057B2 (en) | Method and apparatus of segment flow trace analysis | |
CN112988165A (zh) | 基于Kubernetes的交互式建模方法、装置、电子设备及存储介质 | |
CN111475237A (zh) | 菜单处理方法、装置、电子设备及存储介质 | |
CN113806429A (zh) | 基于大数据流处理框架的画布式日志分析方法 | |
CN109324792A (zh) | 一种基于编程语言的路由构建自动化方法及电子设备 | |
CN112231197A (zh) | 一种页面测试的方法、装置和存储介质 | |
CN117033249B (zh) | 一种测试用例生成方法、装置、计算机设备及存储介质 | |
CN115291883B (zh) | 自定义脚本解析器实现机器人的开发和运行的方法 | |
CN113419969A (zh) | 基于浏览器插件的界面自动化成功率保障方法 | |
CN111399863A (zh) | 依赖文件打包方法、装置、设备与计算机可读存储介质 | |
CN116610558A (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 | ||
GR01 | Patent grant |