一种浏览器中定位查找信息的方法和装置制造方法及图纸

技术编号:8300824 阅读:239 留言:0更新日期:2013-02-07 04:17
本发明专利技术提供一种浏览器中定位查找信息的方法和装置,其中,方法包括:获得浏览器所请求的网页脚本;根据所述网页脚本,将网页渲染至所述浏览器的页面窗口中;在所述页面窗口中,获得输入的要查找的关键词;在所述网页脚本中,注入查找脚本;根据所述查找脚本,得到与所述关键词匹配的网页元素。本发明专利技术的方案可以提高网页元素的查找效率。

【技术实现步骤摘要】

本专利技术涉及浏览器的数据处理技术,特别是指一种浏览器中定位查找信息的方法和装置
技术介绍
浏览器的工作原理如下浏览器给Web服务器发送一个HTTP (Hyper texttransfer protocol,超文本传输协议)请求,Web服务器根据该HTTP请求,将相应网页的HTML (Hyper text markup language,超文本标记语言)脚本返回给所述浏览器的渲染引擎,渲染引擎根据该网页的HTML脚本将该网页的各个元素渲染至客户端的显示界面上。在浏览器的页面窗口中,若要查找一个信息时,如打开浏览器的菜单栏,点击“查找(在当前页)”选项时,然后在弹出的查找框中输入要查找的内容,该要查找的内容可以 是网页上的任一元素对应的关键词。传统方法在浏览器的页面窗口中实现查找时,是渲染引擎在渲染从Web服务器获得的HTML脚本的过程中,会产生一个元素树,该元素树中包括该HTML脚本对应网页的所有元素,如该网页中的新闻链接,图片元素等;通过该渲染引擎从该元素树中查找到与上述关键词相匹配的元素,并以高亮或者其它效果的方式进行标记。这种实现过程,由于需要在渲染引擎的元素树中查找,耗费资源多,查找效率低。
技术实现思路
本专利技术要解决的技术问题是提供一种浏览器中定位查找信息的方法和装置,可以提高浏览器的查找效率。为解决上述技术问题,本专利技术的实施例提供一种浏览器中定位查找信息的方法,包括获得浏览器所请求的网页脚本;根据所述网页脚本,将网页渲染至所述浏览器的页面窗口中;在所述页面窗口中,获得输入的要查找的关键词;在所述网页脚本中,注入查找脚本;根据所述查找脚本,得到与所述关键词匹配的网页元素。其中,在所述网页脚本中,注入查找脚本的步骤包括在所述网页脚本中,通过浏览器内核提供的插入脚本功能,注入所述查找脚本。其中,根据所述查找脚本,得到与所述关键词匹配的网页元素的步骤包括解析所述查找脚本中的浏览器对象,得到该浏览器对象的节点树;在所述节点树中查找与所述关键词相匹配的节点;获得查找到的所述节点对应的网页元素。其中,解析所述查找脚本中的浏览器对象,得到该浏览器对象的节点树的步骤包括解析所述查找脚本中的浏览器对象对应的链表,得到所述浏览器对象的多个节点构成的节点树。其中,得到与所述关键词匹配的网页元素后还包括根据所述查找脚本,在所述浏览器的页面窗口按照设置的显示效果渲染查找到的所述网页元素。本专利技术的实施例还提供一种浏览器中定位查找信息的装置,包括第一获得模块,用于获得浏览器所请求的网页脚本;渲染模块,用于根据所述网页脚本,将网页渲染至所述浏览器的页面窗口中;第二获得模块,用于在所述页面窗口中,获得输入的要查找的关键词; 脚本注入模块,用于在所述网页脚本中,注入查找脚本;查找模块,用于根据所述查找脚本,得到与所述关键词匹配的网页元素。其中,所述脚本注入模块具体用于在所述网页脚本中,通过浏览器内核提供的插入脚本功能,注入所述查找脚本。其中,所述查找模块包括解析模块,用于解析所述查找脚本中的浏览器对象,得到该浏览器对象的节点树;查找子模块,用于在所述节点树中查找与所述关键词相匹配的节点;获得子模块,用于获得查找到的所述节点对应的网页元素。其中,所述解析模块具体用于解析所述查找脚本中的浏览器对象对应的链表,得到所述浏览器对象的多个节点构成的节点树。其中,所述渲染模块还用于根据所述查找脚本,在所述浏览器的页面窗口按照设置的显示效果渲染查找到的所述网页元素。本专利技术的上述技术方案的有益效果如下上述方案中,通过在下载到本地所述网页脚本中,注入查找脚本;根据所述查找脚本,得到与所述关键词匹配的网页元素,从而避免了在渲染引擎中查找,即在网页中查找,有效地提高了查找效率。附图说明图I为本专利技术的实施例浏览器中定位查找信息的方法的流程示意图;图2为本专利技术的实施例浏览器中定位查找信息的方法的另一流程示意图;图3为本专利技术的实施例浏览器中定位查找信息的装置的结构示意图。具体实施例方式为使本专利技术要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。如图I所示,本专利技术的实施例提供一种浏览器中定位查找信息的方法,包括步骤11,获得浏览器所请求的网页脚本;步骤12,根据所述网页脚本,将网页渲染至所述浏览器的页面窗口中;步骤13,在所述页面窗口中,获得输入的要查找的关键词;步骤14,在所述网页脚本中,注入查找脚本;步骤15,根据所述查找脚本,得到与所述关键词匹配的网页元素。本专利技术的该实施例中,通过在下载到本地的所述网页脚本中,注入查找脚本;根据所述查找脚本,得到与所述关键词匹配的网页元素,从而避免了在渲染引擎中查找,即在网页中查找,有效地提高了查找效率。优选地,在上述实施例中,在所述网页脚本中,注入查找脚本的步骤包括在所述网页脚本中,通过浏览器内核提供的插入脚本功能,注入所述查找脚本。具体地,可以通过浏览器内核提供的插入脚本的接口函数,注入所述查找脚本;当然在网页脚本中,注入查找脚本的方法并不限于本实施例中所提供的方式,还可以包括自定义的方式进行注入。在本专利技术的中另一实施例中,包括上述步骤11-15的基础上,根据所述查找脚本,·得到与所述关键词匹配的网页元素的步骤包括解析所述查找脚本中的浏览器对象,得到该浏览器对象的节点树;具体地,解析所述查找脚本中的浏览器对象对应的链表,得到所述浏览器对象的多个节点构成的节点树;在所述节点树中查找与所述关键词相匹配的节点;获得查找到的所述节点对应的网页元素。其中,该查找脚本中具有一 DOM的数据结构,该DOM为一浏览器对象,通过枚举的方式,会列举出该DOM的各个节点,该节点如可以是网页脚本中包括的任一网页元素,如网页中一段文字,一张图片,一个动画等等,其中这里的节点还可能包括节点,这些节点会以树或者链表的形式进行列举;当然,也可以按照一转换规则,将链表转换成树结构或者将树结构转换成链表,该浏览器对象的节点在枚举过程中的具体表现形式本实施例中并不进行限定。在获得查找到的所述节点对应的网页元素时,如可以是遍历所述链表或者节点树中的所有节点,并判断所遍历的当前节点是否与所述关键词匹配。如图2所示,在本专利技术的另一实施例中,在包括上述步骤11-15的基础上,步骤15之后还可以包括步骤16,根据所述查找脚本,在所述浏览器的页面窗口按照设置的显示效果渲染查找到的所述网页元素;具体地,若查找到与关键词匹配的节点,则调用应用程序接口函数,将当前与关键词匹配的节点的显示位置及显示风格设置为与所述链表中或者节点树中的其它节点不同;其中,包括将与所述关键词匹配的节点对应的内容设置为粗体显示、不同颜色的显示标识、放大的显示标识或者字体浮动的显示标识等。本专利技术的上述实施例通过在已经渲染过的网页脚本中注入一段查找脚本,通过该查找脚本中定义好的查找逻辑,在网页窗口中查找与输入的关键词对应的网页元素,这样一方面,不需要利用渲染引擎,使浏览器执行查找功能时耗费的资源少,查找效率相应地提高;另一方面,不再是通过渲染引擎一边从Web浏览器下载网页脚本,一边渲染,一边查找;而是在本地对已经下载到本地的网页脚本稍做修改(即注入查找脚本),就可以实现在本地进行处理,就能实现网页元素的查找功能,从而提高了查找效率。如图3所示,本专利技术的实本文档来自技高网...

【技术保护点】
一种浏览器中定位查找信息的方法,其特征在于,包括:获得浏览器所请求的网页脚本;根据所述网页脚本,将网页渲染至所述浏览器的页面窗口中;在所述页面窗口中,获得输入的要查找的关键词;在所述网页脚本中,注入查找脚本;根据所述查找脚本,得到与所述关键词匹配的网页元素。

【技术特征摘要】

【专利技术属性】
技术研发人员:杨振辉孙明焱徐鸣
申请(专利权)人:北京金山安全软件有限公司可牛网络技术北京有限公司贝壳网际北京安全技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1