CN111124575B - 窗体操作方法、装置和服务器 - Google Patents

窗体操作方法、装置和服务器 Download PDF

Info

Publication number
CN111124575B
CN111124575B CN201911314857.XA CN201911314857A CN111124575B CN 111124575 B CN111124575 B CN 111124575B CN 201911314857 A CN201911314857 A CN 201911314857A CN 111124575 B CN111124575 B CN 111124575B
Authority
CN
China
Prior art keywords
window
operation tool
attribute information
matched
searching
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
Application number
CN201911314857.XA
Other languages
English (en)
Other versions
CN111124575A (zh
Inventor
李晓
金洋
赵树新
王晓宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Data Driven Technology Co ltd
Original Assignee
Beijing Data Driven Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Data Driven Technology Co ltd filed Critical Beijing Data Driven Technology Co ltd
Priority to CN201911314857.XA priority Critical patent/CN111124575B/zh
Publication of CN111124575A publication Critical patent/CN111124575A/zh
Application granted granted Critical
Publication of CN111124575B publication Critical patent/CN111124575B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90344Query processing by using string matching techniques
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供了一种窗体操作方法、装置和服务器,包括:接收待操作窗体的窗体属性信息;从预设的配置文件中查找与窗体属性信息完全匹配的窗体操作工具;窗体操作工具包括用于操作待操作窗体的窗口和/或控件;如果查不到与窗体属性信息完全匹配的窗体操作工具,从配置文件中查找与一部分窗体属性信息相匹配的窗体操作工具;通过查找到的窗体操作工具操作待操作窗体。该方式中,利用精确与模糊匹配相结合的方式,既可在软件环境良好的场景下保证查找精度,又能在软件发生变动时提高兼容性,进而减少了研发成本和用户升级和使用的时间成本。

Description

窗体操作方法、装置和服务器
技术领域
本发明涉及窗体操作技术领域,尤其是涉及一种窗体操作方法、装置和服务器。
背景技术
目前主流的电脑操作系统大多是windows系统,而且各个IT企业主要是面向windows系统进行的产品开发。如果软件升级或软件的系统发生变更,在查找软件中需要操作的窗体的窗口及控件时,可能会出现软件在不同系统呈现不同的窗口类名等情况,使得用户在使用软件时,软件中的技术方案的相关参数及操作流程需要进行改动和调整,既增加了公司的研发成本,同时频繁升级也会给使用此软件的用户带来不便。
发明内容
有鉴于此,本发明的目的在于提供一种窗体操作方法,既可以软件环境良好的场景下保证查找精度,又能在软件发生变动时,提高兼容性,减少了研发成本和用户升级和使用的时间成本。
第一方面,本发明实施例提供了一种窗体操作方法,该方法包括:接收待操作窗体的窗体属性信息;其中,窗体属性信息包括待操作窗体的名称和类别;从预设的配置文件中查找与窗体属性信息完全匹配的窗体操作工具;窗体操作工具包括用于操作待操作窗体的窗口和/或控件;如果查不到与窗体属性信息完全匹配的窗体操作工具,从配置文件中查找与一部分窗体属性信息相匹配的窗体操作工具;通过查找到的窗体操作工具操作待操作窗体。
进一步的,从配置文件中查找与一部分窗体属性信息相匹配的窗体操作工具,包括:从窗体属性信息中,获取关键词和名称和类别中的一半数量的字符串;从配置文件中查找与获取到的关键词和字符串相匹配的窗体操作工具。
进一步的,窗体属性信息还包括待操作窗体的窗口和控件的布局;从配置文件中查找与获取到的关键词和字符串相匹配的窗体操作工具的步骤,包括:如果查不到与获取到的关键词和字符串相匹配的窗体操作工具,从窗体属性信息中,获取待操作窗体的窗口和控件的布局;从配置文件中查找与关键词或字符串,以及窗口和控件的布局,相匹配的窗体操作工具。
进一步的,窗体属性信息还包括待操作窗体的窗口和控件的布局;从配置文件中查找与获取到的关键词和字符串相匹配的窗体操作工具的步骤,包括:如果查不到与获取到的关键词和字符串相匹配的窗体操作工具,从窗体属性信息中获取窗口和控件的布局;从配置文件中查找与窗口和控件的布局相匹配的窗体操作工具。
进一步的,窗体属性信息还包括待操作窗体的窗口与窗口之间、窗口与控件之间的层级序列关系;从配置文件中查找与窗口和控件的布局相匹配的窗体操作工具的步骤,包括:如果查不到与窗口和控件的布局相匹配的窗体操作工具,从窗体属性信息中,获取层级序列关系;从配置文件中查找与关键词或字符串,以及层级序列关系,相匹配的窗体操作工具。
进一步的,窗体属性信息还包括待操作窗体的窗口与窗口之间、窗口与控件之间的层级序列关系;从配置文件中查找与窗口和控件的布局相匹配的窗体操作工具的步骤,包括:如果查不到与窗口和控件的布局相匹配的窗体操作工具,从窗体属性信息中,获取层级序列关系;从配置文件中查找与层级序列关系相匹配的窗体操作工具。
进一步的,通过查找到的窗体操作工具操作待操作窗体的步骤,包括:获取查找到的窗体操作工具对应的句柄;通过句柄,对待操作窗体进行预设的操作;预设的操作包括,自动点击窗体操作工具,和/或自动填充窗体操作工具中需要填写的内容。
第二方面,本发明实施例提供了一种窗体操作装置,该装置包括:信息接收模块,用于接收待操作窗体的窗体属性信息;其中,窗体属性信息包括待操作窗体的名称和类别;精确查找模块,用于从预设的配置文件中查找与窗体属性信息完全匹配的窗体操作工具;窗体操作工具包括用于操作待操作窗体的窗口和/或控件;模糊查找模块,用于如果查不到与窗体属性信息完全匹配的窗体操作工具,从配置文件中查找与一部分窗体属性信息相匹配的窗体操作工具;窗体操作模块,用于通过查找到的窗体操作工具操作待操作窗体。
第三方面,本发明实施例提供了一种服务器,包括处理器和存储器,存储器存储有能够被处理器执行的机器可执行指令,处理器执行机器可执行指令以实现第一方面任一实施方式的窗体操作方法。
第四方面,本发明实施例提供了一种机器可读存储介质,机器可读存储介质存储有机器可执行指令,机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现第一方面任一实施方式的窗体操作方法。
本发明实施例带来了以下有益效果:
本发明实施例提供了一种窗体操作方法、装置和服务器,接收待操作窗体的窗体属性信息;从预设的配置文件中查找与窗体属性信息完全匹配的窗体操作工具;窗体操作工具包括用于操作待操作窗体的窗口和/或控件;如果查不到与窗体属性信息完全匹配的窗体操作工具,从配置文件中查找与一部分窗体属性信息相匹配的窗体操作工具;通过查找到的窗体操作工具操作待操作窗体。该方式中,利用精确与模糊匹配相结合的方式,既可在软件环境良好的场景下保证查找精度,又能在软件发生变动时提高兼容性,进而减少了研发成本和用户升级和使用的时间成本。
另外,通过配置预设的配置文件保存相关信息,可以在软件变动较大的情况下,直接以修改配置形式尽快为用户解决问题,不需要依赖产品升级,增加了使用的灵活性。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种窗体操作方法的流程图;
图2为本发明实施例提供的一种窗体操作工具查找方法的流程图;
图3为本发明实施例提供的另一种窗体操作工具查找方法的流程图;
图4为本发明实施例提供的另一种窗体操作工具查找方法的流程图;
图5为本发明实施例提供的另一种窗体操作工具查找方法的流程图;
图6为本发明实施例提供的另一种窗体操作工具查找方法的流程图;
图7为本发明实施例提供的一种操作窗体的方法流程图;
图8为本发明实施例提供的一种窗体操作装置的结构示意图;
图9为本发明实施例提供的一种服务器的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
软件在商业及生活领域的贡献极大,其极大地提高了商业及生活效率。目前,在一些领域已经通过软件提高了工作效率,但是其软件的使用效率仍有需要继续提高。例如在一些特殊的场景中,如餐饮酒店、批发门店、超市开票人员等,每天都要处理的工作之一,就是为客人开具发票。虽然使用软件开具发票,已经很大地提高了工作效率,但是对于商场、超市、批发商等明细内容较多的发票开具场景,开票员仍然要进行大量的重复劳动来操作发票开具软件。另外,相关技术中,大多采用精确查找的方式,查找需要操作的窗口和空间,但是软件升级或软件的系统发生变更,如开票软件的升级、软件在不同系统呈现不同的类名等,技术方案相关参数以及流程就需要改动调整,既增加了公司研发成本,同时频繁升级也会给使用此方案的用户带来不便。基于此,本发明实施例提供的一种窗口操作方法、装置和服务器,既可在软件环境良好的场景下保证查找精度,又能在软件发生变动时提高兼容性,进而减少了研发成本和用户升级的时间成本。
为便于对本实施例进行理解,首先对本发明实施例所公开的一种窗体操作方法进行详细介绍。
实施例一:
首先,本发明实施例提供了一种窗体操作方法,如图1所示,该方法包括如下步骤:
步骤S102,接收待操作窗体的窗体属性信息;其中,窗体属性信息包括待操作窗体的名称和类别;
上述待操作窗体可以是各种软件所包括的窗体,例如某开票软件的登录窗口。上述窗体属性信息可以包括,窗口的标题、窗口所属类名、窗口大小、窗口布局、控件ID、位置信息、序列等级等。上述窗体属性信息通常根据业务场景里实际人工操作时,需要操作的窗口及控件,来获取待操作窗体的窗体属性信息。上述窗体属性信息可以通过获取窗体属性信息的工具得到,比如,Microsoft Spy++等工具。
步骤S104,从预设的配置文件中查找与窗体属性信息完全匹配的窗体操作工具;窗体操作工具包括用于操作待操作窗体的窗口和/或控件;
上述预设的配置文件可以包括软件的所有窗体操作工具,例如,若要操作发票开具软件的登录窗口,窗体操作工具可以包括登录窗口、填写用户密码的控件、填写用户口令的控件、点击登录的控件等。上述预设的配置文件中的信息,可以以配置文件形式保存,在获取待操作窗体的窗体属性信息时,同时可以按照预先设定的配置文件格式,直接生成对应的配置文件。
具体实施时,可以对上述窗体属性信息进行精确匹配,将窗体属性信息包括的名称和类名,与预设的配置文件中的所有窗体操作工具信息进行匹配,查找与窗体属性信息包括的名称和类名完全相同的窗口和控件;当然,也可以将窗体属性信息包括的名称或类名,与预设的配置文件中的所有窗体操作工具的信息进行匹配,从预设的配置文件中查找与窗体属性信息包括的名称或类名完全相同的窗口和控件。
步骤S106,如果查不到与窗体属性信息完全匹配的窗体操作工具,从配置文件中查找与一部分窗体属性信息相匹配的窗体操作工具;
由于软件升级或者系统变更等原因,通常可能会查不到与窗体属性信息完全匹配的窗体操作工具,可以通过模糊匹配或者其他的非精确的匹配方式,从配置文件中查找与一部分窗体属性信息相匹配的窗体操作工具。例如,某航信开票软件,由于软件变动,窗体标题可能会有大同小异的修改,如“电子增值税发票开票”改为“增值税电子发票开具”。窗体属性信包括的名称为“增值税电子发票开具”,而配置文件中保存到名称仍然是没有变动之前的名称“电子增值税发票开票”。针对此场景,就可以查找名称“增值税电子发票开具”中一部分与“电子增值税发票开票”相匹配的窗体操作工具。如果还是完全匹配的查找方式,就会查不到对应的窗体操作工具,这种情况下就需要查找,与一部分窗体属性信息相匹配的窗体操作工具,从而达到相应的查找效果。
步骤S108,通过查找到的窗体操作工具操作待操作窗体。
上述窗体操作工具可以包括用于操作待操作窗体的窗口和控件,可以根据具体的操作需求和查找得到的窗口控件的属性,确认查找得到的窗口和控件,需要进行的具体操作。例如,需要进行的操作的是,填写开票软件的登录窗口中的用户密码和用户口令,查找到的窗体操作工具为填写登录窗口的用户密码和用户口令控件,可以根据该控件,对开票软件的登录窗口填写用户密码和用户口令控件。
本发明实施例提供的一种窗体操作方法,接收待操作窗体的窗体属性信息;从预设的配置文件中查找与窗体属性信息完全匹配的窗体操作工具;窗体操作工具包括用于操作待操作窗体的窗口和/或控件;如果查不到与窗体属性信息完全匹配的窗体操作工具,从配置文件中查找与一部分窗体属性信息相匹配的窗体操作工具;通过查找到的窗体操作工具操作待操作窗体。该方式中,利用精确与模糊匹配相结合的方式,既可在软件环境良好的场景下保证查找精度,又能在软件发生变动时提高兼容性,进而减少了研发成本和用户升级和使用的时间成本。
另外,通过配置预设的配置文件保存相关信息,可以在软件变动较大的情况下,直接以修改配置形式尽快为用户解决问题,不需要依赖产品升级,增加了使用的灵活性。
进一步的,参见图2所示的窗体操作工具查找方法的流程图,从配置文件中查找与一部分窗体属性信息相匹配的窗体操作工具,具体包括如下步骤:
步骤S201,从窗体属性信息中,获取关键词和名称和类别中的一半数量的字符串;
步骤S202,从配置文件中查找与获取到的关键词和字符串相匹配的窗体操作工具。
上述一半数量的字符串可以是严格的以匹配一半的字符长度为标准的匹配,例如,如果待操作窗体的窗口所属类名为“abcdef”,可以选取一般数量的字符串,比如,abc、bcd、cde、def,与“abchik”、“abcdhi”和“sdefcg”进行匹配,由于“abchik”和“abcdhi”前三个字符串“abc”一致,“sdefcg”中的“def”字符串一致,且一致的字符串占了原字符长度(6个字符)的一半(3个字符),因此认为“abchik”、“abcdhi”和“sdefcg”符合匹配标准。上述选取的关键词可以是,选取需要匹配的待操作窗体的名称包括的关键词,只要匹配到相应的关键词,就认为符合匹配标准,例如,如果待操作窗体的窗口名称为“电子增值税发票开票”,那么与“增值税电子发票开具”进行关键词匹配,可以选取“电子增值税发票开票”中的关键词“增值税”和“发票开票”进行匹配,由于“电子增值税发票开票”中包括“增值税”和“发票开票”这两个关键词,因此认为“电子增值税发票开票”符合匹配标准。
具体的,窗口所属类名一般会以“通用名称部分+因机器而异的非固定字符串”的格式出现,因此一般针对待操作窗体的类名,会进行字符串过度匹配,对待操作窗体的名称进行关键词匹配,两种方式结合同时查找,查找与一部分窗体属性信息相匹配的窗体操作工具。
进一步的,上述窗体属性信息还包括待操作窗体的窗口和控件的布局;参见图3和图4所示的另一种窗体操作工具查找方法的流程图,从配置文件中查找与获取到的关键词和字符串相匹配的窗体操作工具的具体实现过程,步骤如下:
实施方式一:
步骤S301,如果查不到与获取到的关键词和字符串相匹配的窗体操作工具,从窗体属性信息中,获取待操作窗体的窗口和控件的布局;
步骤S302,从配置文件中查找与关键词或字符串,以及窗口和控件的布局,相匹配的窗体操作工具。
可能由于软件变动较大的,名称与类名都发生了较大的变化,通过名称和类名进行匹配,查不到与获取到的关键词和字符串相匹配的窗体操作工具,因此可以获取窗体属性信息中的字符串或者关键词,可以对字符串和关键词中的一种进行匹配查找;另外由于软件名称与类名都发生了较大的变化,也有可能其窗体操作工具中的窗口和控件的布局没有发生较大的变化,所以可以获取窗体操作工具中的窗口和控件的布局。其中上述窗口和控件的布局可以包括窗口和控件的相对位置,还可以包括窗口和控件之间的位置关系。从配置文件中查找与关键词或字符串,以及窗口和控件的布局,相匹配的窗体操作工具。
具体的,可以从窗体属性信息中获取窗体操作工具的名称的关键词,从配置文件中查找出与获取的关键词相匹配的窗体操作工具,同时从窗体属性信息中,获取待操作窗体的窗口和控件的布局,将获取关键词和布局,与配置文件中的窗体操作工具进行匹配,最后查找得到与关键词匹配,以及与窗口和控件的布局,也就是窗口和控件的相对位置和位置关系,大致匹配的窗体操作工具,其中大致匹配的误差不超过预设误差;或者,可以从窗体属性信息中获取窗体操作工具的类名的一半数量的字符串,从配置文件中查找出与获取的关键词相匹配的窗体操作工具,同时从窗体属性信息中,获取待操作窗体的窗口和控件的布局,将获取到的字符串和布局,与配置文件中的窗体操作工具进行匹配,最后查找得到与字符串匹配,以及与窗口和控件的布局,大致匹配的窗体操作工具,其中大致匹配的误差不超过预设误差。其中上述预设误差根据具体的需求设定。
实施方式二:
步骤S401,如果查不到与获取到的关键词和字符串相匹配的窗体操作工具,从窗体属性信息中,获取待操作窗体的窗口和控件的布局;
步骤S402,从配置文件中查找与窗口和控件的布局相匹配的窗体操作工具。
可能由于软件变动较大的,名称与类名都发生了较大的变化,通过名称和类名进行匹配,查不到与获取到的关键词和字符串相匹配的窗体操作工具,因此可以通过获取窗体操作工具中的窗口和控件的布局进行查找。上述窗口和控件的布局可以包括窗口和控件的相对位置,还可以包括窗口和控件之间的位置关系。若预设的配置文件中的窗体操作工具中的窗口和控件的布局与待操作窗体的窗体操作工具中的窗口和控件的布局,其中的相对位置和位置关系大致符合待操作窗体的窗体操作工具中的窗口和控件的相对位置和位置关系,误差不超过预设误差,即可查找得到相匹配的窗体操作工具。其中预设误差根据具体的需求设定。
进一步的,上述窗体属性信息还包括待操作窗体的窗口与窗口之间、窗口与控件之间的层级序列关系;参见图5和图6所示的另一种窗体操作工具查找方法的流程图,从配置文件中查找与窗口和控件的布局相匹配的窗体操作工具的具体实现过程,步骤如下:
实施方式一:
步骤S501,如果查不到与窗口和控件的布局相匹配的窗体操作工具,从窗体属性信息中,获取层级序列关系;
步骤S502,从配置文件中查找与关键词或字符串,以及层级序列关系,相匹配的窗体操作工具。
可能由于软件变动较大的,名称与类名都发生了较大的变化,其中窗口和控件的布局也发生了较大的变化,这时可能查找不到与待操作窗体的窗体操作工具中窗口和控件的布局相匹配的窗体操作工具,因此可以获取窗体属性信息中的字符串或者关键词,可以对字符串和关键词中的一种进行匹配查找;另外,由于软件发生变动,可能待操作窗体的窗口与窗口之间、窗口与控件之间的层级序列关系没有发生较大变化,所以可以获取窗体操作工具中的窗口与窗口之间、窗口与控件之间的层级序列关系。其中上述层级序列关系,可以是窗口与该窗口包括的子窗口之间的关系,子窗口之间的序列等级关系等,还可以是窗口与该窗口包括的控件之间的关系,包括所有控件与窗口的层级关系等。从配置文件中查找与关键词或字符串,以及层级序列关系,相匹配的窗体操作工具。
具体的,可以从窗体属性信息中获取窗体操作工具的名称的关键词,从配置文件中查找出与获取的关键词相匹配的窗体操作工具,同时从窗体属性信息中,获取待操作窗体的层级序列关系,将获取关键词和层级序列关系,与配置文件中的窗体操作工具进行匹配,最后查找得到与关键词匹配,以及与层级序列关系,大致匹配的窗体操作工具,其中大致匹配的误差不超过预设误差;或者,可以从窗体属性信息中获取窗体操作工具的类名的一半数量的字符串,从配置文件中查找出与获取的关键词相匹配的窗体操作工具,同时从窗体属性信息中,获取待操作窗体的层级序列关系,将获取到的字符串和层级序列关系,与配置文件中的窗体操作工具进行匹配,最后查找得到与字符串匹配,以及与层级序列关系,大致匹配的窗体操作工具,其中大致匹配的误差不超过预设误差。其中上述预设误差根据具体的需求设定。
实施方式二:
步骤S601,如果查不到与窗口和控件的布局相匹配的窗体操作工具,从窗体属性信息中,获取层级序列关系;
步骤S602,从配置文件中查找与层级序列关系相匹配的窗体操作工具。
可能由于软件变动较大的,名称与类名都发生了较大的变化,其中窗口和控件的布局也发生了较大的变化,这时可能查找不到与待操作窗体的窗体操作工具中窗口和控件的布局相匹配的窗体操作工具,因此可以通过获取窗体属性信息中待操作窗体中的窗口与窗口之间、窗口与控件之间的层级序列关系进行查找。若预设的配置文件中的窗体操作工具中的窗口与窗口之间、窗口与控件之间的层级序列关系与待操作窗体的窗体操作工具中的窗口与窗口之间、窗口与控件之间的层级序列关系,其中的层级序列关系大致符合待操作窗体的窗体操作工具中的窗口与窗口之间、窗口与控件之间的层级序列关系,误差不超过预设误差,即可查找得到相匹配的窗体操作工具。其中预设误差根据具体的需求设定。
上述方式中通过采用精确与模糊匹配的方式,可以在精确匹配查找不到相匹配的窗体操作工具情况下,通过模糊匹配的方式,可以查找得到由于软件升级或者系统变更,使得软件内操作窗体属性信息变更的窗体操作工具。既可在软件环境良好的场景下保证精度,又能在软件发生变动时,提高兼容性,节省了研发成本及用户升级和使用的时间成本。
进一步的,参见图7所示的操作窗体的方法流程图,通过查找到的窗体操作工具操作待操作窗体,具体包括如下步骤:
步骤S701,获取查找到的窗体操作工具对应的句柄;
步骤S702,通过句柄,对待操作窗体进行预设的操作;预设的操作包括,自动点击窗体操作工具,和/或自动填充窗体操作工具中需要填写的内容。
查找到对应窗体操作工具后,可以直接获取查找到的窗体操作工具包括的,用于操作待操作窗体的窗口或控件的句柄,当然也可以是窗口或控件的句柄;通过获取到的句柄,对待操作窗体进行预设的操作。
举例说明,上述待操作窗体为发票开具软件的登录窗口,需要进行的预设操作是自动填充用户密码和用户口令,从查找到的窗体工具中获取登录窗口的输入框控件句柄;将预设的用户密码(123456)和用户口令(9807),通过消息发送的方式发送给该输入框控件,该发票开具软件的登录窗口自动填充用户密码(123456)和用户口令(9807),完成对该待操作窗体的操作。
另一种方式,举例说明,上述待操作窗体为发票开具软件的登录窗口,需要进行的预设操作是自动点击登录按钮,从查找到的窗体工具中获取登录窗口的登录点击控件句柄,自动完成登录点击的操作。
进一步的,上述方法还包括,完成对待操作窗体的预设操作后,还需要进行验证查找的待操作窗体中的窗体操作工具是否正确;同时验证对待操作窗体的预设操作是否正确。比如,在预设的操作为对待操作窗体进行内容填充的情况下,可以重新获取该控件的填写内容,判断是否跟预设的填充内容一致,进而判断是不是正确查找到了窗体操作工具和输入框控件。并且根据执行结果判断是否正确执行了输入操作。
若对待操作窗体进行的是点击操作,那这个操作就是鼠标点击,预期的结果可以是出现另一个预期的主窗体。如果该主窗体没有正常出现,则判断可能是查找了错误的窗体操作工具;或者弹出的是其他的窗体,则可能是点击了其他能弹出窗体的按钮。
实施例二:
本发明实施例提供了一种窗体操作装置,如图8所示,该装置包括:
信息接收模块81,用于接收待操作窗体的窗体属性信息;其中,窗体属性信息包括待操作窗体的名称和类别;
精确查找模块82,用于从预设的配置文件中查找与窗体属性信息完全匹配的窗体操作工具;窗体操作工具包括用于操作待操作窗体的窗口和/或控件;
模糊查找模块83,用于如果查不到与窗体属性信息完全匹配的窗体操作工具,从配置文件中查找与一部分窗体属性信息相匹配的窗体操作工具;
窗体操作模块84,用于通过查找到的窗体操作工具操作待操作窗体。
进一步的,上述模糊查找模块还用于:从窗体属性信息中,获取关键词和名称和类别中的一半数量的字符串;从配置文件中查找与获取到的关键词和字符串相匹配的窗体操作工具。
进一步的,上述窗体属性信息还包括待操作窗体的窗口和控件的布局。
进一步的,上述模糊查找模块还用于:如果查不到与获取到的关键词和字符串相匹配的窗体操作工具,从窗体属性信息中,获取待操作窗体的窗口和控件的布局;从配置文件中查找与关键词或字符串,以及窗口和控件的布局,相匹配的窗体操作工具。
进一步的,上述模糊查找模块还用于:如果查不到与获取到的关键词和字符串相匹配的窗体操作工具,从窗体属性信息中获取窗口和控件的布局;从配置文件中查找与窗口和控件的布局相匹配的窗体操作工具。
进一步的,窗体属性信息还包括待操作窗体的窗口与窗口之间、窗口与控件之间的层级序列关系。
进一步的,上述模糊查找模块还用于:如果查不到与窗口和控件的布局相匹配的窗体操作工具,从窗体属性信息中,获取层级序列关系;从配置文件中查找与关键词或字符串,以及层级序列关系,相匹配的窗体操作工具。
进一步的,上述模糊查找模块还用于:如果查不到与窗口和控件的布局相匹配的窗体操作工具,从窗体属性信息中,获取层级序列关系;从配置文件中查找与层级序列关系相匹配的窗体操作工具。
进一步的,上述窗体操作模块还用于:获取查找到的窗体操作工具对应的句柄;通过句柄,对待操作窗体进行预设的操作;预设的操作包括,自动点击窗体操作工具,和/或自动填充窗体操作工具中需要填写的内容。
本发明实施例提供了一种窗体操作装置,接收待操作窗体的窗体属性信息;从预设的配置文件中查找与窗体属性信息完全匹配的窗体操作工具;窗体操作工具包括用于操作待操作窗体的窗口和/或控件;如果查不到与窗体属性信息完全匹配的窗体操作工具,从配置文件中查找与一部分窗体属性信息相匹配的窗体操作工具;通过查找到的窗体操作工具操作待操作窗体。该方式中,利用精确与模糊匹配相结合的方式,既可在软件环境良好的场景下保证查找精度,又能在软件发生变动时提高兼容性,进而减少了研发成本和用户升级和使用的时间成本。
另外,通过配置预设的配置文件保存相关信息,可以在软件变动较大的情况下,直接以修改配置形式尽快为用户解决问题,不需要依赖产品升级,增加了使用的灵活性。
本发明实施例提供的窗体操作装置,与上述实施例提供的窗体操作方法具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。
本发明实施例还提供了一种服务器,参见图9所示,包括处理器和存储器,存储器存储有能够被处理器执行的机器可执行指令,处理器执行机器可执行指令以实现上述窗体操作方法。
进一步地,图9所示的服务器还包括总线132和通信接口133,处理器130、通信接口133和存储器131通过总线132连接。
其中,存储器131可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口133(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线132可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
处理器130可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器130中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器130可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DigitalSignal Processing,简称DSP)、专用集成电路(Application Specific IntegratedCircuit,简称ASIC)、现成可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器131,处理器130读取存储器131中的信息,结合其硬件完成前述实施例的方法的步骤。
本发明实施例还提供了一种机器可读存储介质,该机器可读存储介质存储有机器可执行指令,该机器可执行指令在被处理器调用和执行时,该机器可执行指令促使处理器实现上述窗体操作方法,具体实现可参见方法实施例,在此不再赘述。
本发明实施例所提供的窗体操作方法、装置和服务器的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (5)

1.一种窗体操作方法,其特征在于,所述方法包括:
接收待操作窗体的窗体属性信息;其中,所述窗体属性信息包括所述待操作窗体的名称和类别;
从预设的配置文件中查找与所述窗体属性信息完全匹配的窗体操作工具;所述窗体操作工具包括用于操作所述待操作窗体的窗口和/或控件;
如果查不到与所述窗体属性信息完全匹配的窗体操作工具,从所述配置文件中查找与一部分所述窗体属性信息相匹配的窗体操作工具;
通过查找到的所述窗体操作工具操作所述待操作窗体;
其中,从预设的配置文件中查找与所述窗体属性信息完全匹配的窗体操作工具的步骤包括:
在所述配置文件中查找与所述窗体属性信息包括的名称和类名完全相同的窗口和控件,确定所述窗体操作工具;
从所述配置文件中查找与一部分所述窗体属性信息相匹配的窗体操作工具,包括:
从所述窗体属性信息中,获取关键词和所述名称和类别中的一半数量的字符串;从所述配置文件中查找与获取到的所述关键词和所述字符串相匹配的窗体操作工具;
所述窗体属性信息还包括所述待操作窗体的窗口和控件的布局;
所述从所述配置文件中查找与获取到的所述关键词和所述字符串相匹配的窗体操作工具的步骤,包括:
如果查不到与获取到的所述关键词和所述字符串相匹配的窗体操作工具,从所述窗体属性信息中,获取所述待操作窗体的窗口和控件的布局;
从所述配置文件中查找与所述关键词或所述字符串,以及所述窗口和控件的布局,相匹配的窗体操作工具;
或者,所述从所述配置文件中查找与获取到的所述关键词和所述字符串相匹配的窗体操作工具的步骤,包括:
如果查不到与获取到的所述关键词和所述字符串相匹配的窗体操作工具,从所述窗体属性信息中获取窗口和控件的布局;
从所述配置文件中查找与所述窗口和控件的布局相匹配的窗体操作工具;
所述窗体属性信息还包括所述待操作窗体的窗口与窗口之间、窗口与控件之间的层级序列关系;
所述从所述配置文件中查找与所述窗口和控件的布局相匹配的窗体操作工具的步骤,包括:
如果查不到与所述窗口和控件的布局相匹配的窗体操作工具,从所述窗体属性信息中,获取所述层级序列关系;
从所述配置文件中查找与所述关键词或所述字符串,以及所述层级序列关系,相匹配的窗体操作工具;
或者,所述从所述配置文件中查找与所述窗口和控件的布局相匹配的窗体操作工具的步骤,包括:
如果查不到与所述窗口和控件的布局相匹配的窗体操作工具,从所述窗体属性信息中,获取所述层级序列关系;
从所述配置文件中查找与所述层级序列关系相匹配的窗体操作工具。
2.根据权利要求1所述的方法,其特征在于,通过查找到的所述窗体操作工具操作所述待操作窗体的步骤,包括:
获取查找到的所述窗体操作工具对应的句柄;
通过所述句柄,对所述待操作窗体进行预设的操作;所述预设的操作包括,自动点击所述窗体操作工具,和/或自动填充所述窗体操作工具中需要填写的内容。
3.一种窗体操作装置,其特征在于,所述装置包括:
信息接收模块,用于接收待操作窗体的窗体属性信息;其中,所述窗体属性信息包括所述待操作窗体的名称和类别;
精确查找模块,用于从预设的配置文件中查找与所述窗体属性信息完全匹配的窗体操作工具;所述窗体操作工具包括用于操作所述待操作窗体的窗口和/或控件;
模糊查找模块,用于如果查不到与所述窗体属性信息完全匹配的窗体操作工具,从所述配置文件中查找与一部分所述窗体属性信息相匹配的窗体操作工具;
窗体操作模块,用于通过查找到的所述窗体操作工具操作所述待操作窗体;
其中,所述精确查找模块,还用于在所述配置文件中查找与所述窗体属性信息包括的名称和类名完全相同的窗口和控件,确定所述窗体操作工具;
所述模糊查找模块,还用于从所述窗体属性信息中,获取关键词和所述名称和类别中的一半数量的字符串;从所述配置文件中查找与获取到的所述关键词和所述字符串相匹配的窗体操作工具;
所述窗体属性信息还包括所述待操作窗体的窗口和控件的布局;如果查不到与获取到的所述关键词和所述字符串相匹配的窗体操作工具,所述模糊查找模块,还用于从所述窗体属性信息中,获取所述待操作窗体的窗口和控件的布局;从所述配置文件中查找与所述关键词或所述字符串,以及所述窗口和控件的布局,相匹配的窗体操作工具;
或者,如果查不到与获取到的所述关键词和所述字符串相匹配的窗体操作工具,所述模糊查找模块,还用于从所述窗体属性信息中获取窗口和控件的布局;从所述配置文件中查找与所述窗口和控件的布局相匹配的窗体操作工具;
所述窗体属性信息还包括所述待操作窗体的窗口与窗口之间、窗口与控件之间的层级序列关系;如果查不到与所述窗口和控件的布局相匹配的窗体操作工具,所述模糊查找模块,还用于从所述窗体属性信息中,获取所述层级序列关系;从所述配置文件中查找与所述关键词或所述字符串,以及所述层级序列关系,相匹配的窗体操作工具;
或者,如果查不到与所述窗口和控件的布局相匹配的窗体操作工具,所述模糊查找模块,还用于从所述窗体属性信息中,获取所述层级序列关系;从所述配置文件中查找与所述层级序列关系相匹配的窗体操作工具。
4.一种服务器,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令以实现权利要求1-2任一项所述的窗体操作方法。
5.一种机器可读存储介质,其特征在于,所述机器可读存储介质存储有机器可执行指令,所述机器可执行指令在被处理器调用和执行时,所述机器可执行指令促使所述处理器实现权利要求1-2任一项所述的窗体操作方法。
CN201911314857.XA 2019-12-18 2019-12-18 窗体操作方法、装置和服务器 Active CN111124575B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911314857.XA CN111124575B (zh) 2019-12-18 2019-12-18 窗体操作方法、装置和服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911314857.XA CN111124575B (zh) 2019-12-18 2019-12-18 窗体操作方法、装置和服务器

Publications (2)

Publication Number Publication Date
CN111124575A CN111124575A (zh) 2020-05-08
CN111124575B true CN111124575B (zh) 2023-07-28

Family

ID=70500168

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911314857.XA Active CN111124575B (zh) 2019-12-18 2019-12-18 窗体操作方法、装置和服务器

Country Status (1)

Country Link
CN (1) CN111124575B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106126217A (zh) * 2016-06-17 2016-11-16 武汉深之度科技有限公司 一种应用窗口的信息获取方法、装置及计算设备
CN106682509A (zh) * 2016-08-16 2017-05-17 腾讯科技(深圳)有限公司 窗体处理方法和装置
CN108255722A (zh) * 2018-01-15 2018-07-06 厦门美图移动科技有限公司 脚本生成方法、脚本生成装置及服务器
CN109522086A (zh) * 2018-11-29 2019-03-26 金蝶软件(中国)有限公司 对窗口的操作方法和装置、计算机装置及可读存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2904850C (en) * 2014-09-22 2021-04-20 Ngp Inc. Analytes monitoring by differential swept wavelength absorption spectroscopy methods

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106126217A (zh) * 2016-06-17 2016-11-16 武汉深之度科技有限公司 一种应用窗口的信息获取方法、装置及计算设备
CN106682509A (zh) * 2016-08-16 2017-05-17 腾讯科技(深圳)有限公司 窗体处理方法和装置
CN108255722A (zh) * 2018-01-15 2018-07-06 厦门美图移动科技有限公司 脚本生成方法、脚本生成装置及服务器
CN109522086A (zh) * 2018-11-29 2019-03-26 金蝶软件(中国)有限公司 对窗口的操作方法和装置、计算机装置及可读存储介质

Also Published As

Publication number Publication date
CN111124575A (zh) 2020-05-08

Similar Documents

Publication Publication Date Title
US10185555B2 (en) Method for automatically determining application recommendation result based on auxiliary information and associated computer readable medium and user interface
JP4122297B2 (ja) メッセージ解析装置及びメッセージ表示方法
CN103457837A (zh) 通过搜索引擎进行即时通信搜索的方法及系统
CN113741898B (zh) 表单生成方法、装置及设备
CN110580189A (zh) 生成前端页面的方法、装置、计算机设备以及存储介质
JP2009205220A (ja) 情報検索システム、情報検索方法、情報検索プログラム及び記録媒体
CN110599278B (zh) 聚合设备标识符的方法、装置和计算机存储介质
CN111124575B (zh) 窗体操作方法、装置和服务器
US20080147652A1 (en) Physical address verification within electronic documents
CN111708957A (zh) 基于索引和值引更新前端页面的方法、装置、计算机设备
CN110378566B (zh) 信息核对方法、设备、存储介质及装置
CN111580794A (zh) 业务管理系统中业务单据创建方法和装置
JP7018356B2 (ja) ビジュアルプログラミングツールを用いてプログラムを作成することを支援する装置および方法
JP2002222075A (ja) 情報処理システム、情報処理方法、コンピュータ読取可能な記録媒体、及びプログラム
CN109409362A (zh) 基于tesseract引擎的图片敏感词检测和定位方法和装置
CN113779362A (zh) 数据搜索方法及装置
CN111782504B (zh) 一种应用程序异常的诊断方法、移动终端及可读存储介质
CN114004197A (zh) 表单处理方法、装置、电子设备及介质
CN113535830A (zh) 接口自动扩展方法、装置、设备及存储介质
WO2020233093A1 (zh) 关联图谱生成方法、装置、计算机设备和存储介质
CN108319640B (zh) 根据用户偏好进行车源展现的方法及装置
CN114265541B (zh) 一种信息输入方法、计算设备及存储介质
US20190019054A1 (en) Contact Information Identification System
CN115052045B (zh) 后台管理系统的访问方法、装置及电子设备
CN114840743B (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