CN102346780A - 网页地址的获取方法和获取装置 - Google Patents
网页地址的获取方法和获取装置 Download PDFInfo
- Publication number
- CN102346780A CN102346780A CN2011103171323A CN201110317132A CN102346780A CN 102346780 A CN102346780 A CN 102346780A CN 2011103171323 A CN2011103171323 A CN 2011103171323A CN 201110317132 A CN201110317132 A CN 201110317132A CN 102346780 A CN102346780 A CN 102346780A
- Authority
- CN
- China
- Prior art keywords
- browser
- web page
- page address
- unit
- plug
- 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.)
- Granted
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种网页地址的获取方法和获取装置,方法包括:在浏览器启动时,初始化浏览器中预先嵌入的浏览器嵌入插件,并在浏览器嵌入插件的初始化过程中,向浏览器中注册浏览器嵌入插件的回调函数指针;在浏览器每次触发与打开网页相应的操作事件时,通过浏览器调用回调函数指针指向的回调函数、将操作事件引用或跳转的网页地址写入回调函数的相应参数中,以及通过浏览器嵌入插件解析回调函数并记录解析结果,直至解析结果满足预设结束条件;所述解析结果包括:每次触发的与打开网页相应的操作事件引用或跳转的网页地址,以及多次记录的网页地址之间的递归调用关系。本发明降低了获取网页地址所需的成本,提高了网页地址获取的效率。
Description
技术领域
本发明涉及互联网安全技术,尤其涉及一种网页地址的获取方法和获取装置。
背景技术
随着互联网网页制作技术的不断进步,可在同一个网页页面中通过多种方法引入其他网页页面并呈现给用户。网页页面的常用引入方法包括:内框(iframe)法、引用(include)法、浏览器下载(IE:Download)法、对象(object)等。这些方法写法各不相同,并且IE等浏览器对这些编程写法的格式要求并不严格,例如:对程序中有无双引号、有无空格、前后的标签是否严格匹配等格式无严格要求,IE等浏览器可以识别和处理这些程序,从而保证了网页页面的兼容性。此外,引用法还支持网页页面的递归嵌套引用,例如:在“1.html”中引用“2.html”,在2.html”中引用“3.html”,在“3.html”中引用“4.html”,以此类推,层层嵌套即递归调用。IE等浏览器根据网页地址之间的递归调用顺序依次访问相应网页。
在实际应用中,如果发现某网站的某网页被植入木马,需要查找到从源网页(如该网站的首页)到目的网页(如感染木马或病毒的网页之间的所有链接,以便及时进行木马告警或查杀等处理。
获取网页地址的一种现有技术是关键字查找法。关键字查找法是将网页识别为一个普通的文本文件,先完全下载下来,然后将网页读入程序中,程序中查询各种网页引用和网页跳转的关键字,然后通过关键字定位出要引用或跳转的网页地址。例如:在网页“1.html”中,通过字符串查找关键字“include”,那么就可以根据这个关键字就可以找到该网页要引用的网页地址<include src=″2.html″>,然后再下载“2.html”;将“2.html”与目的网页地址“4.html”进行比较,当二者不符时,则再重复执行上述步骤,直至找到目的网页地址“4.html”。
获取网页地址的另一种现有技术是页面元素法。页面元素法是在加载网页时将网页识别为各种元素,网页的各个标签代表了不同的元素类型,通过所有的跳转类型的元素和引用类型的元素,就能够查找到要引用或跳转的网页地址。例如:当读取<include src=″2.html″>时,程序会自动将其识别为一个引用类型的元素,同时可得到其引用的网页地址为“2.html”;将“2.html”与目的网页地址“4.html”进行比较,当二者不符时,则再重复执行上述步骤,直至找到目的网页地址“4.html”。
如上述所述,现有引入网页页面的方法多种多样,编程写法也不统一,这使得如果要获取源网页到目的网页之间递归调用的所有的网页地址(如2.html和3.html),不得不遍历查找所有的关键字或网页元素,这使得现有的关键字查找法和页面元素法存在的以下共同缺陷:
(1)程序开发和维护成本高:当有引入网页页面的新方法出现时,程序是无法立刻自动识别和抓取的,需要重新开发程序添加新的关键字或网页元素类型;
(2)错误率高:现有引入网页页面的方法缺少规范的编程写法,使得程序无法正确识别采用不规范编程写法引入的网页地址,可能出现漏判和误判的情况,如使原本的引用页面没有找到,而将非引用页面误判为是引入页面;
(3)运行速度慢:随着新的引入网页页面的新方法的增加,需要遍历的关键字也越来越多,这导致程序处理的速度也越来越慢;此外,由于识别网页元素时,网页所有内容都是加载到内存中的,因此,当网页页面较大时,程序识别速度会变得很慢。
发明内容
本发明提供一种网页地址的获取方法和获取装置,用以降低获取网页地址所需的成本,提高获取效率。
本发明提供一种网页地址的获取方法,包括:
在浏览器启动时,初始化所述浏览器中预先嵌入的浏览器嵌入插件,并在所述浏览器嵌入插件的初始化过程中,向所述浏览器中注册浏览器嵌入插件的回调函数指针;
在所述浏览器每次触发与打开网页相应的操作事件时,通过所述浏览器调用所述回调函数指针指向的回调函数、将所述操作事件引用或跳转的网页地址写入所述回调函数的相应参数中,以及通过所述浏览器嵌入插件解析所述回调函数并记录解析结果,直至所述解析结果满足预设结束条件;
所述解析结果包括:每次触发的与打开网页相应的操作事件引用或跳转的网页地址,以及多次记录的网页地址之间的递归调用关系。
本发明还提供了一种网页地址的获取装置,包括:
初始化处理模块,用于在浏览器启动时,初始化所述浏览器中预先嵌入的浏览器嵌入插件,并在所述浏览器嵌入插件的初始化过程中,向所述浏览器中注册浏览器嵌入插件的回调函数指针;
网页地址获取模块,用于在所述浏览器每次触发与打开网页相应的操作事件时,通过所述浏览器调用所述回调函数指针指向的回调函数、将所述操作事件引用或跳转的网页地址写入所述回调函数的相应参数中,并通过所述浏览器嵌入插件解析所述回调函数并记录解析结果,直至所述解析结果满足预设结束条件;所述解析结果包括:每次触发的与打开网页相应的操作事件引用或跳转的网页地址,以及多次记录的网页地址之间的递归调用关系。
本发明提供的网页地址的获取方法和获取装置中,将浏览器嵌入插件嵌入到浏览器内部,通过浏览器嵌入插件直接捕获浏览器需要访问的网页地址,从而不需要识别采用各种网页引入技术编写的程序,因此可降低程序开发和维护成本,并提高了获取网页地址的成功率。此外,由于嵌入浏览器的浏览器嵌入插件占用的内存小,因此运行速度较快,从而提高了网页地址获取的效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一提供的网页地址的获取方法流程图;
图2为本发明实施例二提供的BHO插件获取IE浏览器行为的方法示意图;
图3为图2中BHO插件的内容示意图;
图4为图2中IE浏览器嵌入BHO插件的示意图;
图5为本发明实施例三提供的通过在IE浏览器中嵌入BHO插件来获取网页地址的方法流程图;
图6为本发明应用场景中提供的网络地址递归调用的示例;
图7为本发明实施例四提供的网页地址的获取装置结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明以下实施例的序号仅仅为了描述,不代表实施例的优劣。
图1为本发明实施例一提供的网页地址的获取方法流程图。如图1所示的方法包括:
步骤11:在浏览器启动时,初始化所述浏览器中预先嵌入的浏览器嵌入插件,并在所述浏览器嵌入插件的初始化过程中,向所述浏览器中注册浏览器嵌入插件的回调函数指针。
浏览器启动时会检查该浏览器注册表中是否包括浏览器嵌入插件,并在浏览器注册表中包括浏览器嵌入插件时,浏览器会自动启动该浏览器嵌入插件,浏览器嵌入插件启动后进行初始化,在浏览器嵌入插件初始化过程中,向浏览器中注册浏览器嵌入插件的回调函数指针。
步骤12:在所述浏览器每次触发与打开网页相应的操作事件时,通过所述浏览器调用所述回调函数指针指向的回调函数、将所述操作事件引用或跳转的网页地址写入所述回调函数的相应参数中,并通过所述浏览器嵌入插件解析所述回调函数并记录解析结果,直至所述解析结果满足预设结束条件;所述解析结果包括:每次触发的与打开网页相应的操作事件引用或跳转的网页地址,以及多次记录的网页地址之间的递归调用关系。
在浏览器嵌入插件完成初始化之后,如果浏览器触发预设操作事件,则浏览器会调用该回调函数指针指向的回调函数,并将当前触发的操作事件包括的参数写入到调用函数的相应参数。浏览器嵌入插件对回调函数的参数进行解析并记录解析结果。可选的,浏览器嵌入插件只需对其关心的参数进行解析,对其不关心的参数无需进行解析,以提高解析效率。本发明中,浏览器嵌入插件解析的结果包括:每次触发的与打开网页相应的操作事件引用或跳转的网页地址,以及多次记录的网页地址之间的递归调用关系。这样,通过浏览器嵌入插件解析的结果,即可建立正确的网页地址链。
上述结束条件可根据实际需要预先设置,例如结束条件可包括但不限于以下条件:当前捕获的网页地址与预先确定的目的网页地址相符;或者,当前所述操作事件没有引用和跳转的网页地址;或者,捕获的网页地址的数量等于预设的最大收集数量。
本实施例可将浏览器嵌入插件嵌入到浏览器内部,并在浏览器启动时将浏览器嵌入插件的回调函数指针注册到浏览器中;当浏览器触发预设操作事件时,会调用回调函数指针指向的回调函数;浏览器嵌入插件通过解析回调函数即可从底层直接获取浏览器需要访问的网页地址,从而不需要识别采用各种网页引入技术编写的程序,因此可降低程序开发和维护成本,并提高了获取网页地址的成功率。此外,由于嵌入浏览器的浏览器嵌入插件占用的内存小,因此运行速度较快,从而提高了网页地址获取的效率。
图2为本发明实施例二提供的BHO插件获取IE浏览器行为的方法示意图。本实施例是以IE为浏览器,以浏览器辅助对象(Browser HelperObject)插件为浏览器嵌入插件为例,详细说明本发明的技术方案。
BHO是微软推出的作为浏览器对第三方程序员开放交互接口的业界标准,通过简单的代码就可以进入浏览器领域的“交互接口”(INTERACTIVED Interface)。通过这个接口,程序员可以编写代码获取浏览器的行为,比如“后退”、“前进”、“当前页面”等,利用BHO的交互特性,程序员还可以用代码控制浏览器行为,比如修改替换浏览器工具栏,添加自己的程序按钮等。BHO的目的是为了更好的帮助程序员打造个性化浏览器,以及为程序提供更简洁的交互功能,现在很多IE个性化工具就是利用BHO的来实现。
本实施例将BHO插件嵌入到IE浏览器内部,并在IE浏览器启动时将BHO插件的回调函数指针注册到IE浏览器中;当IE浏览器触发预设操作事件时,会调用回调函数指针指向的回调函数;BHO插件通过解析回调函数即可从底层直接获取浏览器需要访问的网页地址,从而建立正确的网页地址链。具体的如图2所示,本实施例BHO获取IE浏览器行为的方法包括:
步骤21:创建BHO插件,并将创建好的BHO插件嵌入到IE浏览器中。
图3为图2中BHO插件的内容示意图。如图3所示,BHO插件包括:BHO初始化函数、BHO回调函数和BHO写入注册表。其中,初始化函数用于在被嵌入的IE浏览器启动时自动启动BHO插件并进行初始化处理;BHO回调函数用于控制IE浏览器在触发预设的操作事件时作出预设响应;BHO写入注册表包括了帮助BHO控制IE浏览器所需的数据文件。
图4为图2中IE浏览器嵌入BHO插件的示意图。可将创建的BHO插件添加到IE浏览器的注册表中,如将BHO插件添加到IE浏览器的如下位置:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects。
步骤22:IE浏览器启动。
步骤23:IE浏览器启动过程中发现IE浏览器注册表中包括BHO插件,执行步骤24。
步骤24:IE浏览器调用BHO插件的初始化函数,对BHO插件进行初始化处理。
在BHO插件的初始化过程中,IE浏览器通过调用BHO插件的初始化函数,注册BHO插件回调函数的函数指针。这样,当IE浏览器在运行过程中触发与函数指针对应的操作事件时会调用相应回调函数,将IE浏览器当前触发的操作事件包括的参数,写入当前调用回调函数的相应参数中。BHO插件由此可获知IE浏览器当前触发的操作事件是什么,并且BHO插件还可以获取IE浏览器当前触发的操作事件中包括的参数。
步骤25:IE浏览器根据外部指令执行具体操作,如访问某个网页等。
步骤26:当IE浏览器触发预设的操作事件时,IE浏览器调用BHO回调函数。
步骤27:BHO插件根据被调用的BHO回调函数捕获IE浏览器触发的操作事件,并根据BHO回调函数的设置执行相应操作。
步骤28:BHO回调函数执行完毕,返回步骤25。
本实施例将BHO插件嵌入到IE浏览器内部,并在IE浏览器启动时将BHO插件的回调函数指针注册到IE浏览器中;当IE浏览器触发预设操作事件时,会调用回调函数指针指向的回调函数;BHO插件通过解析回调函数,即可从底层直接获取与浏览器访问行为相关的参数(如网页地址),从而不需要识别采用各种网页引入技术编写的程序,避免了现有技术获取网页地址所带来的缺陷。
图5为本发明实施例三提供的通过在IE浏览器中嵌入BHO插件来获取网页地址的方法流程图。如图5所示的方法包括:
步骤51:IE浏览器打开某一网页。
可选的,BHO插件还可控制IE浏览器打开指定网页。例如:BHO插件向IE浏览器的接口函数写入指定网页地址,IE浏览器打开与该指定网页地址对应的网页。
步骤52:IE浏览器在该网页加载过程中发现该网页有引用网页时,执行步骤53。
步骤53:IE浏览器触发“DISPID_BEFORENAVIGATE2”事件,将打开该事件引用或跳转的网页地址对应的网页。
步骤54:IE浏览器在触发“DISPID_BEFORENAVIGATE2”事件时,调用BHO插件回调函数指针指向的回调函数,并将“DISPID_BEFORENAVIGATE2”事件引用或跳转的网页地址,写入到回调函数的相应参数中。
步骤55:BHO插件解析回调函数中关于“DISPID_BEFORENAVIGATE2”事件相关的参数。
步骤56:BHO插件记录解析结果,该解析结果包括IE浏览器每次触发的“DISPID_BEFORENAVIGATE2”事件引用或跳转的网页地址、以及当前记录网页地址与在先记录网页地址之间的递归调用关系。
本实施例中,假设IE 浏览器触发的操作事件为“DISPID_BEFORENAVIGATE2”事件,该事件是IE浏览器如IE6、IE7、IE8和IE9中与打开网页相应的标准操作事件。当IE浏览器触发“DISPID_BEFORENAVIGATE2”事件时,IE会调用回调函数,将当前触发的“DISPID_BEFORENAVIGATE2”事件引用或跳转的网页地,写入BHO插件的回调函数。BHO插件对回调函数进行解析并记录解析结果。
图6为本发明应用场景中提供的网络地址递归调用的示例。如图6所示的示例中,网页地址之间采用递归嵌套引用,如在“1.html”中引用“2.html”,在2.html”中引用“3.html”,在“3.html”中引用“4.html”。IE浏览器在访问网页过程中根据网页地址之间的引用关系,可自动引用相应的网页地址,这个过程不需要程序进行特别处理。这些引用的网页地址携带在与打开网页相应的操作事件“DISPID_BEFORENAVIGATE2”的消息参数中。IE浏览器将I“DISPID_BEFORENAVIGATE2”事件的消息参数,如该事件引用或跳转的网页地址,写入BHO回调函数的相应参数。也就是说,当IE浏览器打开“1.html”时,IE浏览器会自动引用“2.html”,IE浏览器将“2.html”地址写入BHO插件的回调函数;当IE浏览器打开“2.html”后,IE浏览器又会自动引用“3.html”,IE浏览器将“3.html”地址写入BHO插件的回调函数;以此类推,当IE浏览器最后打开“4.html”地址时,IE浏览器将“4.html”地址写入BHO插件的回调函数,BHO插件每次都对回调函数进行解析,由此可捕获从“1.html”到“4.html”之间递归调用的各网络地址“2.html”和“3.html”。
步骤57:BHO插件判断是否满足预设结束条件,如果满足,则执行步骤58;否则,执行步骤51,IE将打开步骤55中“DISPID_BEFORENAVIGATE2”事件引用或跳转的网页地址对应的网页。
在实际应用中,可根据实际需要在BHO插件中预先结束条件。例如:
在一种可选的实施方式中,结束条件为:当前捕获的网页地址与预先确定的目的网页地址相符。该情形对应的应用场景例如:在已知源网页地址和目的网页地址时,获取源网页地址和目的网页地址之间串接的所有网页地址以及这些网络地址之间的递归调用关系。具体的,如在发现某一网站某一级链接的网页被植入木马或感染病毒时,需要找到从该网站的首页到被植入木马或感染病毒的网页之间的递归调用的各网页地址,以便用户或管理人员进行木马或病毒的清除。
在另一种可选的实施方式中,结束条件为:当前捕获的操作事件没有引用和跳转的网页地址。该情形对应的应用场景例如:需要获取某网站或某网站的某一网页包括的所有链接,根据获取所有链接可进行木马或病毒进行全面扫描以提高网站或网页的安全性,或者,根据获取所有链接可生成该网站或网页的地图,或者,根据获取所有链接可对该网站或网页进行镜像复制等。
此外,结束条件还可包括但不限于以下条件:捕获的网页地址的数量等于预设的最大收集数量,从而满足多样化应用的实际需求。
步骤58:BHO插件输出用于表示结束网页地址捕获的提示信息。
本实施例将BHO插件嵌入到IE浏览器内部,并在IE浏览器启动时将BHO插件的回调函数指针注册到IE浏览器中;当IE浏览器触发预设操作事件时,会调用回调函数指针指向的回调函数;BHO插件通过解析回调函数即可从底层直接获取浏览器需要访问的网页地址,从而不需要识别采用各种网页引入技术编写的程序,因此可避免现有技术获取网页地址所带来的缺陷。
本实施例可将BHO插件嵌入到IE浏览器内部。无论采用何种技术实现网页引用和网页跳转,归根结底需要浏览器来执行页面引用和跳转行为。本实施例通过嵌入IE浏览器的BHO插件直接捕获IE浏览器访问网页的行为,得到IE浏览器将要打开的网页地址;只要IE浏览器能不断引用递归调用的网页,BHO插件即可不断捕获IE浏览器引用的网页地址。这使得BHO插件可从底层直接获取IE浏览器需要访问的网页地址,从而不需要识别采用各种网页引入技术编写的程序,因此可降低程序开发和维护成本,并提高了获取网页地址的成功率。此外,由于嵌入IE浏览器的BHO插件占用的内存小,因此运行速度较快,从而提高了网页地址获取的效率。
虽然本发明是以IE浏览器和BHO插件为应用实例详细说明本发明的技术方案,但需要说明的是,本发明的技术方案还可应用于其他浏览器及其支持嵌入的浏览器嵌入插件,例如:火狐浏览器及其支持的嵌入插件,“Opera”浏览器及其支持的嵌入插件,“Chrome”浏览器及其支持的嵌入插件,“Safari”浏览器及其支持的嵌入插件等。
图7为本发明实施例四提供的网页地址的获取装置结构示意图。如图7所示的装置可包括:初始化处理模块71和网页地址获取模块72。
初始化处理模块71可用于在浏览器启动时,初始化所述浏览器中预先嵌入的浏览器嵌入插件,并在所述浏览器嵌入插件的初始化过程中,向所述浏览器中注册浏览器嵌入插件的回调函数指针。
网页地址获取模块72可用于在所述浏览器每次触发与打开网页相应的操作事件时,通过所述浏览器调用所述回调函数指针指向的回调函数、将所述操作事件引用或跳转的网页地址写入所述回调函数的相应参数中,并通过所述浏览器嵌入插件解析所述回调函数并记录解析结果,直至所述解析结果满足预设结束条件;所述解析结果包括:每次触发的与打开网页相应的操作事件引用或跳转的网页地址,以及多次记录的网页地址之间的递归调用关系。
其中,所述预设结束条件可包括但不限于以下条件之一:当前解析得到的网页地址与预先确定的目的网页地址相符;或者,当前所述操作事件没有引用和跳转的网页地址;或者,解析得到的网页地址的数量等于预设的最大收集数量。
为了实现浏览器访问指定网页,可选的,本实施例提供的装置还可包括:源网页地址确定模块73。源网页地址确定模块73分别与初始化处理模块71和网页地址获取模块72连接,用于通过所述浏览器嵌入插件向所述浏览器的接口函数写入指定网页地址,用以控制所述浏览器打开与所述指定网页地址对应的网页。
上述技术方案中,可选的,所述浏览器为IE浏览器,所述浏览器嵌入插件为浏览器辅助对象BHO插件;与打开网页相应的所述操作事件为“DISPID_BEFORENAVIGATE2”事件。此外,浏览器及其支持嵌入的浏览器嵌入插件,还可包括但不限于:火狐浏览器及其支持的嵌入插件,“Opera”浏览器及其支持的嵌入插件,“Chrome”浏览器及其支持的嵌入插件,“Safari”浏览器及其支持的嵌入插件等。
本实施例提供的网页地址的获取装置,可在浏览器启动时对该浏览器预先嵌入的浏览器插件进行初始化处理,通过浏览器嵌入插件从底层直接获取浏览器需要访问的网页地址,从而不需要识别采用各种网页引入技术编写的程序,因此可降低程序开发和维护成本,并提高了获取网页地址的成功率。此外,由于嵌入浏览器的浏览器嵌入插件占用的内存小,因此运行速度较快,从而提高了网页地址获取的效率。本实施例提供的网页地址的获取装置的运行机理,可参见上文图1-图6对应实施例的记载,在此不再赘述。
本领域普通技术人员可以理解:附图只是一个实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域普通技术人员可以理解:实施例中的装置中的模块可以按照实施例描述分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种网页地址的获取方法,其特征在于,包括:
在浏览器启动时,初始化所述浏览器中预先嵌入的浏览器嵌入插件,并在所述浏览器嵌入插件的初始化过程中,向所述浏览器中注册浏览器嵌入插件的回调函数指针;
在所述浏览器每次触发与打开网页相应的操作事件时,通过所述浏览器调用所述回调函数指针指向的回调函数、将所述操作事件引用或跳转的网页地址写入所述回调函数的相应参数中,以及通过所述浏览器嵌入插件解析所述回调函数并记录解析结果,直至所述解析结果满足预设结束条件;
所述解析结果包括:每次触发的与打开网页相应的操作事件引用或跳转的网页地址,以及多次记录的网页地址之间的递归调用关系。
2.根据权利要求1所述的获取方法,其特征在于,所述预设结束条件包括以下条件之一:
当前捕获的网页地址与预先确定的目的网页地址相符;
当前所述操作事件没有引用和跳转的网页地址;
捕获的网页地址的数量等于预设的最大收集数量。
3.根据权利要求1所述的获取方法,其特征在于,在向所述浏览器中注册浏览器嵌入插件的回调函数指针之后,所述方法还包括:
通过所述浏览器嵌入插件向所述浏览器的接口函数写入指定网页地址,用以控制所述浏览器打开与所述指定网页地址对应的网页。
4.根据权利要求1-3任一所述的获取方法,其特征在于,所述浏览器为IE浏览器,所述浏览器嵌入插件为浏览器辅助对象插件。
5.根据权利要求4所述的获取方法,其特征在于,与打开网页相应的所述操作事件为“DISPID_BEFORENAVIGATE2”事件。
6.一种网页地址的获取装置,其特征在于,包括:
初始化处理模块,用于在浏览器启动时,初始化所述浏览器中预先嵌入的浏览器嵌入插件,并在所述浏览器嵌入插件的初始化过程中,向所述浏览器中注册浏览器嵌入插件的回调函数指针;
网页地址获取模块,用于在所述浏览器每次触发与打开网页相应的操作事件时,通过所述浏览器调用所述回调函数指针指向的回调函数、将所述操作事件引用或跳转的网页地址写入所述回调函数的相应参数中,并通过所述浏览器嵌入插件解析所述回调函数并记录解析结果,直至所述解析结果满足预设结束条件;所述解析结果包括:每次触发的与打开网页相应的操作事件引用或跳转的网页地址,以及多次记录的网页地址之间的递归调用关系。
7.根据权利要求6所述的获取装置,其特征在于,所述预设结束条件包括以下条件之一:
当前解析得到的网页地址与预先确定的目的网页地址相符;
当前所述操作事件没有引用和跳转的网页地址;
解析得到的网页地址的数量等于预设的最大收集数量。
8.根据权利要求6所述的获取装置,其特征在于,所述装置还包括:
源网页地址确定模块,用于通过所述浏览器嵌入插件向所述浏览器的接口函数写入指定网页地址,用以控制所述浏览器打开与所述指定网页地址对应的网页。
9.根据权利要求6-8任一所述的获取装置,其特征在于,所述浏览器为IE浏览器,所述浏览器嵌入插件为浏览器辅助对象插件。
10.根据权利要求9所述的获取装置,其特征在于,与打开网页相应的所述操作事件为“DISPID_BEFORENAVIGATE2”事件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110317132.3A CN102346780B (zh) | 2011-10-18 | 2011-10-18 | 网页地址的获取方法和获取装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110317132.3A CN102346780B (zh) | 2011-10-18 | 2011-10-18 | 网页地址的获取方法和获取装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102346780A true CN102346780A (zh) | 2012-02-08 |
CN102346780B CN102346780B (zh) | 2016-01-06 |
Family
ID=45545457
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110317132.3A Active CN102346780B (zh) | 2011-10-18 | 2011-10-18 | 网页地址的获取方法和获取装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102346780B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103914340A (zh) * | 2012-12-31 | 2014-07-09 | 联想(北京)有限公司 | 信息处理方法及相应信息处理装置 |
CN104679747A (zh) * | 2013-11-26 | 2015-06-03 | 腾讯科技(深圳)有限公司 | 一种网址重定向的检测装置及方法 |
CN104731598A (zh) * | 2012-05-07 | 2015-06-24 | 北京奇虎科技有限公司 | 一种基于Webkit内核提供网页浏览的方法及装置 |
CN104978207A (zh) * | 2014-04-11 | 2015-10-14 | 博雅网络游戏开发(深圳)有限公司 | 上传文件的方法和浏览器及系统 |
CN107682531A (zh) * | 2017-09-07 | 2018-02-09 | 北京京东尚科信息技术有限公司 | 终端控制方法及系统 |
CN111625741A (zh) * | 2020-04-30 | 2020-09-04 | 贝壳技术有限公司 | 页面数据交互方法、装置、存储介质及电子设备 |
CN112099868A (zh) * | 2020-08-18 | 2020-12-18 | 北京思特奇信息技术股份有限公司 | 一种跨浏览器调用控件的方法和系统 |
CN113076291A (zh) * | 2021-04-27 | 2021-07-06 | 杭州安恒信息技术股份有限公司 | 一种文件定位方法、装置、设备及存储介质 |
CN113591000A (zh) * | 2021-07-13 | 2021-11-02 | 青岛海信移动通信技术股份有限公司 | 一种浏览器引擎的切换方法和装置及设备 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001222425A (ja) * | 2000-02-10 | 2001-08-17 | Nec Software Kobe Ltd | ウィルス駆除システムと方法および記録媒体 |
CN1365068A (zh) * | 2001-12-03 | 2002-08-21 | 复旦大学 | 网络化病毒源的挖掘方法 |
CN1920770A (zh) * | 2005-08-25 | 2007-02-28 | 千橡世纪科技发展(北京)有限公司 | 一种获取网页插件数据的系统和方法 |
CN1971555A (zh) * | 2005-11-24 | 2007-05-30 | 王凤仙 | 检测和过滤网络搜索引擎返回结果中包含的指向恶意网页的链接的方法 |
CN101405705A (zh) * | 2005-04-08 | 2009-04-08 | 微软公司 | 用于外来代码检测的系统和方法 |
CN101604361A (zh) * | 2008-06-11 | 2009-12-16 | 北京奇虎科技有限公司 | 一种恶意软件的检测方法及装置 |
CN101656710A (zh) * | 2008-08-21 | 2010-02-24 | 中联绿盟信息技术(北京)有限公司 | 主动审计系统及方法 |
CN101763432A (zh) * | 2010-01-05 | 2010-06-30 | 北京大学 | 一种轻量级网页动态视图快速构建方法 |
CN101799855A (zh) * | 2010-03-12 | 2010-08-11 | 北京大学 | 一种基于ActiveX组件模拟的网页木马检测方法 |
-
2011
- 2011-10-18 CN CN201110317132.3A patent/CN102346780B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001222425A (ja) * | 2000-02-10 | 2001-08-17 | Nec Software Kobe Ltd | ウィルス駆除システムと方法および記録媒体 |
CN1365068A (zh) * | 2001-12-03 | 2002-08-21 | 复旦大学 | 网络化病毒源的挖掘方法 |
CN101405705A (zh) * | 2005-04-08 | 2009-04-08 | 微软公司 | 用于外来代码检测的系统和方法 |
CN1920770A (zh) * | 2005-08-25 | 2007-02-28 | 千橡世纪科技发展(北京)有限公司 | 一种获取网页插件数据的系统和方法 |
CN1971555A (zh) * | 2005-11-24 | 2007-05-30 | 王凤仙 | 检测和过滤网络搜索引擎返回结果中包含的指向恶意网页的链接的方法 |
CN101604361A (zh) * | 2008-06-11 | 2009-12-16 | 北京奇虎科技有限公司 | 一种恶意软件的检测方法及装置 |
CN101656710A (zh) * | 2008-08-21 | 2010-02-24 | 中联绿盟信息技术(北京)有限公司 | 主动审计系统及方法 |
CN101763432A (zh) * | 2010-01-05 | 2010-06-30 | 北京大学 | 一种轻量级网页动态视图快速构建方法 |
CN101799855A (zh) * | 2010-03-12 | 2010-08-11 | 北京大学 | 一种基于ActiveX组件模拟的网页木马检测方法 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104731598B (zh) * | 2012-05-07 | 2018-05-04 | 北京奇虎科技有限公司 | 一种基于Webkit内核提供网页浏览的方法及装置 |
CN104731598A (zh) * | 2012-05-07 | 2015-06-24 | 北京奇虎科技有限公司 | 一种基于Webkit内核提供网页浏览的方法及装置 |
CN103914340A (zh) * | 2012-12-31 | 2014-07-09 | 联想(北京)有限公司 | 信息处理方法及相应信息处理装置 |
CN104679747A (zh) * | 2013-11-26 | 2015-06-03 | 腾讯科技(深圳)有限公司 | 一种网址重定向的检测装置及方法 |
CN104679747B (zh) * | 2013-11-26 | 2020-03-17 | 腾讯科技(深圳)有限公司 | 一种网址重定向的检测装置及方法 |
CN104978207B (zh) * | 2014-04-11 | 2018-07-06 | 深圳市东方博雅科技有限公司 | 上传文件的方法和浏览器及系统 |
CN104978207A (zh) * | 2014-04-11 | 2015-10-14 | 博雅网络游戏开发(深圳)有限公司 | 上传文件的方法和浏览器及系统 |
CN107682531A (zh) * | 2017-09-07 | 2018-02-09 | 北京京东尚科信息技术有限公司 | 终端控制方法及系统 |
CN111625741A (zh) * | 2020-04-30 | 2020-09-04 | 贝壳技术有限公司 | 页面数据交互方法、装置、存储介质及电子设备 |
CN112099868A (zh) * | 2020-08-18 | 2020-12-18 | 北京思特奇信息技术股份有限公司 | 一种跨浏览器调用控件的方法和系统 |
CN113076291A (zh) * | 2021-04-27 | 2021-07-06 | 杭州安恒信息技术股份有限公司 | 一种文件定位方法、装置、设备及存储介质 |
CN113591000A (zh) * | 2021-07-13 | 2021-11-02 | 青岛海信移动通信技术股份有限公司 | 一种浏览器引擎的切换方法和装置及设备 |
CN113591000B (zh) * | 2021-07-13 | 2024-04-19 | 青岛海信移动通信技术有限公司 | 一种浏览器引擎的切换方法和装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN102346780B (zh) | 2016-01-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102346780B (zh) | 网页地址的获取方法和获取装置 | |
CN104793946B (zh) | 基于云计算平台的应用部署方法和系统 | |
CN101211364B (zh) | 用于万维网页中暴露的资源的公共书签的方法和系统 | |
US7853924B2 (en) | Systems and methods for processing non-functional commentary of computer source code | |
CN102073490A (zh) | 转译数据库语言的方法及装置 | |
CN104699604A (zh) | 用于测试基于定制浏览内核的安卓应用的方法及装置 | |
CN109145235B (zh) | 用于解析网页的方法、装置及电子设备 | |
CN110888645A (zh) | 一种转换为小程序的方法、装置和存储介质 | |
US11314491B1 (en) | Generating asynchronous runtime compatibility in JavaScript applications | |
CN104182228B (zh) | 一种创建网络应用的方法和系统 | |
CN103034486A (zh) | 移动终端操作系统基于全系统扩展调用图的自动优化方法 | |
CN112445994A (zh) | 一种在打开的Chrome浏览器中进行自动化操作的方法 | |
CN110990001A (zh) | Ivr流程执行方法及装置 | |
WO2018114055A1 (en) | Method and system for providing additional information relating to primary information | |
CN116451271A (zh) | 一种应用软件的隐私政策自动提取方法 | |
CN111240790A (zh) | 一种应用的多语言适配方法、装置、客户端和存储介质 | |
CN112130860A (zh) | Json对象解析方法、装置、电子设备及存储介质 | |
CN109960497A (zh) | 一种脚本文件间的调用方法及装置 | |
JP2019179383A (ja) | Api処理方法、端末、api処理プログラム | |
US20220291905A1 (en) | Apparatus and method for creating content page based on intermediate language | |
Tong | Enjoying Web Development with Tapestry | |
CN117348883A (zh) | 基于模板的应用程序编译方法及装置 | |
Davis et al. | The Interweb | |
CN114021058A (zh) | 前端页面的样式管理方法、装置、计算机设备及存储介质 | |
Doglio et al. | Node. js and REST |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |