CN110399191A - 一种程序图形用户界面自动交互处理方法及装置 - Google Patents
一种程序图形用户界面自动交互处理方法及装置 Download PDFInfo
- Publication number
- CN110399191A CN110399191A CN201910579452.2A CN201910579452A CN110399191A CN 110399191 A CN110399191 A CN 110399191A CN 201910579452 A CN201910579452 A CN 201910579452A CN 110399191 A CN110399191 A CN 110399191A
- Authority
- CN
- China
- Prior art keywords
- user interface
- graphic user
- word content
- interactive controls
- described program
- 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.)
- Pending
Links
- 230000002452 interceptive effect Effects 0.000 title claims abstract description 205
- 238000003672 processing method Methods 0.000 title claims description 21
- 238000012545 processing Methods 0.000 claims abstract description 97
- 238000000034 method Methods 0.000 claims abstract description 67
- 238000010801 machine learning Methods 0.000 claims abstract description 34
- 230000003993 interaction Effects 0.000 claims description 111
- 238000004422 calculation algorithm Methods 0.000 claims description 23
- 238000003058 natural language processing Methods 0.000 claims description 11
- 238000012549 training Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 7
- 238000000605 extraction Methods 0.000 claims description 7
- 238000010276 construction Methods 0.000 claims description 6
- 230000001052 transient effect Effects 0.000 claims description 2
- 238000004458 analytical method Methods 0.000 abstract description 31
- 238000005516 engineering process Methods 0.000 abstract description 15
- 238000004891 communication Methods 0.000 description 6
- 230000006399 behavior Effects 0.000 description 5
- 230000003068 static effect Effects 0.000 description 5
- 210000002569 neuron Anatomy 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 244000035744 Hura crepitans Species 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000011900 installation process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/62—Text, e.g. of license plates, overlay texts or captions on TV images
- G06V20/635—Overlay text, e.g. embedded captions in a TV program
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Human Computer Interaction (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Multimedia (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明实施例提供一种程序图形用户界面自动交互处理方法及装置,方法包括:在程序运行过程中获取待进行交互处理的程序图形用户界面;将程序图形用户界面输入至预设识别模型中,识别程序图形用户界面中包含的交互控件以及交互控件上的文字内容和文字内容出现的位置;根据识别结果对程序图形用户界面进行自动交互处理。本发明实施例采用机器学习技术自动识别程序图形用户界面中包含的交互控件以及交互控件上的文字内容和文字内容出现的位置,从而完成对程序图形用户界面的自动交互处理,从而使得应用程序的动态分析过程不被打断,进而解决了现有技术中因程序界面交互过程无法自动化完成而使得动态分析停滞的问题。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种程序图形用户界面自动交互处理方法及装置。
背景技术
安卓系统是目前市场上的主流系统,其市场占有率大于80%,远远超过其他移动设备操作系统。在安卓系统繁荣发展的背后,丰富多彩的安卓应用可谓功不可没。然而安卓应用在丰富人们生活的同时,也给用户带来了各种各样的安全隐患,恶意扣费软件、隐私窃取软件、欺诈软件、钓鱼软件等恶意软件无时无刻不威胁着用户的隐私和资金安全。
为了保证用户使用的安全,各大安全厂商、应用商店提供商、研究机构等都推出了相应的安卓应用安全分析平台,利用静态分析和动态分析等技术分析检测安卓应用中的恶意行为和安全问题。静态分析技术不需要实际运行应用程序,而直接针对程序的源代码或者二进制文件进行数据流、控制流等分析,然而由于在分析过程中缺乏实际运行路径和上下文信息,难以判断分析得到的行为是否可以在实际运行中被触发,同时安卓应用中广泛使用的Java反射、动态加载代码、加密、混淆等技术也给静态分析技术带来了挑战。与静态分析技术相比,动态分析技术可以保证检测出的行为在实际中可被真实触发,也可以解决Java反射、加密、混淆等技术给静态分析带来的困难,因此动态分析技术受到了更多的青睐。
需要说明的是,动态分析技术不止可以应用在安卓系统中,还可以应用在Windows系统、Linux系统等系统中,目前,动态分析技术面临的主要问题是如何尽可能多地触发待测应用的行为。例如,安卓应用多以图形用户界面作为核心,通过用户与界面控件的交互行为启动不同的功能模块。又如,Windows上的安装程序,需要正确的界面交互才能安装成功。
在应用程序的动态分析过程中,目前一般通过界面解析的方式来对界面上的控件进行识别,进而模拟按钮点击、复选框选择控件交互操作。对于普通界面来说,通过界面解析的方式能够实现对界面上的控件的识别,但是,对于一些自定义界面、或用图形实现的文字,通过界面解析无法识别界面上应该点击的控件,进而无法模拟用户进行点击、选择等操作,从而导致应用程序自动安装、程序界面交互过程无法自动化,使得动态分析停滞。
针对上述问题,目前尚未提出一种有效的解决方案。
发明内容
针对现有技术中的问题,本发明实施例提供一种程序图形用户界面自动交互处理方法及装置。
第一方面,本发明实施例提供了一种程序图形用户界面自动交互处理方法,包括:
在程序运行过程中,获取待进行交互处理的程序图形用户界面;其中,所述程序图形用户界面中包含有待进行交互处理的交互控件;
将所述程序图形用户界面输入至预设识别模型中,识别所述程序图形用户界面中包含的交互控件以及交互控件上的文字内容和文字内容出现的位置;
根据识别得到的交互控件以及交互控件上的文字内容和文字内容出现的位置,对所述程序图形用户界面进行自动交互处理;
其中,所述预设识别模型是利用程序图形用户界面样本和从所述程序图形用户界面样本中提取的交互控件以及交互控件上的文字内容和文字内容出现的位置,基于机器学习算法,对初始机器学习模型进行训练后得到的。
进一步地,在将所述程序图形用户界面输入至预设识别模型中,识别所述程序图形用户界面中包含的交互控件以及交互控件上的文字内容和文字内容出现的位置之前,所述程序图形用户界面自动交互处理方法还包括:建立所述预设识别模型;
其中,所述建立所述预设识别模型,包括:
获取程序图形用户界面样本;
从所述程序图形用户界面样本中提取所述程序图形用户界面样本中包含的交互控件以及交互控件上的文字内容和文字内容出现的位置;
利用所述程序图形用户界面样本和从所述程序图形用户界面样本中提取的交互控件以及交互控件上的文字内容和文字内容出现的位置,基于机器学习算法,对初始机器学习模型进行训练直到满足预设训练结束条件,得到所述预设识别模型。
进一步地,所述根据识别得到的交互控件以及交互控件上的文字内容和文字内容出现的位置,对所述程序图形用户界面进行自动交互处理,包括:
根据识别得到的交互控件以及交互控件上的文字内容,基于预先设定的匹配规则,确定对应的交互处理方式,并根据所述交互处理方式和所述文字内容出现的位置,对所述交互控件进行相应的自动交互处理以实现对所述程序图形用户界面的自动交互处理。
进一步地,所述根据识别得到的交互控件以及交互控件上的文字内容和文字内容出现的位置,对所述程序图形用户界面进行自动交互处理,包括:
根据识别得到的交互控件以及交互控件上的文字内容,基于自然语言处理算法,确定对应的交互处理方式,并根据所述交互处理方式和所述文字内容出现的位置,对所述交互控件进行相应的自动交互处理以实现对所述程序图形用户界面的自动交互处理。
进一步地,所述对所述交互控件进行相应的自动交互处理包括:对所述交互控件进行点击、选择、删除、修改和输入中的一种或多种自动交互处理。
第二方面,本发明实施例还提供了一种程序图形用户界面自动交互处理装置,包括:
获取模块,用于在程序运行过程中,获取待进行交互处理的程序图形用户界面;其中,所述程序图形用户界面中包含有待进行交互处理的交互控件;
识别模块,用于将所述程序图形用户界面输入至预设识别模型中,识别所述程序图形用户界面中包含的交互控件以及交互控件上的文字内容和文字内容出现的位置;
处理模块,用于根据识别得到的交互控件以及交互控件上的文字内容和文字内容出现的位置,对所述程序图形用户界面进行自动交互处理;
其中,所述预设识别模型是利用程序图形用户界面样本和从所述程序图形用户界面样本中提取的交互控件以及交互控件上的文字内容和文字内容出现的位置,基于机器学习算法,对初始机器学习模型进行训练后得到的。
进一步地,所述程序图形用户界面自动交互处理装置,还包括:模型构建模块;
所述模型构建模块,具体用于:
获取程序图形用户界面样本;
从所述程序图形用户界面样本中提取所述程序图形用户界面样本中包含的交互控件以及交互控件上的文字内容和文字内容出现的位置;
利用所述程序图形用户界面样本和从所述程序图形用户界面样本中提取的交互控件以及交互控件上的文字内容和文字内容出现的位置,基于机器学习算法,对初始机器学习模型进行训练直到满足预设训练结束条件,得到所述预设识别模型。
进一步地,所述处理模块,具体用于:
根据识别得到的交互控件以及交互控件上的文字内容,基于自然语言处理算法,确定对应的交互处理方式,并根据所述交互处理方式和所述文字内容出现的位置,对所述交互控件进行相应的自动交互处理以实现对所述程序图形用户界面的自动交互处理。
进一步地,所述处理模块,具体用于:
根据识别得到的交互控件以及交互控件上的文字内容,基于预先设定的匹配规则,确定对应的交互处理方式,并根据所述交互处理方式和所述文字内容出现的位置,对所述交互控件进行相应的自动交互处理以实现对所述程序图形用户界面的自动交互处理。
进一步地,所述对所述交互控件进行相应的自动交互处理包括:对所述交互控件进行点击、选择、删除、修改和输入中的一种或多种自动交互处理。
第三方面,本发明实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述程序图形用户界面自动交互处理方法的步骤。
第四方面,本发明实施例还提供了一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所述程序图形用户界面自动交互处理方法的步骤。
由上面技术方案可知,本发明实施例提供的程序图形用户界面自动交互处理方法及装置,采用机器学习技术自动识别程序图形用户界面中包含的交互控件以及交互控件上的文字内容和文字内容出现的位置,从而根据识别得到交互控件以及交互控件上的文字内容和文字内容出现的位置,完成对所述程序图形用户界面的自动交互处理,从而使得应用程序的动态分析过程不被打断,进而解决了现有技术中在应用程序动态执行过程中因程序界面交互过程无法自动化完成而使得动态分析停滞的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一实施例提供的程序图形用户界面自动交互处理方法的流程图;
图2为本发明一实施例提供的程序图形用户界面自动交互处理装置的结构示意图;
图3为本发明一实施例提供的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1示出了本发明实施例提供的程序图形用户界面自动交互处理方法的流程图。如图1所示,本发明实施例提供的程序图形用户界面自动交互处理方法包括如下步骤:
步骤101:在程序运行过程中,获取待进行交互处理的程序图形用户界面;其中,所述程序图形用户界面中包含有待进行交互处理的交互控件。
需要说明的是,本步骤的执行主体可以为终端,比如计算机终端、移动终端,也可以为恶意软件分析系统,如沙箱。
在本步骤中,所述程序指待进行分析的恶意代码样本程序。所述交互控件可以为按钮Button、复选框CheckBox、组合框ComboBox、时间输入框DateTimePicker、文本标签Label、列表框ListBox、水平滚动条HscrollBar等控件。
步骤102:将所述程序图形用户界面输入至预设识别模型中,识别所述程序图形用户界面中包含的交互控件以及交互控件上的文字内容和文字内容出现的位置。
在本步骤中,所述预设识别模型是利用程序图形用户界面样本和从所述程序图形用户界面样本中提取的交互控件以及交互控件上的文字内容和文字内容出现的位置,基于机器学习算法,对初始机器学习模型进行训练后得到的。所述初始机器学习模型可以为CNN模型或RNN模型。
步骤103:根据识别得到的交互控件以及交互控件上的文字内容和文字内容出现的位置,对所述程序图形用户界面进行自动交互处理。
在本步骤中,当识别得到交互控件后,可以根据交互控件上的文字内容确定对应的交互操作。例如,交互控件上的文字内容为“用户名”,则确定对应的交互操作为输入用户名。相应地,根据文字内容“用户名”出现的位置确定用户名输入框的位置(一般与“用户名”出现的位置间隔1-2个字符),进而在用户名输入框的位置处输入相应的用户名。又如,交互控件上的文字内容为“确定”,则确定对应的交互操作为点击确定按钮(也即该交互控件),相应地,根据文字内容“确定”出现的位置找到确定按钮(也即该交互控件)的位置,进而点击该确定按钮,从而完成对程序图形用户界面的自动交互处理。
在本实施例中,需要说明的是,所述程序在运行过程中常常会出现程序图形用户界面,所述程序图形用户界面中包含有交互控件,所述交互控件在用户的触发下进行相应的动作,从而保证所述程序的正常运行。在对所述程序进行动态分析的过程中,一般对程序运行过程中出现的程序图形用户界面通过界面解析的方式来识别其上的控件,进而模拟按钮点击、复选框选择、文字输入等控件交互操作。对于普通界面来说,通过界面解析的方式能够实现对界面上的控件的识别(对普通界面的解析这部分内容属于现有技术),但是,对于一些自定义界面,通过界面解析无法识别界面上的控件,进而无法模拟用户进行点击、选择等操作,从而导致应用程序自动安装、程序界面交互过程无法自动化,使得动态分析停滞。为解决该问题,在本实施例中,采用机器学习技术自动识别程序图形用户界面中包含的交互控件以及交互控件上的文字内容和文字内容出现的位置,从而根据识别得到交互控件以及交互控件上的文字内容和文字内容出现的位置,完成对所述程序图形用户界面的自动交互处理,从而使得应用程序的动态分析过程不被打断,进而解决了现有技术中在应用程序动态执行过程中因程序界面交互过程无法自动化完成而使得动态分析停滞的问题。
由上面技术方案可知,本发明实施例提供的程序图形用户界面自动交互处理方法,采用机器学习技术自动识别程序图形用户界面中包含的交互控件以及交互控件上的文字内容和文字内容出现的位置,从而根据识别得到交互控件以及交互控件上的文字内容和文字内容出现的位置,完成对所述程序图形用户界面的自动交互处理,从而使得应用程序的动态分析过程不被打断,进而解决了现有技术中在应用程序动态执行过程中因程序界面交互过程无法自动化完成而使得动态分析停滞的问题。
进一步地,基于上述实施例的内容,在本实施例中,在将所述程序图形用户界面输入至预设识别模型中,识别所述程序图形用户界面中包含的交互控件以及交互控件上的文字内容和文字内容出现的位置之前,所述程序图形用户界面自动交互处理方法还包括:建立所述预设识别模型;
其中,所述建立所述预设识别模型,包括:
获取程序图形用户界面样本;
从所述程序图形用户界面样本中提取所述程序图形用户界面样本中包含的交互控件以及交互控件上的文字内容和文字内容出现的位置;
利用所述程序图形用户界面样本和从所述程序图形用户界面样本中提取的交互控件以及交互控件上的文字内容和文字内容出现的位置,基于机器学习算法,对初始机器学习模型进行训练直到满足预设训练结束条件,得到所述预设识别模型。
在本实施例中,需要通过机器学习的方式建立所述预设识别模型。在通过机器学习的方式建立所述预设识别模型时,需要先获取程序图形用户界面样本,然后从所述程序图形用户界面样本中提取所述程序图形用户界面样本中包含的交互控件以及交互控件上的文字内容和文字内容出现的位置,最后再利用所述程序图形用户界面样本和从所述程序图形用户界面样本中提取的交互控件以及交互控件上的文字内容和文字内容出现的位置,基于机器学习算法,对初始机器学习模型进行训练直到满足预设训练结束条件,得到所述预设识别模型。
在本实施例中,在通过机器学习的方式建立所述预设识别模型时,可以采用CNN或RNN模型。下面以CNN模型为例进行说明。CNN模型的结构主要包括:一个输入层、n个卷积层、n个池化层、m个全连接层、一个输出层;其中,所述输入层的输入为程序图形用户界面样本,输入层与卷积层C1相连接;所述卷积层C1含有k1个大小为a1×a1的卷积核,所述输入层的程序图形用户界面样本经过卷积层C1得到k1个特征图,进而将得到的特征图传送至池化层P1;所述池化层P1以b1×b1的采样大小对所述卷积层C1生成的特征图进行池化,得到相应的k1个采样后的特征图,再将得到的特征图传送至下一个卷积层C2;所述n个卷积层和池化层对的顺次连接,进而不断提取程序图形用户界面样本深层次的抽样特征,最后一个池化层Pn与全连接层F1相连接,其中,卷积层Ci含有ki个大小为ai×ai的卷积核,池化层Pj的采样大小为bj×bj,Ci表示第i个卷积层,Pj表示第j个池化层;所述全连接层F1为所述最后一个池化层Pn所得的所有kn个特征图的像素点映射而成的一维层,每个像素代表所述全连接层F1的一个神经元节点,F1层的所有神经元节点与下一个全连接层F2的神经元节点进行全连接;经m个全连接层顺次连接,最后一个全连接层Fm与所述输出层进行全连接;所述输出层输出所述程序图形用户界面样本中包含的交互控件以及交互控件上的文字内容和文字内容出现的位置信息。在本实施例中,可以利用所述程序图形用户界面样本和从所述程序图形用户界面样本中提取的交互控件以及交互控件上的文字内容和文字内容出现的位置,基于机器学习算法,对上述CNN模型进行训练直到上述CNN模型收敛为止,进而得到所述预设识别模型。
进一步地,基于上述实施例的内容,在本实施例中,所述根据识别得到的交互控件以及交互控件上的文字内容和文字内容出现的位置,对所述程序图形用户界面进行自动交互处理,包括:
根据识别得到的交互控件以及交互控件上的文字内容,基于预先设定的匹配规则,确定对应的交互处理方式,并根据所述交互处理方式和所述文字内容出现的位置,对所述交互控件进行相应的自动交互处理以实现对所述程序图形用户界面的自动交互处理。
在本实施例中,根据识别得到的交互控件以及交互控件上的文字内容,基于预先设定的匹配规则,确定对应的交互处理方式。所述预先设定的匹配规则中包含有文字内容和对应的交互处理方式之间的对应关系,如下表1所示。
表1
例如,若交互控件上的文字内容为“用户名”或“密码”,则确定对应的交互处理方式是输入用户名或密码。又如,若交互控件上的文字内容为“选择存储路径”,则确定对应的交互处理方式为选择对应的存储路径或输入对应的存储路径。又如,若交互控件上的文字内容为“下一步”,则确定对应的交互处理方式为点击“下一步”对应的按钮控件。又如,若交互控件中出现的文字是“完成”,则确定对应的交互处理方式为点击“完成”对应的按钮控件。其中,所述文字内容出现的位置用于指引进行交互处理动作的位置,例如,当交互控件中出现的文字内容是“完成”时,需要进行点击“完成”对应的按钮控件这一交互处理动作,而进行这一交互处理动作的位置就是文字内容“完成”的位置。类似地,当交互控件上的文字内容为“用户名”或“密码”,需要进行输入用户名或密码的交互处理动作,而该交互处理动作的位置一般为文字内容“用户名”或“密码”位置后面空两个字符之后的位置。
需要说明的是,上表1只是为了简单示意,在实际使用时,所述预先设定的匹配规则中包含有各种常见的文字内容和对应的交互处理方式之间的对应关系。
进一步地,基于上述实施例的内容,在本实施例中,所述根据识别得到的交互控件以及交互控件上的文字内容和文字内容出现的位置,对所述程序图形用户界面进行自动交互处理,包括:
根据识别得到的交互控件以及交互控件上的文字内容,基于自然语言处理算法,确定对应的交互处理方式,并根据所述交互处理方式和所述文字内容出现的位置,对所述交互控件进行相应的自动交互处理以实现对所述程序图形用户界面的自动交互处理。
在本实施例中,需要说明的是,自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。在本实施例中,根据识别得到的交互控件以及交互控件上的文字内容,基于自然语言处理算法,确定对应的交互处理方式。例如,当所述程序在安装过程中出现异常,对于动态分析过程而言,自然是希望程序继续执行,因此,对于出现“是否取消”的提示,需要点击“否”,对于出现“是否继续”的提示,需要点击“是”,对于这种情况,如果只是单纯的文字匹配,没有语义,会导致分析不完整或不正确,因此,需要基于自然语言处理算法,结合语义进行分析处理。
在本实施例中,在基于自然语言处理算法进行交互处理方式确定时,需要先对识别得到的文字内容进行分词、词性标注等处理(由于该部分内容属于本技术领域的常规处理方式,故本实施例对此不再做详细描述),在对识别得到的文字内容进行分词、词性标注等处理之后,需要建立基于机器学习的语言模型,然后将分词以及词性标注等处理后的词语输入至所述语言模型中,以识别所述文字内容想要表达的含义,进而根据自然语言处理结果确定对应的交互处理方式。
在本实施例中,需要说明的是,所述对所述交互控件进行相应的自动交互处理包括:对所述交互控件进行点击、选择、删除、修改和输入中的一种或多种自动交互处理,此外,根据程序执行和交互需要,还可以为其他自动交互处理方式,本实施例对此不作限定。
通过上面实施例的描述,本领域的技术人员可以清楚的了解到上面实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机、计算机、服务器、或者网络设备)执行本发明实施例所述的方法。
图2示出了本发明实施例提供的程序图形用户界面自动交互处理装置的结构示意图。如图2所示,本发明实施例提供的程序图形用户界面自动交互处理装置包括:获取模块21、识别模块22和处理模块23,其中:
获取模块21,用于在程序运行过程中,获取待进行交互处理的程序图形用户界面;其中,所述程序图形用户界面中包含有待进行交互处理的交互控件;
识别模块22,用于将所述程序图形用户界面输入至预设识别模型中,识别所述程序图形用户界面中包含的交互控件以及交互控件上的文字内容和文字内容出现的位置;
处理模块23,用于根据识别得到的交互控件以及交互控件上的文字内容和文字内容出现的位置,对所述程序图形用户界面进行自动交互处理;
其中,所述预设识别模型是利用程序图形用户界面样本和从所述程序图形用户界面样本中提取的交互控件以及交互控件上的文字内容和文字内容出现的位置,基于机器学习算法,对初始机器学习模型进行训练后得到的。
进一步地,基于上述实施例的内容,在本实施例中,所述程序图形用户界面自动交互处理装置,还包括:模型构建模块;
所述模型构建模块,具体用于:
获取程序图形用户界面样本;
从所述程序图形用户界面样本中提取所述程序图形用户界面样本中包含的交互控件以及交互控件上的文字内容和文字内容出现的位置;
利用所述程序图形用户界面样本和从所述程序图形用户界面样本中提取的交互控件以及交互控件上的文字内容和文字内容出现的位置,基于机器学习算法,对初始机器学习模型进行训练直到满足预设训练结束条件,得到所述预设识别模型。
进一步地,基于上述实施例的内容,在本实施例中,所述处理模块,具体用于:
根据识别得到的交互控件以及交互控件上的文字内容,基于自然语言处理算法,确定对应的交互处理方式,并根据所述交互处理方式和所述文字内容出现的位置,对所述交互控件进行相应的自动交互处理以实现对所述程序图形用户界面的自动交互处理。
由于本发明实施例提供的程序图形用户界面自动交互处理装置,可以用于执行上述实施例所述的程序图形用户界面自动交互处理方法,其工作原理和有益效果类似,故此处不再详述,具体内容可参见上述实施例的介绍。
基于相同的发明构思,本发明又一实施例提供了一种电子设备,参见图3,所述电子设备具体包括如下内容:处理器301、存储器302、通信接口303和通信总线304;
其中,所述处理器301、存储器302、通信接口303通过所述通信总线304完成相互间的通信;
所述处理器301用于调用所述存储器302中的计算机程序,所述处理器执行所述计算机程序时实现上述网络服务模拟方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述过程:在程序运行过程中,获取待进行交互处理的程序图形用户界面;其中,所述程序图形用户界面中包含有待进行交互处理的交互控件;将所述程序图形用户界面输入至预设识别模型中,识别所述程序图形用户界面中包含的交互控件以及交互控件上的文字内容和文字内容出现的位置;根据识别得到的交互控件以及交互控件上的文字内容和文字内容出现的位置,对所述程序图形用户界面进行自动交互处理;其中,所述预设识别模型是利用程序图形用户界面样本和从所述程序图形用户界面样本中提取的交互控件以及交互控件上的文字内容和文字内容出现的位置,基于机器学习算法,对初始机器学习模型进行训练后得到的。
基于相同的发明构思,本发明又一实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述网络服务模拟方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述过程:在程序运行过程中,获取待进行交互处理的程序图形用户界面;其中,所述程序图形用户界面中包含有待进行交互处理的交互控件;将所述程序图形用户界面输入至预设识别模型中,识别所述程序图形用户界面中包含的交互控件以及交互控件上的文字内容和文字内容出现的位置;根据识别得到的交互控件以及交互控件上的文字内容和文字内容出现的位置,对所述程序图形用户界面进行自动交互处理;其中,所述预设识别模型是利用程序图形用户界面样本和从所述程序图形用户界面样本中提取的交互控件以及交互控件上的文字内容和文字内容出现的位置,基于机器学习算法,对初始机器学习模型进行训练后得到的。
此外,上述的存储器中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的网络服务模拟方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种程序图形用户界面自动交互处理方法,其特征在于,包括:
在程序运行过程中,获取待进行交互处理的程序图形用户界面;其中,所述程序图形用户界面中包含有待进行交互处理的交互控件;
将所述程序图形用户界面输入至预设识别模型中,识别所述程序图形用户界面中包含的交互控件以及交互控件上的文字内容和文字内容出现的位置;
根据识别得到的交互控件以及交互控件上的文字内容和文字内容出现的位置,对所述程序图形用户界面进行自动交互处理;
其中,所述预设识别模型是利用程序图形用户界面样本和从所述程序图形用户界面样本中提取的交互控件以及交互控件上的文字内容和文字内容出现的位置,基于机器学习算法,对初始机器学习模型进行训练后得到的。
2.根据权利要求1所述的程序图形用户界面自动交互处理方法,其特征在于,在将所述程序图形用户界面输入至预设识别模型中,识别所述程序图形用户界面中包含的交互控件以及交互控件上的文字内容和文字内容出现的位置之前,所述程序图形用户界面自动交互处理方法还包括:建立所述预设识别模型;
其中,所述建立所述预设识别模型,包括:
获取程序图形用户界面样本;
从所述程序图形用户界面样本中提取所述程序图形用户界面样本中包含的交互控件以及交互控件上的文字内容和文字内容出现的位置;
利用所述程序图形用户界面样本和从所述程序图形用户界面样本中提取的交互控件以及交互控件上的文字内容和文字内容出现的位置,基于机器学习算法,对初始机器学习模型进行训练直到满足预设训练结束条件,得到所述预设识别模型。
3.根据权利要求1所述的程序图形用户界面自动交互处理方法,其特征在于,所述根据识别得到的交互控件以及交互控件上的文字内容和文字内容出现的位置,对所述程序图形用户界面进行自动交互处理,包括:
根据识别得到的交互控件以及交互控件上的文字内容,基于预先设定的匹配规则,确定对应的交互处理方式,并根据所述交互处理方式和所述文字内容出现的位置,对所述交互控件进行相应的自动交互处理以实现对所述程序图形用户界面的自动交互处理。
4.根据权利要求1所述的程序图形用户界面自动交互处理方法,其特征在于,所述根据识别得到的交互控件以及交互控件上的文字内容和文字内容出现的位置,对所述程序图形用户界面进行自动交互处理,包括:
根据识别得到的交互控件以及交互控件上的文字内容,基于自然语言处理算法,确定对应的交互处理方式,并根据所述交互处理方式和所述文字内容出现的位置,对所述交互控件进行相应的自动交互处理以实现对所述程序图形用户界面的自动交互处理。
5.根据权利要求3或4所述的程序图形用户界面自动交互处理方法,其特征在于,所述对所述交互控件进行相应的自动交互处理包括:对所述交互控件进行点击、选择、删除、修改和输入中的一种或多种自动交互处理。
6.一种程序图形用户界面自动交互处理装置,其特征在于,包括:
获取模块,用于在程序运行过程中,获取待进行交互处理的程序图形用户界面;其中,所述程序图形用户界面中包含有待进行交互处理的交互控件;
识别模块,用于将所述程序图形用户界面输入至预设识别模型中,识别所述程序图形用户界面中包含的交互控件以及交互控件上的文字内容和文字内容出现的位置;
处理模块,用于根据识别得到的交互控件以及交互控件上的文字内容和文字内容出现的位置,对所述程序图形用户界面进行自动交互处理;
其中,所述预设识别模型是利用程序图形用户界面样本和从所述程序图形用户界面样本中提取的交互控件以及交互控件上的文字内容和文字内容出现的位置,基于机器学习算法,对初始机器学习模型进行训练后得到的。
7.根据权利要求6所述的程序图形用户界面自动交互处理装置,其特征在于,还包括:模型构建模块;
所述模型构建模块,具体用于:
获取程序图形用户界面样本;
从所述程序图形用户界面样本中提取所述程序图形用户界面样本中包含的交互控件以及交互控件上的文字内容和文字内容出现的位置;
利用所述程序图形用户界面样本和从所述程序图形用户界面样本中提取的交互控件以及交互控件上的文字内容和文字内容出现的位置,基于机器学习算法,对初始机器学习模型进行训练直到满足预设训练结束条件,得到所述预设识别模型。
8.根据权利要求6所述的程序图形用户界面自动交互处理装置,其特征在于,所述处理模块,具体用于:
根据识别得到的交互控件以及交互控件上的文字内容,基于自然语言处理算法,确定对应的交互处理方式,并根据所述交互处理方式和所述文字内容出现的位置,对所述交互控件进行相应的自动交互处理以实现对所述程序图形用户界面的自动交互处理。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至5任一项所述程序图形用户界面自动交互处理方法的步骤。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至5任一项所述程序图形用户界面自动交互处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910579452.2A CN110399191A (zh) | 2019-06-28 | 2019-06-28 | 一种程序图形用户界面自动交互处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910579452.2A CN110399191A (zh) | 2019-06-28 | 2019-06-28 | 一种程序图形用户界面自动交互处理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110399191A true CN110399191A (zh) | 2019-11-01 |
Family
ID=68323651
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910579452.2A Pending CN110399191A (zh) | 2019-06-28 | 2019-06-28 | 一种程序图形用户界面自动交互处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110399191A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114048726A (zh) * | 2022-01-13 | 2022-02-15 | 北京中科汇联科技股份有限公司 | 一种计算机图形界面交互方法及系统 |
CN114443467A (zh) * | 2021-12-20 | 2022-05-06 | 奇安信科技集团股份有限公司 | 基于沙箱的界面交互方法、装置、电子设备、介质及产品 |
CN116703908A (zh) * | 2023-08-04 | 2023-09-05 | 有方(合肥)医疗科技有限公司 | 成像系统的测试方法、装置及成像系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104462979A (zh) * | 2014-12-26 | 2015-03-25 | 深圳数字电视国家工程实验室股份有限公司 | 一种应用程序的自动化动态检测方法及装置 |
CN107133519A (zh) * | 2017-05-15 | 2017-09-05 | 华中科技大学 | 一种安卓应用网络通信中隐私泄漏检测方法及系统 |
CN108763068A (zh) * | 2018-05-15 | 2018-11-06 | 福建天泉教育科技有限公司 | 一种基于机器学习的自动化测试方法及终端 |
CN109800049A (zh) * | 2019-01-23 | 2019-05-24 | 王心丹 | 一种功能业务的操作方法、装置、终端设备及存储介质 |
CN109829300A (zh) * | 2019-01-02 | 2019-05-31 | 广州大学 | App动态深度恶意行为检测装置、方法及系统 |
-
2019
- 2019-06-28 CN CN201910579452.2A patent/CN110399191A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104462979A (zh) * | 2014-12-26 | 2015-03-25 | 深圳数字电视国家工程实验室股份有限公司 | 一种应用程序的自动化动态检测方法及装置 |
CN107133519A (zh) * | 2017-05-15 | 2017-09-05 | 华中科技大学 | 一种安卓应用网络通信中隐私泄漏检测方法及系统 |
CN108763068A (zh) * | 2018-05-15 | 2018-11-06 | 福建天泉教育科技有限公司 | 一种基于机器学习的自动化测试方法及终端 |
CN109829300A (zh) * | 2019-01-02 | 2019-05-31 | 广州大学 | App动态深度恶意行为检测装置、方法及系统 |
CN109800049A (zh) * | 2019-01-23 | 2019-05-24 | 王心丹 | 一种功能业务的操作方法、装置、终端设备及存储介质 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114443467A (zh) * | 2021-12-20 | 2022-05-06 | 奇安信科技集团股份有限公司 | 基于沙箱的界面交互方法、装置、电子设备、介质及产品 |
CN114048726A (zh) * | 2022-01-13 | 2022-02-15 | 北京中科汇联科技股份有限公司 | 一种计算机图形界面交互方法及系统 |
CN114048726B (zh) * | 2022-01-13 | 2022-04-08 | 北京中科汇联科技股份有限公司 | 一种计算机图形界面交互方法及系统 |
CN116703908A (zh) * | 2023-08-04 | 2023-09-05 | 有方(合肥)医疗科技有限公司 | 成像系统的测试方法、装置及成像系统 |
CN116703908B (zh) * | 2023-08-04 | 2023-10-24 | 有方(合肥)医疗科技有限公司 | 成像系统的测试方法、装置及成像系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10728393B2 (en) | Emotion recognition to match support agents with customers | |
EP3497609B1 (en) | Detecting scripted or otherwise anomalous interactions with social media platform | |
CN110399191A (zh) | 一种程序图形用户界面自动交互处理方法及装置 | |
CN104935494B (zh) | 信息处理方法和装置 | |
KR20200118076A (ko) | 생체 검출 방법 및 장치, 전자 기기 및 저장 매체 | |
US12019945B2 (en) | Application replication platform | |
CN109885446A (zh) | 确定网站页面显示状态的方法及装置 | |
CN107451040A (zh) | 故障原因的定位方法、装置及计算机可读存储介质 | |
CN109918285A (zh) | 一种开源软件的安全识别方法及装置 | |
EP3786800B1 (en) | Method and system for generating model driven applications using artificial intelligence | |
CN110675252A (zh) | 风险评估方法、装置、电子设备及存储介质 | |
CN107239698A (zh) | 一种基于信号处理机制的反调试方法和装置 | |
CN109543409A (zh) | 用于检测恶意应用及训练检测模型的方法、装置及设备 | |
CN115826972A (zh) | 一种人脸识别方法、装置、计算机设备及存储介质 | |
CN111476349A (zh) | 一种模型测试方法及服务器 | |
CN111638883A (zh) | 基于决策树的决策引擎实现方法 | |
CN113344695A (zh) | 一种弹性风控方法、装置、设备和可读介质 | |
CN107506124B (zh) | 视频交友方法及系统 | |
CN114140547B (zh) | 图像生成方法和装置 | |
CN114881235A (zh) | 推理服务调用方法、装置、电子设备及存储介质 | |
US11727146B2 (en) | Systems and methods for privacy-preserving summarization of digital activity | |
Fernandes et al. | Quality attributes for mobile applications | |
CN111859370A (zh) | 识别服务的方法、装置、电子设备和计算机可读存储介质 | |
CN110110523A (zh) | 一种提升规则代码扫描准确率的方法 | |
CN109684113A (zh) | 一种基于windows消息及Hook机制的收银系统对接方法 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191101 |