关键词与扩展阅读行为的处理方法、浏览器及电子设备与流程

文档序号:18196985发布日期:2019-07-17 05:55阅读:177来源:国知局
本申请涉及网页运营
技术领域
:,更具体涉及关键词与扩展阅读行为的处理方法、浏览器及电子设备。
背景技术
::对网页显示的某些内容(此处称为关键词)增加扩展阅读行为是指,对关键词增加链接行为或点击响应行为等扩展阅读行为;使得若用户点击了网页中的关键词,浏览器会执行相应的扩展阅读行为,例如,显示该关键词链接到的网页,或,调用应用程序等行为。目前,对已经建立网页中的关键词增加扩展阅读行为的方法包括:从待访问的网页所属服务器中获得该网页的html(hypertextmarkuplanguage,超级文本标记语言)文件;若html文件包括待扩展的关键词,则在html文件中关键词处增加扩展阅读行为,得到修改后的html文件,与修改后的html文件相对,称未修改的html文件为原html文件。浏览器会基于修改后的html文件渲染该网页,并基于修改后的html文件操作该网页,所以会导致浏览器展示的网页产生错误。因此,如何改进增加关键词的扩展阅读行为的方法,使得浏览器展示的网页内容不产生错误,是本领域技术人员的需要考虑的问题。技术实现要素:有鉴于此,本发明提供了一种关键词与扩展阅读行为的处理方法、浏览器及电子设备,以克服现有技术中如何改进增加关键词的扩展阅读行为的方法,使得浏览器展示的网页内容不产生错误的问题。为实现上述目的,本发明提供如下技术方案:一种扩展阅读行为处理方法,包括:获取待扩展的关键词以及所述待扩展的关键词对应的扩展阅读行为;确定目标节点,所述目标节点对应的内容包含所述待扩展的关键词中的至少一个关键词;所述目标节点属于文档对象模型dom树中的节点,所述dom树是基于待展示的网页对应的原html文件生成的;确定所述至少一个关键词分别占用的关键词位置区域;存储所述目标节点对应的第一信息,所述第一信息为用于获取所述至少一个关键词分别占用的关键词位置区域及相应关键词对应的扩展阅读行为的信息。一种浏览器,包括:一种浏览器,其特征在于,包括:第一获取模块,用于获取待扩展的关键词以及所述待扩展的关键词对应的扩展阅读行为;第一确定模块,用于确定目标节点,所述目标节点对应的内容包含所述待扩展的关键词中的至少一个关键词;所述目标节点属于文档对象模型dom树中的节点,所述dom树是基于待展示的网页对应的原html文件生成的,;第二确定模块,用于确定所述至少一个关键词分别占用的关键词位置区域;存储模块,用于存储所述目标节点对应的第一信息,所述第一信息为用于获取所述至少一个关键词分别占用的关键词位置区域及相应关键词对应的扩展阅读行为的信息。一种电子设备,包括:存储器,用于存储程序;处理器,用于执行所述程序,所述程序具体用于:获取待扩展的关键词以及所述待扩展的关键词对应的扩展阅读行为;确定目标节点,所述目标节点对应的内容包含所述待扩展的关键词中的至少一个关键词;所述目标节点属于文档对象模型dom树中的节点,所述dom树是基于待展示的网页对应的原html文件生成的;确定所述至少一个关键词分别占用的关键词位置区域;存储所述目标节点对应的第一信息,所述第一信息为用于获取所述至少一个关键词分别占用的关键词位置区域及相应关键词对应的扩展阅读行为的信息。一种存储介质,所述存储介质存储有多条指令,所述指令适于处理器进行加载,以执行任一项所述的扩展阅读行为处理方法中的步骤。本申请实施例提供的扩展阅读行为处理方法,首先获取待扩展的关键词以及待扩展的关键词对应的扩展阅读行为,在基于原html文件生成dom树的过程中或生成完dom树后,确定对应的内容包含待扩展的关键词中的至少一个关键词的目标节点;确定所述至少一个关键词分别占用的关键词位置区域;存储与该目标节点对应的第一信息(用于获取所述至少一个关键词分别占用的关键词位置区域及相应关键词对应的扩展阅读行为的信息)。从而增加了目标节点能够执行的操作——“获取所述目标节点对应的内容包含的所述至少一个关键词分别占用的关键词位置区域及相应关键词对应的扩展阅读行为”的操作。从而使得浏览器基于原html文件对应的dom树对网页进行操作的过程中,通过目标节点对应的第一信息,可以获得目标节点对应的内容包含的所述至少一个关键词分别占用的关键词位置区域及相应关键词对应的扩展阅读行为。因此,本申请实施例是通过存储目标节点对应的第一信息的方式,实现对关键词增加扩展阅读行为;而不是通过更改html文件的方式,实现对关键词增加扩展阅读行为,由于html文件并未修改,因此dom树的结构未发生变化,浏览器基于原html文件对应的dom树对网页进行操作时,不会产生网页内容显示错误的情况。也不会影响网页中其他节点的排版布局。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1a为基于未修改的html文件生成的dom树的结构图;图1b为基于修改的html文件生成的dom树的结构图;图1c为网页中展示的节点对应的位置区域示意图;图2为本申请实施例提供的一种关键词扩展阅读系统的结构图;图3为本申请实施例提供的关键词扩展阅读方法的一种实现方式的流程图;图4为本申请实施例提供的关键词扩展阅读方法的另一种实现方法的流程图;图5为本申请实施例提供的一种关键词扩展阅读方法的流程图;图6为本申请实施例提供的与图5对应的一个示例图;图7为本申请实施例提供的一种为关键词增加扩展阅读行为的浏览器的结构图;图8为本申请实施例提供的一种为关键词增加扩展阅读行为的电子设备的内部结构图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。目前,对已经建立网页中的关键词增加扩展阅读行为的方法有两种:第一种,用户基于浏览器请求访问网页,浏览器将访问该网页的请求发送至代理服务器,代理服务器从该网页所属服务器中获得该网页的资源文件,资源文件包括html(hypertextmarkuplanguage,超级文本标记语言)文件、图像文件、css(cascadingstylesheets,层叠样式表)文件、javascript脚本文件,以及manifest文件;若该网页包含关键词,代理服务器会对该网页的原html文件中关键词对应的节点处增加扩展阅读行为,代理服务器将包含修改后的html文件的修改资源文件发送至浏览器,浏览器基于修改资源文件渲染该网页,浏览器至少基于修改后的html文件渲染该网页,以及,基于修改后的html文件操作该网页。第二种,用户基于浏览器请求访问网页,浏览器将访问该网页的请求发送至该网页所属服务器中,并从该网页所述服务器中获得该网页的资源文件,若该网页包含关键词,浏览器会对该网页的原html文件中关键词对应的节点处增加扩展阅读行为,浏览器基于包含修改后的html文件的修改资源文件渲染该网页,即浏览器至少基于修改后的html文件渲染该网页,以及,基于修改后的html文件操作该网页。两者方法中均涉及对html文件的修改。为了本领域技术人员更加理解现有技术中的问题,下面举一具体例子进行说明,假设,待访问的网页的原html文件(本申请实施例中原html文件是指未修改的html文件)包括:假设“时间”为待扩展的关键词,且其对应的扩展阅读行为链接到http://xx/;则在“时间”这一关键词处增加链接“http://xx/”,得到修改后的html文件:浏览器基于修改后的修改资源文件渲染出该网页后,若用户点击该网页中“时间”关键词,则浏览器会展示xx网页,从而实现了该“时间”关键词的扩展阅读行为。目前对关键词增加扩展阅读行为方法,会导致浏览器至少基于修改后的html文件展示的网页产生错误。例如,javascript脚本文件具有主动更新时间的功能,假设javascript脚本文件需要将第一个div后面的文本节点更新为“目前时间是10:51”;若基于原html文件,javascript脚本文件将第一个div后面的文本节点“目前时间是10:50”更新为“目前时间是10:51”,则浏览器展示的网页的内容为“目前时间是10:51”;若针对修改后的html文件,javascript脚本文件将第一个div后面的文本节点“目前”更新为“目前时间是10:51”,则浏览器给用户呈现的网页的内容为“目前时间是10:51时间是10:50”。导致浏览器展示的网页中的内容出现错误。且由于“目前时间是10:51时间是10:50”所占的关键词位置区域大于“目前时间是10:50”所占的关键词位置区域,因此,还会影响网页中其他节点的排版效果。dom(文档对象模型,documentobjectmodel)是javascript脚本文件操作网页的接口。它的作用是将网页转为一个javascript脚本文件的对象,从而可以使用javascript脚本文件对网页进行各种操作(比如增删内容)。浏览器会根据dom模型,将网页对应的html文件解析成一系列的节点,再由这些节点组成一个树状结构,即dom树。dom树的最小组成单位为节点(node)。目前对已建立的网页中的关键词增加扩展阅读行为的方法,均需要更改网页对应的原资源文件中的原html文件,得到修改后的html文件,浏览器会根据dom模型,将修改后的html文件解析成一系列的节点,得到由这些节点组成的dom树,由于dom树是基于修改后的html文件生成的,因此,dom树相对于原html文件对应的原dom树而言,结构发生了变化。由于dom树是浏览器中javascript脚本文件操作网页的接口,由于dom树的结构发生变化,所以javascript脚本文件在基于dom树操作网页时,网页展示的内容就会发生错误。仍以上述示例为例,原html文件对应的原dom树的结构如图1a所示。图1a中原html文件对应的dom树包括3个节点,3个节点分别为元素节点101(该元素节点对应的属性为body,即该元素节点对应的内容为body)、元素节点102(该元素节点对应的属性为div,即该元素节点对应的内容为div)以及文本节点103(该元素节点对应的属性为目前时间是10:50,即该元素节点对应的内容为目前时间是10:50)。修改后的html对应的修改后的dom树的结构如图1b所示。图1b中的dom树依次包括:元素节点104(该元素节点对应的内容为body);元素节点105(该元素节点对应的内容为div);元素节点106(该元素节点对应的内容为a);文本节点107(该文本节点对应的内容为目前);文本节点108(文本节点对应的内容为是10:50);连接节点109(链接节点对应的内容为是时间)。元素节点类型包括链接节点类型。通过图1a和图1b可以看出由于html文件被修改,导致dom树的结构改变很大。浏览器中的javascript脚本文件通过修改后html文件对应的dom树对网页进行各中操作,例如,将第一个div后的文本节点中的内容更新为“目前时间是10:51”,那么会导致网页显示错误,例如,网页显示“目前时间是10:51时间是10:50”。可以理解的是,网页中每个节点都对应有一位置区域,每个节点对应的位置区域为该节点对应的内容占用的位置区域,每个节点对应的位置区域可以为一个矩形,如图1c所示,图1c示出了两个节点对应的内容,两个节点对应的位置区域用虚线框框出,一个节点为文本节点,其对应的内容为“xx主页12月4日10:50周一保定”,另一个节点也为文本节点,其对应的内容为“天气多云4℃至6℃”,下面以“xx主页12月4日10:50周一保定”这一文本节点为例,对节点对应的位置区域进行说明。位置区域可以包括4个参数,例如图1c所示的top1:位置区域的上侧边缘与浏览器窗口的可视区域的上侧边缘的距离;left1:位置区域的左侧边缘与浏览器窗口的可视区域的左侧边缘的距离;bottom1:位置区域的下侧边缘与浏览器窗口的可视区域的上侧边缘的距离;right1:位置区域的右侧边缘与浏览器窗口的可视区域的左侧边缘的距离。因此,若节点对应的内容增多,例如,节点对应的内容由“目前时间是10:50”变为“目前时间是10:51时间是10:50”,则会导致节点对应的位置区域不能将内容进行全部展示,或者,为了将内容进行全部展示而覆盖相邻位置区域中的内容;综上,会使得网页中的内容显示错误,或者,影响网页中其他节点的排版效果。基于上述问题,本申请实施例提供了一种关键词扩展阅读系统,如图2所示,该系统可以包括:电子设备21、目标服务器22以及第二服务器23。其中,电子设备21安装有浏览器,浏览器具有本申请实施例提供的扩展阅读行为处理方法的功能;第二服务器23可以为用户基于电子设备21中的浏览器待访问的网页所属的服务器。用户可以基于电子设备21中的浏览器访问网页;浏览器将访问网页的请求发送至该网页所属第二服务器23,第二服务器23将该网页的资源文件发送至电子设备21中的浏览器。电子设备21中的浏览器可以从目标服务器22中获得待扩展的关键词以及所述待扩展的关键词对应的扩展阅读规则。目标服务器22可以为电子设备21中的浏览器所属第一服务器,此时,网页所属第二服务器可能与第一服务器相同,也可能不同。目标服务器22也可以为代理服务器,本申请实施例对此不作具体限定。电子设备21中的浏览器可以基于资源文件中的原html文件生成dom树,在生成dom树的过程中或在生成dom树结束后,确定原html文件中哪些节点对应的内容包括待扩展的关键词中的至少一个关键词,本申请实施例中将对应的内容包含待扩展的关键词中的至少一个关键词的节点称为目标节点;确定目标节点对应的内容包含的所述至少一个关键词分别占用的关键词位置区域;存储目标节点对应的第一信息,第一信息为用于获取目标节点对应的内容包含的所述至少一个关键词分别占用的关键词位置区域及相应关键词对应的扩展阅读行为的信息。本申请实施例通过存储目标节点对应的第一信息的手段,从而实现了在不对原html文件进行修改的前提下,实现为网页中的关键词增加扩展阅读行为的目的。由于本申请实施例并未对html文件进行修改,即dom树的结构不会发生变化,因此,浏览器的javascript脚本文件通过dom树对网页进行各中操作,不会导致网页显示错误,也不会影响网页其他节点的排版效果。下面结合上述系统,对本申请实施例提供的关键词扩展阅读方法进行说明,如图3所示,为本申请实施例提供的关键词扩展阅读方法的一种实现方式的流程图,该方法包括:步骤s301:获取待扩展的关键词以及所述待扩展的关键词对应的扩展阅读行为。待扩展的关键词的数目可能为一个或多个。若为多个时,每一待扩展的关键词对应一扩展阅读行为。扩展阅读行为包括但不限于:连接到预设链接的行为,或,调用预设应用程序的行为,或,调用预设窗口的行为等等。步骤s302:确定目标节点,所述目标节点对应的内容包含所述待扩展的关键词中的至少一个关键词。所述目标节点属于文档对象模型dom树中的节点,所述dom树是基于待展示的网页对应的原html文件生成的。原html文件是指未修改的html文件。步骤s302可以是在生成dom树的过程中执行的,每获得dom树的一个节点,就会判断该节点是否为目标节点;或者,在dom树中各节点均获取后,对dom树中各节点进行统一判断。综上,步骤s302有两种实现方式。第一种,将网页对应的原html文件依次解析成各节点,以得到dom树;在解析原html文件的过程中,针对解析出的当前节点,若该当前节点对应的内容包含所述待扩展的关键词中的至少一个关键词,则该当前节点为目标节点。即本申请实施例提供的扩展阅读行为处理方法是在对原html文件进行解析的过程中,每获得一个节点就执行一次。第二种,从所述dom树中的各节点中,确定对应的内容包含所述待扩展的关键词中的至少一个关键词的目标节点。即本申请实施例提供的扩展阅读行为处理方法是在dom树生成完毕后,执行的。若为第二种,则目标节点的数目可能有一个或多个,由于针对每一目标节点的执行过程均相同,因此可以用一个目标节点的执行过程进行说明。步骤s303:确定所述至少一个关键词分别占用的关键词位置区域。目标节点对应的内容包含的关键词占用的关键词位置区域可以是绝对位置区域,例如,关键词位置区域是相对于浏览器窗口的可视区域的区域,例如,关键词为“保定”,图1c中用点划线框出的区域为“保定”这一关键词的关键词位置区域,关键词位置区域可以包括:top2:关键词位置区域的上侧边缘与浏览器窗口的可视区域的上侧边缘的距离;left2:关键词位置区域的左侧边缘与浏览器窗口的可视区域的左侧边缘的距离;bottom2:关键词位置区域的下侧边缘与浏览器窗口的可视区域的上侧边缘的距离;right2:关键词位置区域的右侧边缘与浏览器窗口的可视区域的左侧边缘的距离。目标节点对应的内容包含的关键词占用的关键词位置区域可以是相对位置区域,仍以图1c为例,关键词位置区域可以是相对于目标节点的区域,以图1c中的节点“天气多云4℃至6℃”为例,假设,“天气”为一个关键词,则该关键词位置区域在图1c中用点划线框出,该关键词位置区域可以包括:top3:关键词位置区域的上侧边缘与目标节点的上侧边缘的距离;left3:关键词位置区域的左侧边缘与目标节点的左侧边缘的距离;bottom3:关键词位置区域的下侧边缘与目标节点的上侧边缘的距离;right3:关键词位置区域的右侧边缘与目标节点的左侧边缘的距离。目标节点对应的内容包含的关键词占用的关键词位置区域可以是相对位置区域,关键词位置区域可以包括:从目标节点对应的内容的第m个字符开始,第n个字符结束;或,从目标节点对应的内容的第m个字符开始,关键词的字符长度为l。其中,m、n、l为正整数。步骤s304:存储所述目标节点对应的第一信息,所述第一信息为用于获取所述至少一个关键词分别占用的关键词位置区域及相应关键词对应的扩展阅读行为的信息。不同的目标节点对应的第一信息不同,一个第一信息对应一个目标节点。本申请实施例提供的扩展阅读行为处理方法,首先获取待扩展的关键词以及待扩展的关键词对应的扩展阅读行为,在基于原html文件生成dom树的过程中或生成完dom树后,确定对应的内容包含待扩展的关键词中的至少一个关键词的目标节点;确定所述至少一个关键词分别占用的关键词位置区域;存储与该目标节点对应的第一信息(用于获取所述至少一个关键词分别占用的关键词位置区域及相应关键词对应的扩展阅读行为的信息)。从而增加了目标节点能够执行的操作——“获取所述目标节点对应的内容包含的所述至少一个关键词分别占用的关键词位置区域及相应关键词对应的扩展阅读行为”的操作。从而使得浏览器基于原html文件对应的dom树对网页进行操作的过程中,通过目标节点对应的第一信息,可以获得目标节点对应的内容包含的所述至少一个关键词分别占用的关键词位置区域及相应关键词对应的扩展阅读行为。因此,本申请实施例是通过存储目标节点对应的第一信息的方式,实现对关键词增加扩展阅读行为;而不是通过更改html文件的方式,实现对关键词增加扩展阅读行为,由于html文件并未修改,因此dom树的结构未发生变化,浏览器基于原html文件对应的dom树对网页进行操作时,不会产生网页内容显示错误的情况。也不会影响网页中其他节点的排版布局。下面举一“存储所述目标节点对应的第一信息”的具体例子进行说明。如图4所示,为本申请实施例提供的关键词扩展阅读方法的另一种实现方法的流程图,该方法包括:步骤s401:获取待扩展的关键词以及所述待扩展的关键词对应的扩展阅读行为。步骤s402:确定目标节点以及所述目标节点对应的数据集合。所述目标节点对应的内容包含所述待扩展的关键词中的至少一个关键词;所述目标节点属于文档对象模型dom树中的节点,所述dom树是基于待展示的网页对应的原html文件生成的,所述数据集合包含所述目标节点能够执行的操作原html文件是指未修改的html文件。数据集合可以为类的实例化对象,或,结构体,或,函数等等。数据集合是指由一系列具有相同类型或不同类型的数据构成的数据集合。数据集合包含的目标节点能够执行的操作可以包括:用于执行操作的函数,或,用于执行操作的类等等。用于执行操作的函数,或,用于执行操作的类可以具体包括:用于检测自身对应的位置区域是否被用户执行点击操作的函数或类,和/或,用于检测点击操作的具体点击位置的函数或类等等。步骤s403:确定所述至少一个关键词分别占用的关键词位置区域。步骤s404:在所述目标节点对应的所述数据集合中添加第一信息,所述第一信息为用于获取所述至少一个关键词分别占用的关键词位置区域及相应关键词对应的扩展阅读行为的信息。其中,第一信息可以为“目标节点对应的内容包含的所述至少一个关键词分别占用的关键词位置区域及相应关键词对应的扩展阅读行为”。第一信息可以为“获取所述目标节点对应的内容包含的所述至少一个关键词分别占用的关键词位置区域及相应关键词对应的扩展阅读行为”的函数或类或结构体或数组。本申请实施例提供的扩展阅读行为处理方法,首先获取待扩展的关键词以及待扩展的关键词对应的扩展阅读行为,在基于原html文件生成dom树的过程中或生成完dom树后,确定对应的内容包含待扩展的关键词中的至少一个关键词的目标节点以及目标节点对应的数据集合;确定目标节点对应的内容包含的所述至少一个关键词分别占用的关键词位置区域;将第一信息(用于获取所述目标节点对应的内容包含的所述至少一个关键词分别占用的关键词位置区域及相应关键词对应的扩展阅读行为的信息)添加至目标节点对应的数据集合中。从而增加了目标节点能够执行的操作——“获取所述目标节点对应的内容包含的所述至少一个关键词分别占用的关键词位置区域及相应关键词对应的扩展阅读行为”的操作。从而使得浏览器基于原html文件对应的dom树对网页进行操作的过程中,通过目标节点对应的数据集合的第一信息,可以获得目标节点对应的内容包含的所述至少一个关键词分别占用的关键词位置区域及相应关键词对应的扩展阅读行为。因此,本申请实施例是通过在目标节点对应的数据集合中添加第一信息的方式,实现对关键词增加扩展阅读行为;而不是通过更改html文件的方式,实现对关键词增加扩展阅读行为,由于原html文件并未修改,因此dom树的结构未发生变化,浏览器基于dom树对网页进行操作时,不会产生网页内容显示错误的情况。也不会影响网页中其他节点的排版布局。可以理解的是,html文件是由多个元素构成的文本文件,元素包括:标签;或,开始标签、相应的结束标签;或,开始标签、相应的结束标签以及该开始标签和相应的结束标签之间的内容。标签就是用来标记元素的。位于起始标签和结束标签之间的文本就是元素的内容。标签就是<head>、<body>、<table>等被尖括号“<”和“>”包起来的对象,绝大部分的标签都是成对出现的,如<table>(开始标签)、</talbe>(结束标签);<form>(开始标签)、</form>(结束标签);当然还有少部分不是成对出现的,如<br>、<hr>等。可以基于html文件中的标签类型,来确定dom树中各节点的类型,dom树包含的节点类型有:文档节点类型、元素节点类型、文本节点类型、属性节点类型、注释节点类型、处理指令节点类型、文档类型节点类型、cdata段节点类型、文档片段节点类型、实体节点类型、实体引用节点类型、记号节点类型。文本节点是只包含文本内容的节点,它可以由更多信息组成,也可以只包含空白。浏览器展示的网页中大多内容对应文本节点。其他类型的节点中的内容有的不会在网页中显示,例如,属性节点(属性节点中的内容可以用于描述文本节点的字体颜色等),处理指令节点等;有的节点类型不常见,例如,注释节点类型、处理指令节点类型、文档类型节点类型、cdata段节点类型、文档片段节点类型、实体节点类型、实体引用节点类型、记号节点类型。因此,在一优选实施例中,确定目标节点可以包括:确定节点类型属于预设节点类型的候选节点;若候选节点对应的内容包含所述待扩展的关键词中的至少一个关键词,确定所述候选节点为所述目标节点。预设节点类型至少为网页中能够展示的内容对应的节点类型,例如,文本节点类型。优选的,预设节点类型在满足至少为网页中能够展示的内容对应的节点类型基础上,还可以为常见节点类型,例如,文本节点类型、文档节点类型等等。可以理解的是,有的词汇已经对应有链接或点击响应行为等扩展阅读行为,在一优选实施例中,预设节点类型不包括已经设置了扩展阅读行为的节点类型,例如,元素节点类型中的链接节点类型。可以理解的是,若节点对应的内容包含的字符数小于预设数值,例如,节点包含两个字符,一般情况下,这样的节点对应的内容为网页中的标题,或,已经具有链接;因此,在一优选实施例中,确定目标节点可以包括:确定对应的内容包含的字符数大于或等于预设数值的候选节点;若候选节点对应的内容包含所述待扩展的关键词中的至少一个关键词,确定所述候选节点为所述目标节点。综上,在一优选实施例中,确定目标节点可以包括:确定节点类型属于预设节点类型,和/或,对应的内容包含的字符数大于或等于预设数值的候选节点;若所述候选节点对应的内容包含所述待扩展的关键词中的至少一个关键词,确定所述候选节点为所述目标节点。本申请实施例提供的“在所述目标节点对应的所述数据集合中添加第一信息”的实现方法有多种,本申请实施例提供但不限于以下几种。第一种方法包括:创建所述目标节点对应的内容包含的至少一个关键词分别对应的关键词数据集合;将所述至少一个关键词分别占用的关键词位置区域以及所述至少一个关键词分别对应的扩展阅读行为,存储至相应的关键词数据集合中;在所述目标节点对应的数据集合中添加所述至少一个关键词分别对应调用信息;一个调用信息为调用相应关键词数据集合的接口。为了本领域技术人员更加理解上述过程,下面举例说明。关键词数据集合可以为结构体或函数或类,下面以类为例进行说明。假设目标节点包括三个关键词,分别为关键词1、关键词2以及关键词3。创建关键词1、关键词2以及关键词3对应的关键词类。不同关键词对应的关键词类中存储的内容的类型相同,即关键词类都包括:关键词位置区域变量以及扩展阅读行为变量。将“将所述至少一个关键词分别占用的关键词位置区域以及所述至少一个关键词分别对应的扩展阅读行为,存储至相应的关键词数据集合中”,即为对三个关键词类中的变量进行赋值的过程。假设,关键词1对应关键词类1;关键词2对应关键词类2;关键词3对应关键词类3。“在所述目标节点对应的数据集合中添加所述至少一个关键词分别对应调用信息”可以是将关键词类1、关键词类2以及关键词类3的名称存储至目标节点对应的数据集合中;或者,将调用关键词类1的函数、调用关键词类2的函数、调用关键词类3的函数存储至目标节点对应的数据集合中。假设目标节点对应的数据集合为类4,则类4、关键词类1、关键词类2以及关键词类3可以为:其中,top20,left20,bottom20,right20;top21,left21,bottom21,right21;top22,left22,bottom22,right22的含义可参见top2,left2,bottom2,right2的含义,或,top3,left3,bottom3,right3的含义。或,第二种方法包括:将所述至少一个关键词分别占用的关键词位置区域以及相应关键词对应的扩展阅读行为,分别存储至目标节点对应的数据集合中。本申请实施例提供的“获取待扩展的关键词以及所述待扩展的关键词对应的扩展阅读行为”的实现方式有多种,本申请实施例提供但不限于以下几种:第一种,从第一服务器中获取待扩展的关键词以及所述待扩展的关键词对应的扩展阅读行为。其中,所述第一服务器预先设置有所述待扩展的关键词以及所述待扩展的关键词对应的扩展阅读行为,所述第一服务器为展示所述网页的浏览器所属的服务器。此时,目标服务器22为第一服务器。此时,浏览器是从第一服务器中获取所有的待扩展的关键词,以及所有的待扩展关键词对应的扩展阅读行为;因为,此时浏览器还不知道待展示的网页包不包括关键词,包括哪几个关键词。第二种,从第一服务器中获取待访问的网页包含的待扩展的关键词与所述待扩展的关键词对应的扩展阅读行为。具体步骤包括:将访问该网页的访问请求发送至该网页所属第二服务器。接收第二服务器反馈的该网页的资源文件。资源文件包括html文件、图像文件、css(cascadingstylesheets,层叠样式表)文件、javascript脚本文件,以及manifest文件。基于所述网页的资源文件,获取所述网页包含的文字,并发送至第一服务器。接收第一服务器反馈的所述文字包含的待扩展关键词以及所述待扩展关键词对应的扩展阅读行为。将该网页中包含的文字发送至第一服务器可以为:将该网页对应的html文件发送至第一服务器,或,将该网页对应的dom树中各节点包含的文字发送至第一服务器。由于有时图像文件、css(cascadingstylesheets,层叠样式表)文件、javascript脚本文件,以及manifest文件会融合在html文件中,若将融合有“图像文件、css(cascadingstylesheets,层叠样式表)文件、javascript脚本文件,以及manifest文件”的html文件发送至第一服务器,则会浪费很多流量。若图像文件、css(cascadingstylesheets,层叠样式表)文件、javascript脚本文件,以及manifest文件是独立于html文件外的,则可以将html文件发送至第一服务器。第一服务器可以将html文件与待扩展的关键词进行比对,获得html文件包含的待扩展关键词。若图像文件、css(cascadingstylesheets,层叠样式表)文件、javascript脚本文件,以及manifest文件会融合在html文件中,为了节省流量,优选的,可以先基于原html文件生成dom树,在生成dom树的过程中,就可以获得dom树中各节点对应的内容中的文字,即网页包含的文字,将网页包含的文字发送至第一服务器。但是在这种情况下,由于已经生成dom树,所以浏览器可以渲染出该网页,由于当前并未执行本申请实施例提供的扩展阅读行为处理方法,所以该网页中的关键词并未增加扩展阅读行为。后续浏览器基于本申请实施例提供的扩展阅读行为处理方法,对网页中的关键词增加扩展阅读行为后,还会再次渲染该网页,而再次渲染出的该网页中的关键词已经增加了扩展阅读行为,也就是针对同一网页,对用户而言可能展现两次,导致用户的体验较差。因此,在一优选实施例中,为了获得网页包含的文字的情况下,基于html文件生成了dom树,禁止浏览器基于该dom树渲染网页。此种方法,浏览器获得的待扩展的关键词,一定是待展示的网页中包含的待扩展的关键词。但是这些关键词与哪个节点对应,还需要进一步确定。第三种,从代理服务器中获取待访问的网页包含的待扩展的关键词与所述待扩展的关键词对应的扩展阅读行为。具体步骤包括:将访问所述网页的访问请求发送至代理服务器;接收所述代理服务器反馈的基于所述网页的资源文件确定的所述网页包含的所述待扩展的关键词,以及,预先存储所述待扩展的关键词对应的扩展阅读行为;其中,所述资源文件是从所述网页所属第二服务器中得到的。代理服务器可以将html文件中的内容与待扩展的关键词进行比对,获得网页包含的待扩展的关键词。代理服务器中预先存储有待扩展的关键词,以及待扩展的关键词对应的扩展阅读行为。在生成完毕dom树,以及,在目标节点对应的数据集合中添加第一信息后,浏览器可以基于该网页的dom树以及dom树中各节点分别对应的数据集合渲染该网页,渲染过程如下:针对所述dom树中每一节点,若所述节点对应的数据集合包含所述第一信息,基于所述第一信息获取所述节点对应的关键词位置区域;基于预设关键词渲染格式,渲染位于所述节点对应的关键词位置区域中的目标关键词,以渲染出所述待展示的网页;其中,所述预设关键词渲染格式与第一渲染格式不同,所述第一渲染格式为在所述节点对应的数据集合中添加第一信息之前,渲染所述目标关键词的渲染格式;基于所述预设关键词渲染格式渲染后的所述目标关键词占用的关键词位置区域的大小,与,基于所述第一渲染格式渲染后的所述目标关键词占用的关键词位置区域的大小相同。可以理解的是,网页中目标关键词在增加扩展阅读行为之前,可能只是普通的文本,第一渲染格式可以为在目标关键词为普通文本时的渲染格式。由于网页已经被建立,网页中各元素的布局已经形成,所以即使对网页中的关键词增加了扩展阅读行为,也不应该改变网页中各元素的排版布局。所以基于第一渲染格式渲染目标关键词占用的关键词位置区域的大小,与,基于预设关键词渲染格式渲染后的目标关键词占用的关键词位置区域的大小相同,这样才能保证不改变网页中各元素的排版布局。预设关键词渲染格式包括但不限于:关键词的颜色,和/或,在关键词下增加下划线,和/或,关键词的字体等等。在渲染过程中是基于dom树以及css样式表进行渲染,其中css样式表是基于css文件生成的。基于dom树以及css样式表可以生成渲染树,即render树,本申请实施例并不对html文件、dom树和渲染树进行修改,仅仅是对dom树包含的目标节点对应的数据集合添加第一信息。现有技术中html文件修改后,会导致dom树的结构发生变化,导致dom树包含的节点类型发生变化,例如,图1a和图1b中dom树包含的节点类型发生变化,在html文件未修改时,“时间”的节点类型为文本节点类型,在修改html文件后,“时间”的节点类型变为元素节点类型中的链接节点类型;现有技术中针对链接节点的渲染,设置有用于渲染链接节点的全局变量(全局变量不能更改),例如,由于网页中展示的链接节点一般都字体加粗及字体变大,即若从非链接节点转变为链接节点,则基于该全局变量渲染后,“时间”这一关键词所占的关键词位置区域就会变大,影响网页的排版布局。而本申请实施例中预设关键词渲染格式不会改变所述目标关键词占用的关键词位置区域的大小,从而不会影响网页的排版布局。本申请实施例中的预设关键词渲染格式可以为局部变量。基于上述扩展阅读行为处理方法,就实现了对网页包含的关键词增加扩展阅读行为的目的。浏览器渲染该网页后,用户可以点击网页中的关键词,浏览器就会执行关键词对应的扩展阅读行为。下面对浏览器渲染该网页后,浏览器基于用户的点击操作执行扩展阅读行为的方法进行详细说明,如图5所示,为本申请实施例提供的一种关键词扩展阅读方法的流程图,该方法包括:步骤s501:检测用户在网页的目标节点处的点击操作,获取点击位置。所述目标节点为基于所述网页的原html文件生成的文档对象模型dom树中的节点。如图6所示,为图5所示步骤的一个示例图,假设用户点击网页中的目标节点(图6中用虚线框框出)对应的内容包含的“保定”这一关键词,如图6中51所示。浏览器可以检测到用户在网页的目标节点处的点击操作,并可以获得点击位置。每一节点对应一数据集合,数据集合包含相应节点能够执行的操作。在一优选实施例中,目标节点对应的数据集合可以包括:检测自身对应的位置区域是否被点击的操作;以及,执行若自身对应的位置区域被点击,获取点击位置的操作。这样,目标节点自己就可以执行步骤s501至步骤s505。仍以图6为例,若用户点击“保定”这一关键词后,“保定”对应的节点就可以检测到自己被执行了点击操作,且可以获知点击操作的点击位置。即图6中的52所示。可以理解的是,dom树中的各节点对应的数据集合中,可能仅有部分节点对应的数据集合包含第一信息。因此,可能并不是dom树包含的所有节点都可以执行步骤s501至步骤s505。步骤s502:基于所述目标节点对应的所述第一信息,获取所述至少一个关键词分别占用的关键词位置区域,以及,所述至少一个关键词分别对应的扩展阅读行为。步骤s502包括:第一步,从所述目标节点对应的数据集合中获取第一信息。所述第一信息为用于获取所述目标节点对应的内容包含的至少一个关键词分别占用的关键词位置区域及所述至少一个关键词分别对应的扩展阅读行为的信息,所述数据集合包含所述目标节点能够执行的操作。仍以图6为例,则步骤s502可以对应图6中的53,目标节点可以检测自己对应的数据集合中是否包括第一信息。第二步,基于所述第一信息,获取所述至少一个关键词分别占用的关键词位置区域,以及,所述至少一个关键词分别对应的扩展阅读行为。目标节点对应的数据集合可以为类或结构体或函数。所述基于所述第一信息,获取所述至少一个关键词分别占用的关键词位置区域,以及,所述至少一个关键词分别对应的扩展阅读行为包括:基于所述第一信息,调用所述至少一个关键词分别对应的关键词数据集合;从所述至少一个关键词分别对应的关键词数据集合中,分别获取所述至少一个关键词分别占用的关键词位置区域,以及,所述至少一个关键词分别对应的扩展阅读行为。由于图6所示的例子中,目标节点仅包括“保定”这一关键词,因此图6中仅示出了一个关键词数据集合,如53。对于关键词数据集合的说明请参见“所述目标节点包含的至少一个关键词分别占用的关键词位置区域以及相应关键词对应的扩展阅读行为,分别存储至相应的关键词数据集合中”对关键词数据集合的说明,这里不再赘述。步骤s503:从所述至少一个关键词分别占用的关键词位置区域中,确定包含所述点击位置的目标关键词位置区域。步骤s504:执行所述目标关键词位置区域对应的扩展阅读行为。若点击位置不再任一关键词位置区域中,则不执行扩展阅读行为,若点击位置在目标关键词位置区域,则执行所述目标关键词位置区域对应的扩展阅读行为。假设“保定”这一关键词的扩展阅读行为为链接到对保定进行介绍的网页。则浏览器跳转至如图6所示的网页54。为了本领域技术人员更加理解本发明实施例提供的扩展阅读行为处理方法以及关键词扩展阅读方法下面举一具体例子进行说明。1、用户基于浏览器访问网页a,浏览器从网页a所属的服务器获得网页a的资源文件,资源文件包括:html文件、图像文件、css文件、javascript脚本文件,以及manifest文件。假设html文件包括:2、浏览器从其所属第一服务器或代理服务器中,获取待扩展的关键词以及所述待扩展的关键词对应的扩展阅读行为。假设待扩展的关键词包括:保定,时间,上海等三个关键词。步骤1和2没有先后顺序,可以同时执行,也可以先后执行。3、浏览器基于原html文件(未经过修改的html文件)生成dom树的过程中,每获得一个节点,确定该节点是否属于预设节点类型和/或对应的内容的字符数是否大于或等于预设数值,且对应的内容是否包括待扩展的关键词中的至少一个关键词,若均是则,将该节点确定为目标节点。其中,原html文件对应的第一个节点和第二个节点的节点类型为元素节点类型,不属于预设节点类型——文本节点类型,因此,不会再进一步判断第一个节点和第二节点是否包括待扩展的关键词中的至少一个关键词;第三个节点的节点类型为文本节点类型,属于预设节点类型,且对应的内容的字符数大于或等于预设数值(假设预设数值为4),且第三个节点对应的内容为“xx主页12月4日10:50周一保定”包括关键词“保定”,因此,将第三个节点称为目标节点。4、浏览器确定目标节点即第三个节点对应的数据集合。假设目标节点对应的数据集合为:5、确定目标节点对应的“保定”这一关键词占用的关键词位置区域,假设为top20,left20,bottom20,right20。6、创建目标节点对应的关键词的关键词数据集合,并将关键词对应的关键词位置区域以及关键词对应的扩展阅读行为存储至关键词数据集合。假设关键词数据集合为:7、在所述目标节点对应的数据集合中添加用于获取“保定”关键词对应关键词位置信息以及扩展阅读行为的第一信息,例如,第一信息可以为调用信息;该调用信息为调用关键词数据集合1的接口。则目标节点对应的数据集合为:8、浏览器基于dom树和dom树各节点分别对应的数据集合,渲染网页。dom树中各节点并不都是待渲染的节点,例如,本示例中的第一个节点和第二个节点均为元素节点,因此,这两个节点均不需要渲染。浏览器可以首先获得dom树中的第一个节点,由于第一个节点为元素节点中的标签节点,所以不渲染该节点,第二个节点同理。在获得dom树中的第三个节点时,由于第三个节点为文本节点,且对应的数据集合包含第一信息,所以基于第一信息获取第三个节点对应的关键词位置区域;基于预设关键词渲染格式,渲染位于第三个节点对应的关键词位置区域中的“保定”这一关键词,使得用户能够看出“保定”这一词汇与第三个节点中的其他字不同,即用户可以基于这些区别,可以联想到“保定”这一词汇有扩展阅读行为。9、用户基于浏览器点击网页中的关键词“保定”。如图6中的51所示。10、浏览器中dom树的第三个节点可以检测到自己对应的位置区域被点击,且可以获得点击操作的点击位置。11、浏览器中的第三个节点检测自己对应的数据集合中是否包括第一信息;若包括第一信息,基于第一信息可以获得“保定”对应的关键词位置区域以及扩展阅读行为。12、浏览器中的第三个节点可以判断点击位置是否位于“保定”占用的关键词位置区域中,若在,则执行扩展阅读行为。如图7所示,为本申请实施例提供的一种为关键词增加扩展阅读行为的浏览器的结构图,该浏览器包括:第一获取模块71,用于获取待扩展的关键词以及所述待扩展的关键词对应的扩展阅读行为;第一确定模块72,用于确定目标节点,所述目标节点对应的内容包含所述待扩展的关键词中的至少一个关键词;所述目标节点属于文档对象模型dom树中的节点,所述dom树是基于待展示的网页对应的原html文件生成的,;第二确定模块73,用于确定所述至少一个关键词分别占用的关键词位置区域;存储模块74,用于存储所述目标节点对应的第一信息,所述第一信息为用于获取所述至少一个关键词分别占用的关键词位置区域及相应关键词对应的扩展阅读行为的信息。可选的,存储模块包括:第一确定单元,用于确定所述目标节点对应的数据集合,所述数据集合包含所述目标节点能够执行的操作;添加单元,用于在所述目标节点对应的所述数据集合中添加所述第一信息。可选的,第一确定模块包括:第一确定单元,用于确定节点类型属于预设节点类型,和/或,对应的内容包含的字符数大于或等于预设数值的候选节点;第二确定单元,用于若所述候选节点对应的内容包含所述待扩展的关键词中的至少一个关键词,确定所述候选节点为所述目标节点。可选的,添加单元可以包括:创建单元,用于创建所述至少一个关键词分别对应的关键词数据集合;存储单元,用于将所述至少一个关键词分别占用的关键词位置区域以及所述至少一个关键词分别对应的扩展阅读行为,存储至相应的关键词数据集合中;添加单元,用于在所述目标节点对应的数据集合中添加所述至少一个关键词分别对应调用信息;一个调用信息为调用相应关键词数据集合的接口。可选的,第一获取模块包括:第一获取单元,用于从第一服务器中获取所述待扩展的关键词以及所述待扩展的关键词对应的扩展阅读行为;其中,所述第一服务器预先设置有所述待扩展的关键词以及所述待扩展的关键词对应的扩展阅读行为,所述第一服务器为展示所述网页的浏览器所属的服务器。可选的,第一获取模块包括:第一发送单元,用于将访问所述网页的访问请求发送至所述网页所属第二服务器;第一接收单元,用于接收所述第二服务器反馈的所述网页的资源文件;第二获取单元,用于基于所述网页的资源文件,获取所述网页包含的文字,并发送至第一服务器,所述第一服务器为展示所述网页的浏览器所属的服务器;第二接收单元,用于接收所述第一服务器反馈的所述文字包含的待扩展关键词以及所述待扩展关键词对应的扩展阅读行为,所述第一服务器预先设置有所述待扩展的关键词以及所述待扩展的关键词对应的扩展阅读行为。可选的,第一获取模块包括:第二发送单元,用于将访问所述网页的访问请求发送至代理服务器;第三接收单元,用于接收所述代理服务器反馈的基于所述网页的资源文件确定的所述网页包含的所述待扩展的关键词,以及,预先存储所述待扩展的关键词对应的扩展阅读行为;其中,所述资源文件是从所述网页所属第二服务器中得到的。可选的,还包括:第三获取模块,用于针对所述dom树中每一节点,若所述节点对应的数据集合包含所述第一信息,基于所述第一信息获取所述节点对应的关键词位置区域;渲染模块,用于基于预设关键词渲染格式,渲染位于所述节点对应的关键词位置区域中的目标关键词,以渲染出所述待展示的网页;其中,所述预设关键词渲染格式与第一渲染格式不同,所述第一渲染格式为在所述节点对应的数据集合中添加第一信息之前,渲染所述目标关键词的渲染格式;基于所述预设关键词渲染格式渲染后的所述目标关键词占用的关键词位置区域的大小,与,基于所述第一渲染格式渲染后的所述目标关键词占用的关键词位置区域的大小相同。可选的,还包括:检测模块,用于检测用户在网页的所述目标节点处的点击操作,获取点击位置;第二获取模块,用于基于所述目标节点对应的所述第一信息,获取所述至少一个关键词分别占用的关键词位置区域,以及,所述至少一个关键词分别对应的扩展阅读行为;第三确定模块,用于从所述至少一个关键词分别占用的关键词位置区域中,确定包含所述点击位置的目标关键词位置区域;执行模块,用于执行所述目标关键词位置区域对应的扩展阅读行为。可选的,所述第二获取模块,包括:第三获取单元,用于从所述目标节点对应的数据集合中获取所述第一信息,所述数据集合包含所述目标节点能够执行的操作;第四获取单元,用于基于所述第一信息,获取所述至少一个关键词分别占用的关键词位置区域,以及,所述至少一个关键词分别对应的扩展阅读行为。可选的,第四获取单元包括:调用子单元,用于基于所述第一信息,调用所述至少一个关键词分别对应的关键词数据集合;获取子单元,用于从所述至少一个关键词分别对应的关键词数据集合中,分别获取所述至少一个关键词分别占用的关键词位置区域,以及,所述至少一个关键词分别对应的扩展阅读行为。如图8所示,为本申请实施例提供的一种为关键词增加扩展阅读行为的电子设备的内部结构图,该电子设备包括:存储器81,用于存储程序;存储器81可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。处理器82,用于执行所述程序,所述程序具体用于:获取待扩展的关键词以及所述待扩展的关键词对应的扩展阅读行为;确定目标节点,所述目标节点对应的内容包含所述待扩展的关键词中的至少一个关键词;所述目标节点属于文档对象模型dom树中的节点,所述dom树是基于待展示的网页对应的原html文件生成的;确定所述至少一个关键词分别占用的关键词位置区域;存储所述目标节点对应的第一信息,所述第一信息为用于获取所述至少一个关键词分别占用的关键词位置区域及相应关键词对应的扩展阅读行为的信息。处理器82可能是一个中央处理器cpu,或者是特定集成电路asic(applicationspecificintegratedcircuit),或者是被配置成实施本发明实施例的一个或多个集成电路。电子设备还可以包括通信接口83以及通信总线84,其中,存储器81、处理器82以及通信接口83通过通信总线84完成相互间的通信。可选的,通信接口可以为通信模块的接口,如gsm模块的接口。本申请实施例还提供了一种存储介质,所述存储介质存储有多条指令,所述指令适于处理器进行加载,以执行上述任一项所述的扩展阅读行为处理方法中的步骤。最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1