CN114020576A - 一种网页标签文本定位方法 - Google Patents

一种网页标签文本定位方法 Download PDF

Info

Publication number
CN114020576A
CN114020576A CN202111346359.0A CN202111346359A CN114020576A CN 114020576 A CN114020576 A CN 114020576A CN 202111346359 A CN202111346359 A CN 202111346359A CN 114020576 A CN114020576 A CN 114020576A
Authority
CN
China
Prior art keywords
node
webpage
text information
operation control
serial number
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
Application number
CN202111346359.0A
Other languages
English (en)
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.)
Shanghai I Search Software Co ltd
Original Assignee
Shanghai I Search Software 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 Shanghai I Search Software Co ltd filed Critical Shanghai I Search Software Co ltd
Priority to CN202111346359.0A priority Critical patent/CN114020576A/zh
Publication of CN114020576A publication Critical patent/CN114020576A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
    • G06F11/3093Configuration details thereof, e.g. installation, enabling, spatial arrangement of the probes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3438Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/86Event-based monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/865Monitoring of software

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了网页标签定位技术领域的一种网页标签文本定位方法,包括:响应于用户操作网页产生网页事件时,向网页DOM树中插入事件监控器;响应于用户操作网页控件时,于网页DOM树中定位当前操作控件所在结点;基于当前操作控件所在结点查找包含包含有效文本信息的结点;响应于查找到包含有效文本信息的结点后,将结点信息及标签发送至指定位置。本发明提供了一种简单有效的方法,自动定位操作控件对应的标签文本,在RPA流程中使用标签文本来表示操作控件,增加了更多的语义信息,方便用户理解。

Description

一种网页标签文本定位方法
技术领域
本发明涉及一种网页标签文本定位方法,属于网页标签定位技术领域。
背景技术
在RPA流程中的每一步操作都包含两个方面的内容,即定位控件和执行相应的操作。对于网页控件,一般可以通过xpath或者cssselector来定位。由于xpath或者cssselector仅包含了控件的定位信息,未包含控件的语义信息,虽然可以用于精确定位,但是不方便人的理解。因此,在设计网页时,一般会用文字标签来表示控件的语义信息,用户操作页面时根据标签来定位和操作对应的控件。这个文字标签与实际操作的控件是两个控件,在位置上相邻。
对于网页控件,按钮的标签一般被放置于表示按钮节点的内部,可以直接提取,但是编辑框、选择框等控件的列表往往是在控件结点之外,在页面的绝对位置上相邻,在网页的DOM树中却没有比较明确的关系,不方便直接获取。若是没有表示语义的标签,仅使用控件的定位信息来表示控件,虽然能够正确执行RPA流程,但是让人来理解这些流程时就会发生困难,常常需要手动在页面上重新定位这些控件,查找它对应的语义信息,由于一个流程中可能有非常多的操作,使用整个过程非常麻烦。用户在阅读RPA流程时,若想知道这些控件的含义,还需要手动重新定位,非常不方便。
发明内容
本发明的目的在于克服现有技术中的不足,提供一种网页标签文本定位方法,能够达到自动定位网页标签,获取控件对应的标签文本的效果。
为达到上述目的,本发明是采用下述技术方案实现的:
第一方面,本发明提供了一种网页标签文本定位方法,包括:
响应于用户操作网页产生网页事件时,向网页DOM树中插入事件监控器;
响应于用户操作网页控件时,于网页DOM树中定位当前操作控件所在结点;
基于当前操作控件所在结点查找包含有效文本信息的结点;
响应于查找到包含有效文本信息的结点后,将结点信息及标签发送至指定位置。
进一步的,所述有效文本信息的判断标准为汉字数量不超过十个,且字符中间没有其他非文本字符串。
进一步的,基于当前操作控件所在结点查找包含有效文本信息的结点,包括:
获取当前操作控件所在结点在当前层级的序号N;
基于序号N的数值大小进行结点查找,包括:
响应于序号N大于零时,获取同一层级节点序号为N-1的结点;
响应于序号N为零时,获取当前操作控件所在结点的父结点;
基于当前操作控件所在结点的父结点在上一层级获取所述父结点的层级序号N,并重复结点查找过程;
响应于结点不包含有效文本信息时,跳过该结点继续向前查找;
响应于查找到包含有效文本信息的结点时,结束查找。
进一步的,基于当前操作控件所在结点查找包含有效文本信息的结点,包括:
获取当前操作控件所在结点在当前层级的序号N和位置;
基于序号N的数值大小进行结点查找,包括:
响应于序号N大于零时,获取同一层级节点序号为N-1的结点;
响应于序号N为零时,获取当前操作控件所在结点的父结点;
基于当前操作控件所在结点的父结点在上一层级获取所述父结点的层级序号N,并重复结点查找过程;
响应于结点不包含有效文本信息时,跳过该结点继续向前查找;
响应于查找到包含有效文本信息的结点时,记录该节点对应的有效文本信息和该节点在页面中的绝对位置;
响应于已查到包含有效文本信息的结点达到指定结点数量时,结束查找;
基于节点在页面的绝对位置选择第一个匹配到的结点。
进一步的,所述指定结点数量不大于五。
进一步的,基于节点在页面的绝对位置选择第一个匹配到的结点,包括:判断控件左边是否存在包含有效文本信息的对应结点,若存在则返回重叠面积最大的结点,否则判断控件上边是否存在包含有效文本信息的对应结点,若存在则返回重叠面积最大的结点,否则返回空。
进一步的,所述文本信息通过消息包的方式进行发送,所述消息包还包括操作类型、控件路径和时间戳。
进一步的,所述指定位置包括后台服务器、文件位置和缓存地址。
第二方面,一种网页标签文本定位装置,包括处理器及存储介质;
所述存储介质用于存储指令;
所述处理器用于根据所述指令进行操作以执行根据上述任一项所述方法的步骤。
第三方面,计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一项所述方法的步骤。
与现有技术相比,本发明所达到的有益效果:
一、本发明提供一种定位网页控件标签的方法,使用标签来代表控件,相比较于控件自身的路径,标签提供了更多的语义信息,所以更容易理解。在创建RPA流程时,使用标签就可以表示每一个操作的具体含义,在保证RPA流程正确执行的情况下,标签表示的结点让整个流程变得非常容易理解。
二、本发明利用标签一般位于控件左边和上边这一规律,以及网页DOM树的特性,提供了一个简单有效的方法,以极小的计算量获得了相对准确的结果。相比较于别的方法比如模板匹配,CV识别,它的计算量极少,准确率也差别不大,达到了较好平衡。
附图说明
下面结合附图和实施例对本发明做进一步的说明,其中:
图1是本发明实施例一提供的网页标签文本定位方法的系统框架示意图;
图2是本发明实施例一提供的网页标签文本定位方法的浏览器界面示意图;
图3是本发明实施例一提供的网页标签文本定位方法的DOM树示意图;
图4是本发明实施例一提供的网页标签文本定位方法的标签结点示意图;
图5是本发明实施例一提供的网页标签文本定位方法流程示意图;
图5a是本发明实施例一提供的查找网页标签结点方法流程示意图;
图5b是本发明实施例二提供的查找网页标签结点方法流程示意图;
具体实施方式
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
实施例一:
一种网页标签文本定位方法,该方法的操作场景如图1所示,该场景包含用户和电子设备,其中电子设备可以为台式计算机、笔记本计算机、平板电脑、手机、车载终端等具备显示屏蔽的终端。用户使用电子设备的浏览器可以打开网页,在网页上执行操作。图2为浏览器界面示例图,在一个典型的网页中,包含有标签、编辑框、按钮等元素。一般情况下,标签在编辑框的左右,表示编辑框要输入的内容。图3为DOM树示意图,它表示一个网页的内部数据。在一个典型的网页中,包含有head和body结点,在head结点中存储网页的一般信息,比如标题,网页大小,引入的JS库等。在body结点中包含多级子结点,对应网页的内容。图4为标签结点示意图,它表示网页中一个标签结点在dom树与对应的编辑框的相对距离,它们一般不是在同一级结点中。本方法以用户于chrome浏览器安装浏览器插件后为例,请参阅图5,包括如下步骤:
S100:响应于用户操作网页产生网页事件时,浏览器插件自动往页面DOM树中插入事件监控器,监控常见的操作事件:比如click,submit等;
S200:响应于用户操作网页控件时,于网页DOM树中定位当前操作控件所在结点位置;
S300:基于当前操作控件所在结点,查找包含有效文本信息的对应结点(其中有效文本信息的判断标准为汉字数量不超过十个,且字符中间没有其他非文本字符串),请参阅图5a,包括:
S301:在DOM树上定位点击的按钮,获得当前操作控件所在当前层级的序号N(每个结点里可以包含多个子结点,序号从零开始),执行S302;
S302:判断当前序号N是否大于零,若大于零则执行S303,否则执行S307;
S303:获取同一层级序号为N-1的结点,执行S304;
S304:判断该层级序号为N-1的结点是否为包含有效文本信息的对应结点,若该层级序号为N-1的结点为包含有效文本信息的对应结点则执行S305,否则执行S306;
S305:返回该结点;
S306:基于该层级序号为N-1的结点作为层级序号为N的结点,重新执行S302;
S307:寻找当前操作控件所在结点的父结点,获取其层级序号N,执行S308;
S308:判断该父节点是否为根节点,若为根节点则执行S309,否则基于该父结点的层级序号N,重新执行S302;
S309:返回空。
需要说明的是,文本框的标签一般都在它的左边或者上边,所以都是在DOM树上向前查找,向前的含义是同一个结点内(它的父结点,父父结点等等),序号比它小的,其中,过滤<ul><li>,<select><option>,<script>三种类型结点,ul.li和select.option用于表示菜单列表,它们不会是标签;script表示脚本结点,也不可能是标签。
S400:响应于查找到包含有效文本信息的结点后,将结点信息及标签(操作类型,控件路径xpath,标签,时间戳)发送给指定位置(如后台服务器、文件位置和缓存地址)。
实施例二:
上述实施例一是最简方案,可以达到80%准确率。为了进一步提高准确率,实施例一中的S300可以做一些加强,请参阅图5b,改进后的S300包括:
S301:在DOM树上定位按钮,获得它在DOM树的位置即在当前节点层级序号N,以及其在页面上的绝对位置(包括x,y,w,h,其中x,y为控件的左上角坐标,w,h分别表示控件的宽和高),执行S302;
S302:判断当前序号N是否大于零,若大于零则执行S303,否则执行S307;
S303:获取同一层级序号为N-1的结点,及其绝对位置,执行S304;
S304:判断该层级序号为N-1的结点是否为包含有效文本信息的对应结点,若该层级序号为N-1的结点为包含有效文本信息的对应结点则执行S305,否则执行S306;
S305:判断包含有效文本信息的对应结点数量是否达标,若达标则执行S309,否则执行S306;
S306:基于该层级序号为N-1的结点作为层级序号为N的结点,重新执行S302;
S307:寻找当前操作控件所在结点的父结点,获取其层级序号N,执行S308;
S308:判断该父节点是否为根节点,若非根节点则基于该父结点的层级序号N,重新执行S302,若是根节点则执行S309;
S309:判断控件左边是否存在包含有效文本信息的对应结点,若存在则执行S310,否则执行S311;
S310:返回重叠面积最大的结点;
S311:判断控件上边是否存在包含有效文本信息的对应结点,若存在则执行S312,否则执行S313;
S312:返回重叠面积最大的结点;
S313:返回空。
其中,S305中包含有效文本信息的对应结点数量标准最多为五个包含有效文本信息的结点。
实施例三:
本发明实施例还提供了一种网页标签文本定位装置,包括处理器及存储介质;
所述存储介质用于存储指令;
所述处理器用于根据所述指令进行操作以执行下述方法的步骤:
响应于用户操作网页产生网页事件时,向网页DOM树中插入事件监控器;
响应于用户操作网页控件时,于网页DOM树中定位当前操作控件所在结点;
基于当前操作控件所在结点查找包含有效文本信息的结点;
响应于查找到包含有效文本信息的结点后,将结点信息及标签发送至指定位置。
实施例四:
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现下述方法的步骤:
响应于用户操作网页产生网页事件时,向网页DOM树中插入事件监控器;
响应于用户操作网页控件时,于网页DOM树中定位当前操作控件所在结点;
基于当前操作控件所在结点查找包含有效文本信息的结点;
响应于查找到包含有效文本信息的结点后,将结点信息及标签发送至指定位置。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。

Claims (10)

1.一种网页标签文本定位方法,其特征在于,包括:
响应于用户操作网页产生网页事件时,向网页DOM树中插入事件监控器;
响应于用户操作网页控件时,于网页DOM树中定位当前操作控件所在结点;
基于当前操作控件所在结点查找包含有效文本信息的结点;
响应于查找到包含有效文本信息的结点后,将结点信息及标签发送至指定位置。
2.根据权利要求1所述的网页标签文本定位方法,其特征在于,所述有效文本信息的判断标准为汉字数量不超过十个,且字符中间没有其他非文本字符串。
3.根据权利要求2所述的网页标签文本定位方法,其特征在于,基于当前操作控件所在结点查找包含有效文本信息的结点,包括:
获取当前操作控件所在结点在当前层级的序号N;
基于序号N的数值大小进行结点查找,包括:
响应于序号N大于零时,获取同一层级节点序号为N-1的结点;
响应于序号N为零时,获取当前操作控件所在结点的父结点;
基于当前操作控件所在结点的父结点在上一层级获取所述父结点的层级序号N,并重复结点查找过程;
响应于结点不包含有效文本信息时,跳过该结点继续向前查找;
响应于查找到包含有效文本信息的结点时,结束查找。
4.根据权利要求2所述的网页标签文本定位方法,其特征在于,基于当前操作控件所在结点查找包含有效文本信息的结点,包括:
获取当前操作控件所在结点在当前层级的序号N和位置;
基于序号N的数值大小进行结点查找,包括:
响应于序号N大于零时,获取同一层级节点序号为N-1的结点;
响应于序号N为零时,获取当前操作控件所在结点的父结点;
基于当前操作控件所在结点的父结点在上一层级获取所述父结点的层级序号N,并重复结点查找过程;
响应于结点不包含有效文本信息时,跳过该结点继续向前查找;
响应于查找到包含有效文本信息的结点时,记录该节点对应的有效文本信息和该节点在页面中的绝对位置;
响应于已查到包含有效文本信息的结点达到指定结点数量时,结束查找;
基于节点在页面的绝对位置选择第一个匹配到的结点。
5.根据权利要求4所述的网页标签文本定位方法,其特征在于,所述指定结点数量不大于五。
6.根据权利要求3所述的网页标签文本定位方法,其特征在于,基于节点在页面的绝对位置选择第一个匹配到的结点,包括:判断控件左边是否存在包含有效文本信息的对应结点,若存在则返回重叠面积最大的结点,否则判断控件上边是否存在包含有效文本信息的对应结点,若存在则返回重叠面积最大的结点,否则返回空。
7.根据权利要求1所述的网页标签文本定位方法,其特征在于,所述文本信息通过消息包的方式进行发送,所述消息包还包括操作类型、控件路径和时间戳。
8.根据权利要求1所述的网页标签文本定位方法,其特征在于,所述指定位置包括后台服务器、文件位置和缓存地址。
9.一种网页标签文本定位装置,其特征在于,包括处理器及存储介质;
所述存储介质用于存储指令;
所述处理器用于根据所述指令进行操作以执行根据权利要求1~8任一项所述方法的步骤。
10.计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1~8任一项所述方法的步骤。
CN202111346359.0A 2021-11-15 2021-11-15 一种网页标签文本定位方法 Pending CN114020576A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111346359.0A CN114020576A (zh) 2021-11-15 2021-11-15 一种网页标签文本定位方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111346359.0A CN114020576A (zh) 2021-11-15 2021-11-15 一种网页标签文本定位方法

Publications (1)

Publication Number Publication Date
CN114020576A true CN114020576A (zh) 2022-02-08

Family

ID=80064049

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111346359.0A Pending CN114020576A (zh) 2021-11-15 2021-11-15 一种网页标签文本定位方法

Country Status (1)

Country Link
CN (1) CN114020576A (zh)

Similar Documents

Publication Publication Date Title
CN110362370B (zh) 一种网页语言的切换方法、装置及终端设备
CN107729445B (zh) 一种基于html5的大文本阅读定位及显示方法
EP3262497B1 (en) Contextual zoom
JP2007094818A (ja) 複数データの一括コピー及びペースト方法、装置、およびコンピュータ・プログラム
CN105868166B (zh) 一种正则表达式的生成方法及系统
US9372843B2 (en) Document association device, document association method, and non-transitory computer readable medium
US8359307B2 (en) Method and apparatus for building sales tools by mining data from websites
KR20160044486A (ko) 고정 포맷 문서를 리플로우 포맷으로 프리젠트하는 기법
CN106951495A (zh) 用于呈现信息的方法和装置
CN111159431A (zh) 基于知识图谱的信息可视化方法、装置、设备及存储介质
CN108664471A (zh) 文字识别纠错方法、装置、设备及计算机可读存储介质
CN104899203B (zh) 一种网页页面的生成方法、装置及终端设备
JPWO2009035097A1 (ja) 表示画面上でオブジェクトの選択を容易にするための方法、装置およびプログラム。
JP2005182460A (ja) 情報処理装置、注釈処理方法、情報処理プログラムおよび情報処理プログラムを格納した記録媒体
CN110489032B (zh) 用于电子书的词典查询方法及电子设备
CN112036843A (zh) 基于rpa及ai的流程元素定位方法、装置、设备和介质
US10747794B2 (en) Smart search for annotations and inking
CN112329409A (zh) 一种单元格颜色转换方法、装置及电子设备
CN114020576A (zh) 一种网页标签文本定位方法
CN114519153B (zh) 一种网页历史记录显示方法、装置、设备及存储介质
CN106528730B (zh) 网页中组件设计方法及装置
CN115081423A (zh) 文档编辑方法、装置、电子设备及存储介质
CN110378566B (zh) 信息核对方法、设备、存储介质及装置
EP1605366A1 (en) Data processing apparatus, data processing method, data processing program, and recording medium having recorded therein that program
CN111832268A (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