一种浏览器中弹窗的拦截方法、装置和系统的制作方法

文档序号:6502056阅读:121来源:国知局
一种浏览器中弹窗的拦截方法、装置和系统的制作方法
【专利摘要】本发明实施例公开了一种浏览器中弹窗的拦截方法、装置和系统。本发明实施例采用在检测到浏览器发起弹窗请求时,调用钩子函数,然后利用改钩子函数确定该弹窗请求是否为用户主动发起的请求,若为用户主动发起的请求,则进行弹窗操作,否则,则根据预置规则拦截该弹窗请求;由于钩子函数可以适用于所有的浏览器,因此,该方案兼容性较好,不会存在兼容性问题,无需特意为不同的浏览器开发特定的弹窗拦截插件,不仅无需后期维护,而且开发量较小,实现简单灵活。
【专利说明】-种浏览器中弹窗的拦截方法、装置和系统

【技术领域】
[0001] 本发明涉及通信【技术领域】,具体涉及一种浏览器中弹窗的拦截方法、装置和系统。

【背景技术】
[0002] 浏览器(Browser),是万维网服务的客户端浏览程序,它可以通过向万维网服务器 发送各种请求,然后对万维网服务器根据这些请求返回的数据,如超文本信息和各种多媒 体数据进行解释、显示和播放。通过浏览器,用户可以浏览万维网服务的各种数据,比如网 页、视频等等。在此过程中,除了用户自身请求的数据之外,往往会出现一些其他的数据,t匕 如弹窗广告等,这些弹窗常常会对用户造成骚扰,极大影响到用户的浏览体验。
[0003] 以弹窗广告为例,在现有技术中,一般通过在浏览器中加载弹窗广告拦截插件来 实现对浏览器中弹窗广告的拦截。但是,由于目前浏览器的种类较多,各种浏览器的特性也 截然不同,因此,很难将同一种弹窗广告拦截插件移植到不同的浏览器下,也就是说,针对 不同的浏览器,一般需要开发不同的插件。
[0004] 在对现有技术的研究和实践过程中,本发明的发明人发现,由于现有方案中每个 浏览器内核都需要额外地去维护一个插件,因此后期维护较为麻烦,而且需要针对不同的 浏览器开发不同的插件,开发量也较大,实现不够灵活。


【发明内容】

[0005] 本发明实施例提供一种浏览器中弹窗的拦截方法、装置和系统,不仅无需后期维 护,而且开发量较小,实现灵活。
[0006] 本发明实施例提供一种浏览器中弹窗的拦截方法,包括:
[0007] 检测到浏览器发起弹窗请求时,调用钩子函数;
[0008] 利用所述钩子函数确定所述弹窗请求是否为用户主动发起的请求;
[0009] 若是,则根据所述弹窗请求进行弹窗操作;
[0010] 若否,则根据预置规则拦截所述弹窗请求。
[0011] 可选的,其中,所述检测到浏览器发起弹窗请求时,调用钩子函数,可以包括:
[0012] 检测到浏览器调用指定的弹窗函数来打开链接地址时,调用钩子函数;或者,
[0013] 检测到浏览器调用ActiveX控件以弹窗形式来打开链接地址时,调用钩子函数。
[0014] 可选的,其中,所述利用所述钩子函数确定所述弹窗请求是否为用户主动发起的 请求,可以包括:
[0015] 利用所述钩子函数确定所述链接地址是否为用户主动发起的请求。
[0016] 可选的,其中,所述预置规则包括拦截模式和拦截规则,则所述根据预置规则拦截 所述弹窗请求,可以包括:
[0017] 确定当前的拦截模式和拦截规则;
[0018] 若当前的拦截模式为强力拦截模式,则拦截所述弹窗请求;
[0019] 若当前的拦截模式为精准拦截模式,则确定所述弹窗请求是否符合拦截规则,若 符合拦截规则,则拦截所述弹窗请求,若不符合拦截规则,则根据所述弹窗请求进行弹窗操 作。
[0020] 可选的,其中,所述确定所述弹窗请求是否符合拦截规则,若符合拦截规则,则拦 截所述弹窗请求,若不符合拦截规则,则根据所述弹窗请求进行弹窗操作,可以包括:
[0021] 根据拦截规则确定所述弹窗请求是否为弹窗广告链接;
[0022] 若是,则拦截所述弹窗请求;
[0023] 若否,则根据所述弹窗请求进行弹窗操作。
[0024] 可选的,其中,所述拦截所述弹窗请求之后,还可以包括:
[0025] 通知用户拦截结果和拦截的详细信息。
[0026] 相应的,本发明实施例还提供一种浏览器中弹窗的拦截装置,包括检测单元、判断 单元、第一处理单元和第二处理单元;
[0027] 检测单元,用于检测到浏览器发起弹窗请求时,调用钩子函数;
[0028] 判断单元,用于利用所述钩子函数确定所述弹窗请求是否为用户主动发起的请 求;
[0029] 第一处理单元,用于在判断单元确定所述弹窗请求为用户主动发起的请求时,根 据所述弹窗请求进行弹窗操作;
[0030] 第二处理单元,用于在判断单元确定所述弹窗请求不是用户主动发起的请求时, 根据预置规则拦截所述弹窗请求。
[0031] 可选的,其中,所述检测单元,具体可以用于检测到浏览器调用指定的弹窗函数来 打开链接地址时,调用钩子函数;或者,检测到浏览器调用ActiveX控件以弹窗形式来打开 链接地址时,调用钩子函数。
[0032] 可选的,其中,所述判断单元,具体可以用于利用所述钩子函数确定所述链接地址 是否为用户主动发起的请求。
[0033] 可选的,其中,所述预置规则可以包括拦截模式和拦截规则,则:
[0034] 所述第二处理单元,具体可以用于确定当前的拦截模式和拦截规则;若当前的拦 截模式为强力拦截模式,则拦截所述弹窗请求;若当前的拦截模式为精准拦截模式,则确定 所述弹窗请求是否符合拦截规则,若符合拦截规则,则拦截所述弹窗请求,若不符合拦截规 贝1J,则根据所述弹窗请求进行弹窗操作。
[0035] 可选的,其中,所述第二处理单元,具体可以用于确定当前的拦截模式和拦截规 贝1J ;若当前的拦截模式为强力拦截模式,则拦截所述弹窗请求;若当前的拦截模式为精准 拦截模式,则根据拦截规则确定所述弹窗请求是否为弹窗广告链接,若为弹窗广告链接,则 拦截所述弹窗请求;若不是弹窗广告链接,则根据所述弹窗请求进行弹窗操作。
[0036] 可选的,该浏览器中弹窗的拦截装置还可以包括通知单元,如下:
[0037] 通知单元,用于通知用户拦截结果和拦截的详细信息。
[0038] 此外,本发明实施例还提供一种通信系统,包括本发明实施例提供的任一种浏览 器中弹窗的拦截装置。
[0039] 本发明实施例采用在检测到浏览器发起弹窗请求时,调用钩子函数,然后利用改 钩子函数确定该弹窗请求是否为用户主动发起的请求,若为用户主动发起的请求,则进行 弹窗操作,否则,则根据预置规则拦截该弹窗请求;由于钩子函数可以适用于所有的浏览 器,因此,该方案兼容性较好,不会存在兼容性问题,无需特意为不同的浏览器开发特定的 弹窗拦截插件,不仅无需后期维护,而且开发量较小,实现简单灵活。

【专利附图】

【附图说明】
[0040] 为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使 用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于 本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附 图。
[0041] 图1是本发明实施例提供的浏览器中弹窗的拦截方法的流程图;
[0042] 图2a是本发明实施例提供的浏览器中弹窗的拦截方法的场景示意图;
[0043] 图2b是本发明实施例提供的浏览器中弹窗的拦截方法的另一流程图;
[0044] 图3是本发明实施例提供的浏览器中弹窗的拦截装置的结构示意图;
[0045] 图4是本发明实施例提供的终端的结构示意图。

【具体实施方式】
[0046] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施 例,都属于本发明保护的范围。
[0047] 本发明实施例提供一种浏览器中弹窗的拦截方法、装置和系统。以下分别进行详 细说明。
[0048] 实施例一、
[0049] 本发明实施例将从浏览器中弹窗的拦截装置的角度进行描述,该浏览器中弹窗的 拦截装置具体可以集成在客户端中,该客户端可以装载在终端中,该终端具体可以为智能 手机、平板电脑、电子书阅读器、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4 (Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面3)播放器、膝上型便携计算机和台式计算机等 等。
[0050] 一种浏览器中弹窗的拦截方法,包括:检测到浏览器发起弹窗请求时,调用钩子函 数,利用该钩子函数确定所述弹窗请求是否为用户主动发起的请求,若是,则根据该弹窗请 求进行弹窗操作;若否,则根据预置规则拦截该弹窗请求。
[0051] 如图1所示,具体流程可以如下:
[0052] 101、检测到浏览器发起弹窗请求时,调用钩子函数。
[0053] 其中,实现弹窗的方式一般有两种情况,一种是直接通过调用弹窗函数来实现,另 一种是调用某些本身可以实现打开链接地址功能的ActiveX控件来实现,即,步骤101具体 可以包括如下任一种方式:
[0054] (1)检测到浏览器调用指定的弹窗函数来打开链接地址时,调用钩子函数;
[0055] 比如,该指定的弹窗函数具体可以为"window. open"、"window. showModalDialog" 和 / 或 "window. showModelessDialog" 等等。
[0056] (2)检测到浏览器调用ActiveX控件以弹窗形式来打开链接地址时,调用钩子函 数。
[0057] 比如,该 ActiveX 控件具体可以为 "Windows API ShellExecuteEx" 等。
[0058] 其中,链接地址具体可以为统一资源定位符(URL, UniformResourceLocator)。
[0059] 102、利用步骤101中调用的钩子函数确定该弹窗请求是否为用户主动发起的请 求,若是,则执行步骤103,若否,则执行步骤104。
[0060] 例如,具体可以利用该调用的钩子函数确定该弹窗请求所请求的链接地址是否为 用户主动发起的请求,若是用户主动发起的请求,则执行步骤103,否则,若不是用户主动发 起的请求,则执行步骤104。
[0061] 103、根据该弹窗请求进行弹窗操作。
[0062] 例如,具体可以允许浏览器调用指定的弹窗函数,比如"window. open"、"window. showModalDialog" 和 / 或"window. showModelessDialog" 等来打开链接地址,或者, 允许浏览器调用ActiveX控件以弹窗形式来打开链接地址,比如调用"Windows API Shel lExecuteEx "通过默认浏览器来打开链接地址,等等。
[0063] 104、根据预置规则拦截该弹窗请求。
[0064] 其中,该预置规则可以包括拦截模式和拦截规则。拦截模式可以包括强力拦截模 式和精准拦截模式,在强力拦截模式下,可以对弹窗请求直接进行拦截,而在精准拦截模式 下,则只有在该弹窗请求符合预置的拦截规则时,才对其进行拦截。即,步骤"根据预置规则 拦截所述弹窗请求"可以包括:
[0065] 确定当前的拦截模式和拦截规则;若当前的拦截模式为强力拦截模式,则拦截该 弹窗请求;若当前的拦截模式为精准拦截模式,则确定该弹窗请求是否符合拦截规则,若符 合拦截规则,则拦截该弹窗请求,若不符合拦截规则,则根据该弹窗请求进行弹窗操作。 [0066] 其中,拦截规则可以根据实际应用的需求进行设置,比如,如果需要拦截的是弹窗 广告,则可以设置一个弹窗广告规则库,用于保存各种弹窗广告的规则(比如各种弹窗链 接),如果弹窗请求符合这些规则,就表明该弹窗请求为弹窗广告,所以,此时需要对该弹窗 请求进行拦截。即,步骤"确定该弹窗请求是否符合拦截规则,若符合拦截规则,则拦截该弹 窗请求,若不符合拦截规则,则根据该弹窗请求进行弹窗操作"具体可以如下:
[0067] 根据拦截规则确定该弹窗请求是否为弹窗广告链接,若是,则拦截所述弹窗请求; 若否,则根据所述弹窗请求进行弹窗操作。
[0068] 此外,可选的,为了提高用户体验质量,还可以将拦截结果和拦截的详细信息通知 给用户。即在步骤"拦截所述弹窗请求"之后,该浏览器中弹窗的拦截方法还可以包括: [0069] 通知用户拦截结果和拦截的详细信息。
[0070] 由上可知,本实施例采用在检测到浏览器发起弹窗请求时,调用钩子函数,然后利 用改钩子函数确定该弹窗请求是否为用户主动发起的请求,若为用户主动发起的请求,则 进行弹窗操作,否则,则根据预置规则拦截该弹窗请求;由于钩子函数可以适用于所有的浏 览器,因此,该方案兼容性较好,不会存在兼容性问题,无需特意为不同的浏览器开发特定 的弹窗拦截插件,不仅无需后期维护,而且开发量较小,实现简单灵活。
[0071] 实施例二、
[0072] 根据实施例一所描述的方法,以下将以拦截弹窗广告为例进行说明。
[0073] 如图2a所示,该浏览器页面数据过滤装置具体可以为客户端,比如浏览器,该客 户端可以装载在终端中,该客户端可以包括浏览器监控模块、检测拦截模块和用户通知模 块。在本实施例中,各个模块的功能可以如下:
[0074] (1)浏览器监控模块;
[0075] 浏览器监控模块,主要用于对浏览器进行检测,当检测到浏览器发起弹窗请求时, 则暂停该弹窗请求,并将该弹窗请求转发给检测拦截模块,以检测该该弹窗请求是否为用 户主动发起的请求,以及检测该弹窗请求是否为弹窗广告链接,并接收检测拦截模块返回 的检测拦截结果,若检测结果指示该弹窗请求为用户主动发起的请求,则通知浏览器根据 该弹窗请求进行弹窗操作,如果不是用户主动发起的请求,则按照预置规则拦截该弹窗请 求。比如,若当前的拦截模式为强力拦截模式,则直接拦截该弹窗请求;若当前的拦截模式 为精准拦截模式,则在确定该弹窗请求为弹窗广告链接时,才拦截该弹窗请求。
[0076] 其中,弹窗的形式可以包括多种,比如自动弹窗、网页点弹(即点击网页时弹出的 弹窗)和网页退弹(即退出网页时弹出的弹窗)等等。
[0077] (2)检测拦截模块;
[0078] 检测拦截模块,主要用于接收浏览器注入模块转发的弹窗请求,然后根据该弹窗 请求调用的钩子函数,利用调用的钩子函数确定该弹窗请求进行检测,以判断是否为用户 主动发起的请求,以及利用广告规则库对检测该弹窗请求所请求的数据是否为弹窗广告链 接等,并返回检测结果给浏览器监控模块。
[0079] 需说明的是,由于拦截规则都在广告规则库里,因此在系统启动时,该检测拦截模 块需要去解析广告规则库,以及探测该广告规则库的更新情况,即请求新的广告规则库,这 样,才能更精确地对广告进行拦截。
[0080] 其中,广告规则库可以保存在服务端,由服务端进行维护,例如,具体可以在服务 端设置一个"后台弹窗规则搜集模块",用于日常的URL源代码分析工作,提取这些URL里面 的弹窗广告链接,生成拦截规则下发到客户端供检测拦截模块使用。
[0081] (3)用户通知模块;
[0082] 用户通知模块,主要用于在检测拦截模块拦截到弹窗广告之后,告知用户拦截结 果和拦截的详细信息,以便用户判断这些拦截是否合适,此后,用户还可以通过查看日志等 方式来查看这些拦截信息。
[0083] 基于上述客户端的结构,如图2b所示,一种浏览器页面数据过滤方法,具体流程 可以如下:
[0084] 201、浏览器监控模块检测到浏览器发起弹窗请求时,将该弹窗请求转发给检测拦 截模块。
[0085] 例如,浏览器监控模块检测到浏览器调用指定的弹窗函数,比如"window, open、,' "window. showModalDialog,'和 / 或"window. showModelessDialog,'等来打开链接 地址时,立即暂停该弹窗请求的请求,并将该弹窗请求转发给检测拦截模块,以确定该弹窗 请求是否为用户主动发起的请求,以及确定该弹窗请求所请求的数据是否为一个弹窗广告 的链接,并等待检测拦截模块返回检测结果。
[0086] 又例如,浏览器监控模块检测到浏览器调用ActiveX控件以弹窗形式来打开链接 地址时,即暂停该弹窗请求的请求,并将该弹窗请求转发给检测拦截模块,以确定该弹窗请 求是否为用户主动发起的请求,以及确定该弹窗请求所请求的数据是否为一个弹窗广告的 链接,并等待检测拦截模块返回检测结果。
[0087] 202、检测拦截模块根据步骤201中接收到的弹窗请求调用钩子函数。
[0088] 203、检测拦截模块该调用的钩子函数确定该弹窗请求所请求的链接地址是否为 用户主动发起的请求,若不是用户主动发起的请求,则执行步骤204;若是用户主动发起的 请求,则返回指示该弹窗请求为用户主动发起的请求的检测结果给浏览器监控模块,并执 行步骤205。
[0089] 204、检测拦截模块确定当前的拦截模式以及拦截规则,并根据该拦截模式以及拦 截规则对该弹窗请求进行检测,得到检测结果,将检测结果发送给浏览器监控模块,具体如 下:
[0090] 若当前的拦截模式为强力拦截模式,则直接返回指示该弹窗请求不是用户主动发 起的请求且需要直接拦截的检测结果给浏览器监控模块,并执行步骤205 ;
[0091] 若当前的拦截模式为精准拦截模式,则根据拦截规则确定该弹窗请求是否为弹窗 广告链接,若为弹窗广告链接,则返回指示该弹窗请求不是用户主动发起的请求且为弹窗 广告链接的检测结果给浏览器监控模块,并执行步骤205 ;若不是弹窗广告链接,则返回指 示该弹窗请求不是用户主动发起的请求但也不是弹窗广告链接的检测结果给浏览器监控 模块,并执行步骤205。
[0092] 205、浏览器监控模块接收检测拦截模块返回的检测结果,若该检测结果指示该弹 窗请求为用户主动发起的请求,或者,若该检测结果指示该弹窗请求不是用户主动发起的 请求但也不是弹窗广告链接的,则通知浏览器根据该弹窗请求进行弹窗操作;否则,若该检 测结果指示该弹窗请求不是用户主动发起的请求且需要直接拦截的,或者,若该检测结果 指示该弹窗请求不是用户主动发起的请求且为弹窗广告链接的,则拦截该弹窗请求。
[0093] 206、可选的,用户通知模块可以接收浏览器监控模块发送的拦截结果和拦截的详 细信息,比如具体拦截了哪些弹窗广告等,并将该拦截结果和拦截的详细信息通知给用户, 以便用户判断这些拦截是否合适。
[0094] 此后,用户还可以通过查看日志等方式来查看这些拦截信息。
[0095] 由上可知,本实施例采用在检测到浏览器发起弹窗请求时,调用钩子函数,然后利 用改钩子函数确定该弹窗请求是否为用户主动发起的请求,若为用户主动发起的请求,则 进行弹窗操作,否则,则根据预置规则拦截该弹窗请求;由于钩子函数可以适用于所有的浏 览器,因此,该方案兼容性较好,不会存在兼容性问题,无需特意为不同的浏览器开发特定 的弹窗拦截插件,不仅无需后期维护,而且开发量较小,实现简单灵活。
[0096] 进一步的,现有技术的拦截方案只能拦截通过JS执行引擎调用弹窗函数来实现 弹窗的弹窗广告,而不能拦截通过调用插件来实现弹窗的弹窗广告,而本方案则对于这两 种方式的弹窗均适用,所以可以避免漏拦截的情况的发生,使得弹窗广告的拦截更加有效 和精准。
[0097] 实施例三、
[0098] 为了更好地实施以上方法,本发明实施例还提供一种浏览器中弹窗的拦截装置, 如图3所示,该浏览器中弹窗的拦截装置包括检测单元301、判断单元302、第一处理单元 303和第二处理单元304 ;
[0099] 检测单元301,用于检测到浏览器发起弹窗请求时,调用钩子函数;
[0100] 判断单元302,用于利用该调用的钩子函数确定该弹窗请求是否为用户主动发起 的请求;
[0101] 第一处理单元303,用于在判断单元302确定该弹窗请求为用户主动发起的请求 时,根据该弹窗请求进行弹窗操作;
[0102] 第二处理单元304,用于在判断单元302确定该弹窗请求不是用户主动发起的请 求时,根据预置规则拦截该弹窗请求。
[0103] 其中,实现弹窗的方式一般有两种情况,一种是直接通过调用弹窗函数来实现,另 一种是调用某些本身可以实现打开链接地址功能的ActiveX控件来实现,即:
[0104] 检测单元301,具体可以用于检测到浏览器调用指定的弹窗函数来打开链接地址 时,调用钩子函数;或者,检测到浏览器调用ActiveX控件以弹窗形式来打开链接地址时, 调用钩子函数。
[0105] 比如,该指定的弹窗函数具体可以为"window. open"、"window. showModalDialog" 和 / 或"window. showModelessDialog"等等。而该 ActiveX 控件具体可以为"Windows API ShellExecuteEx,' 等。
[0106] 则此时,判断单元302,具体可以用于利用该调用的钩子函数确定该链接地址是否 为用户主动发起的请求。
[0107] 可选的,其中,预置规则可以包括拦截模式和拦截规则,拦截模式可以包括强力拦 截模式和精准拦截模式,在强力拦截模式下,可以对弹窗请求直接进行拦截,而在精准拦截 模式下,则只有在该弹窗请求符合预置的拦截规则时,才对其进行拦截。即:
[0108] 第二处理单元304,具体可以用于确定当前的拦截模式和拦截规则;若当前的拦 截模式为强力拦截模式,则拦截该弹窗请求;若当前的拦截模式为精准拦截模式,则确定该 弹窗请求是否符合拦截规则,若符合拦截规则,则拦截该弹窗请求,若不符合拦截规则,则 根据该弹窗请求进行弹窗操作。
[0109] 其中,拦截规则可以根据实际应用的需求进行设置,比如,如果需要拦截的是弹窗 广告,则可以设置一个弹窗广告规则库,用于保存各种弹窗广告的规则(比如各种弹窗链 接),如果弹窗请求符合这些规则,就表明该弹窗请求为弹窗广告,所以,此时需要对该弹窗 请求进行拦截。即:
[0110] 第二处理单元304,具体可以用于确定当前的拦截模式和拦截规则;若当前的拦 截模式为强力拦截模式,则拦截所述弹窗请求;若当前的拦截模式为精准拦截模式,则根据 拦截规则确定所述弹窗请求是否为弹窗广告链接,若为弹窗广告链接,则拦截该弹窗请求; 若不是弹窗广告链接,则根据该弹窗请求进行弹窗操作。
[0111] 此外,可选的,为了提高用户体验质量,还可以将拦截结果和拦截的详细信息通知 给用户。即该浏览器中弹窗的拦截装置还可以包括通知单元;
[0112] 通知单元,用于通知用户拦截结果和拦截的详细信息。
[0113] 具体实施时,以上各个单元可以作为独立实体来实现,也可以进行任意组合,作为 同一或若干个实体来实现,比如以实施例二中的浏览器监控模块、检测拦截模块和用户通 知模块的形式来实现,等等,在此不再赘述。
[0114] 该浏览器中弹窗的拦截装置具体可以集成在客户端中,该客户端可以装载在终端 中,该终端具体可以为智能手机、平板电脑、电子书阅读器、MP3播放器、MP4播放器、膝上型 便携计算机和台式计算机等等。
[0115] 由上可知,本实施例的浏览器中弹窗的拦截装置的检测单元301可以在检测到浏 览器发起弹窗请求时,调用钩子函数,然后由判断单元302利用改钩子函数确定该弹窗请 求是否为用户主动发起的请求,若为用户主动发起的请求,则由第一处理单元303进行弹 窗操作,否则,则由第二处理单元304根据预置规则拦截该弹窗请求;由于钩子函数可以适 用于所有的浏览器,因此,该方案兼容性较好,不会存在兼容性问题,无需特意为不同的浏 览器开发特定的弹窗拦截插件,不仅无需后期维护,而且开发量较小,实现简单灵活。
[0116] 实施例四、
[0117] 相应的,本发明实施例还提供一种通信系统,包括本发明实施例提供的任一种浏 览器中弹窗的拦截装置,其中,该浏览器中弹窗的拦截装置具体可参见实施例三,例如,该 浏览器中弹窗的拦截装置具体可以集成在客户端中,如下:
[0118] 客户端,用于检测到浏览器发起弹窗请求时,调用钩子函数,利用该钩子函数确定 所述弹窗请求是否为用户主动发起的请求,若是,则根据该弹窗请求进行弹窗操作;若否, 则根据预置规则拦截该弹窗请求,具体可参见前面的实施例,在此不再赘述。
[0119] 此外,该通信系统还可以包括服务端,如下:
[0120] 服务端,用于为客户端提供拦截规则。
[0121] 则客户端,具体可以用于检测到浏览器发起弹窗请求时,调用钩子函数,利用该钩 子函数确定所述弹窗请求是否为用户主动发起的请求,若是,则根据该弹窗请求进行弹窗 操作;若否,则确定拦截模式,以及从服务端获取拦截规则,若当前的拦截模式为强力拦截 模式,则拦截该弹窗请求;若当前的拦截模式为精准拦截模式,则确定该弹窗请求是否符合 拦截规则,若符合拦截规则,则拦截该弹窗请求,若不符合拦截规则,则根据该弹窗请求进 行弹窗操作。
[0122] 例如,以弹窗广告拦截为例,该服务端可以保存和维护广告规则库,并将该广告规 则库中的拦截规则提供给客户端使用,而客户端,则可以利用该拦截规则,检测该弹窗请求 即将请求的数据是否为弹窗广告链接,并根据检测结果对该数据请求消息进行处理,具体 可参见前面的实施例,在此不再赘述。
[0123] 该通信系统可以实现本发明实施例所提供的浏览器页面数据过滤装置同样的有 益效果,即具体可以如下:
[0124] 本实施例的通信系统中的浏览器中弹窗的拦截装置采用在检测到浏览器发起弹 窗请求时,调用钩子函数,然后利用改钩子函数确定该弹窗请求是否为用户主动发起的请 求,若为用户主动发起的请求,则进行弹窗操作,否则,则根据预置规则拦截该弹窗请求;由 于钩子函数可以适用于所有的浏览器,因此,该方案兼容性较好,不会存在兼容性问题,无 需特意为不同的浏览器开发特定的弹窗拦截插件,不仅无需后期维护,而且开发量较小,实 现简单灵活。
[0125] 实施例五、
[0126] 相应的,本发明实施例还提供一种终端,如图4所示,该终端可以包括射频(RF, Radio Frequency)电路401、包括有一个或一个以上计算机可读存储介质的存储器402、输 入单元403、显示单元404、传感器405、音频电路406、无线保真(WiFi,Wireless Fidelity) 模块407、包括有一个或者一个以上处理核心的处理器408、以及电源409等部件。本领域 技术人员可以理解,图4中示出的终端结构并不构成对终端的限定,可以包括比图示更多 或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
[0127] RF电路401可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站 的下行信息接收后,交由一个或者一个以上处理器408处理;另外,将涉及上行的数据发 送给基站。通常,RF电路401包括但不限于天线、至少一个放大器、调谐器、一个或多个振 荡器、用户身份模块(SIM, Subscriber Identity Module)卡、收发信机、稱合器、低噪声放 大器(LNA,Low Noise Amplifier)、双工器等。此外,RF电路401还可以通过无线通信与 网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于全球移 动通讯系统(GSM, Global System of Mobile communication)、通用分组无线服务(GPRS, General Packet Radio Service)、码分多址(CDMA,Code Division Multiple Access)、 宽带码分多址(WCDMA,Wideband Code Division Multiple Access)、长期演进(LTE,Long Term Evolution)、电子邮件、短消息服务(SMS,Short Messaging Service)等。
[0128] 存储器402可用于存储软件程序以及模块,处理器408通过运行存储在存储器 402的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器402可主要包括 存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程 序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端的使用所创建的 数据(比如音频数据、电话本等)等。此外,存储器402可以包括高速随机存取存储器,还可 以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器 件。相应地,存储器402还可以包括存储器控制器,以提供处理器408和输入单元403对存 储器402的访问。
[0129] 输入单元403可用于接收输入的数字或字符信息,以及产生与用户设置以及功能 控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,在一个具体的实施例 中,输入单元403可包括触敏表面以及其他输入设备。触敏表面,也称为触摸显示屏或者触 控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或 附件在触敏表面上或在触敏表面附近的操作),并根据预先设定的程式驱动相应的连接装 置。可选的,触敏表面可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检 测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从 触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器408,并能接收处理 器408发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多 种类型实现触敏表面。除了触敏表面,输入单元403还可以包括其他输入设备。具体地, 其他输入设备可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹 球、鼠标、操作杆等中的一种或多种。
[0130] 显示单元404可用于显示由用户输入的信息或提供给用户的信息以及终端的 各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构 成。显示单元404可包括显示面板,可选的,可以采用液晶显示器(IXD,Liquid Crystal Display)、有机发光二极管(0LED,Organic Light-Emitting Diode)等形式来配置显示面 板。进一步的,触敏表面可覆盖显示面板,当触敏表面检测到在其上或附近的触摸操作后, 传送给处理器408以确定触摸事件的类型,随后处理器408根据触摸事件的类型在显示面 板上提供相应的视觉输出。虽然在图4中,触敏表面与显示面板是作为两个独立的部件来 实现输入和输入功能,但是在某些实施例中,可以将触敏表面与显示面板集成而实现输入 和输出功能。
[0131] 终端还可包括至少一种传感器405,比如光传感器、运动传感器以及其他传感器。 具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线 的明暗来调节显示面板的亮度,接近传感器可在终端移动到耳边时,关闭显示面板和/或 背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速 度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横坚屏切 换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端还可 配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
[0132] 音频电路406、扬声器,传声器可提供用户与终端之间的音频接口。音频电路406 可将接收到的音频数据转换后的电信号,传输到扬声器,由扬声器转换为声音信号输出;另 一方面,传声器将收集的声音信号转换为电信号,由音频电路406接收后转换为音频数据, 再将音频数据输出处理器408处理后,经RF电路401以发送给比如另一终端,或者将音频 数据输出至存储器402以便进一步处理。音频电路406还可能包括耳塞插孔,以提供外设 耳机与终端的通信。
[0133] WiFi属于短距离无线传输技术,终端通过WiFi模块407可以帮助用户收发电子邮 件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图4示出了 WiFi模块407,但是可以理解的是,其并不属于终端的必须构成,完全可以根据需要在不改 变发明的本质的范围内而省略。
[0134] 处理器408是终端的控制中心,利用各种接口和线路连接整个手机的各个部分, 通过运行或执行存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402 内的数据,执行终端的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器408 可包括一个或多个处理核心;优选的,处理器408可集成应用处理器和调制解调处理器,其 中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线 通信。可以理解的是,上述调制解调处理器也可以不集成到处理器408中。
[0135] 终端还包括给各个部件供电的电源409 (比如电池),优选的,电源可以通过电源管 理系统与处理器408逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理 等功能。电源409还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检 测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
[0136] 尽管未示出,终端还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施 例中,终端中的处理器408会按照如下的指令,将一个或一个以上的应用程序的进程对应 的可执行文件加载到存储器402中,并由处理器408来运行存储在存储器402中的应用程 序,从而实现各种功能:
[0137] 尽管未示出,终端还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施 例中,终端的显示单元是触摸屏显示器,终端还包括有存储器,以及一个或者一个以上的程 序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器 执行述一个或者一个以上程序包含用于进行以下操作的指令:
[0138] 检测到浏览器发起弹窗请求时,调用钩子函数,利用该钩子函数确定所述弹窗请 求是否为用户主动发起的请求,若是,则根据该弹窗请求进行弹窗操作;若否,则根据预置 规则拦截该弹窗请求。
[0139] 其中,实现弹窗的方式一般有两种情况,一种是直接通过调用弹窗函数来实现,另 一种是调用某些本身可以实现打开链接地址功能的ActiveX控件来实现,S卩,检测到浏览 器发起弹窗请求时,调用钩子函数,具体可以包括:
[0140] 检测到浏览器调用指定的弹窗函数来打开链接地址时,调用钩子函数;或者,
[0141] 检测到浏览器调用ActiveX控件以弹窗形式来打开链接地址时,调用钩子函数。
[0142] 其中,该指定的弹窗函数具体可以为"window. open"、"window. showModalDialog" 和 / 或"window. showModelessDialog"等等。而 ActiveX 控件则具体可以为"Windows API ShellExecuteEx,' 等。
[0143] 可选的,其中,利用调用的钩子函数确定该弹窗请求是否为用户主动发起的请求, 可以包括:
[0144] 利用所述钩子函数确定所述链接地址是否为用户主动发起的请求。
[0145] 其中,该预置规则可以包括拦截模式和拦截规则。拦截模式可以包括强力拦截模 式和精准拦截模式,在强力拦截模式下,可以对弹窗请求直接进行拦截,而在精准拦截模式 下,则只有在该弹窗请求符合预置的拦截规则时,才对其进行拦截。即,步骤"根据预置规则 拦截所述弹窗请求"可以包括:
[0146] 确定当前的拦截模式和拦截规则;
[0147] 若当前的拦截模式为强力拦截模式,则拦截该弹窗请求;
[0148] 若当前的拦截模式为精准拦截模式,则确定该弹窗请求是否符合拦截规则,若符 合拦截规则,则拦截该弹窗请求,若不符合拦截规则,则根据该弹窗请求进行弹窗操作。
[0149] 其中,拦截规则可以根据实际应用的需求进行设置,比如,如果需要拦截的是弹窗 广告,则可以设置一个弹窗广告规则库,用于保存各种弹窗广告的规则(比如各种弹窗链 接),如果弹窗请求符合这些规则,就表明该弹窗请求为弹窗广告,所以,此时需要对该弹窗 请求进行拦截。即,步骤"确定该弹窗请求是否符合拦截规则,若符合拦截规则,则拦截该弹 窗请求,若不符合拦截规则,则根据该弹窗请求进行弹窗操作"具体可以如下:
[0150] 根据拦截规则确定所述弹窗请求是否为弹窗广告链接;若是,则拦截所述弹窗请 求;若否,则根据所述弹窗请求进行弹窗操作。
[0151] 其中,根据所述弹窗请求进行弹窗操作具体可以如下:
[0152] 具体可以允许浏览器调用指定的弹窗函数,比如"window, open"、"window. showModalDialog" 和 / 或 "window. showModelessDialog" 等来打开链接地址,或者, 允许浏览器调用ActiveX控件以弹窗形式来打开链接地址,比如调用"Windows API Shel lExecuteEx "通过默认浏览器来打开链接地址,等等。
[0153] 此外,可选的,为了提高用户体验质量,还可以将拦截结果和拦截的详细信息通知 给用户。即在步骤"拦截所述弹窗请求"之后,该浏览器中弹窗的拦截方法还可以包括:
[0154] 通知用户拦截结果和拦截的详细信息。
[0155] 由上可知,本实施例采用在检测到浏览器发起弹窗请求时,调用钩子函数,然后利 用改钩子函数确定该弹窗请求是否为用户主动发起的请求,若为用户主动发起的请求,则 进行弹窗操作,否则,则根据预置规则拦截该弹窗请求;由于钩子函数可以适用于所有的浏 览器,因此,该方案兼容性较好,不会存在兼容性问题,无需特意为不同的浏览器开发特定 的弹窗拦截插件,不仅无需后期维护,而且开发量较小,实现简单灵活。
[0156] 本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可 以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存 储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM, Random Access Memory)、磁盘或光盘等。
[0157] 以上对本发明实施例所提供的一种浏览器中弹窗的拦截方法、装置和系统进行了 详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的 说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本 发明的思想,在【具体实施方式】及应用范围上均会有改变之处,综上所述,本说明书内容不应 理解为对本发明的限制。
【权利要求】
1. 一种浏览器中弹窗的拦截方法,其特征在于,包括: 检测到浏览器发起弹窗请求时,调用钩子函数; 利用所述钩子函数确定所述弹窗请求是否为用户主动发起的请求; 若是,则根据所述弹窗请求进行弹窗操作; 若否,则根据预置规则拦截所述弹窗请求。
2. 根据权利要求1所述的方法,其特征在于,所述检测到浏览器发起弹窗请求时,调用 钩子函数,包括: 检测到浏览器调用指定的弹窗函数来打开链接地址时,调用钩子函数;或者, 检测到浏览器调用ActiveX控件以弹窗形式来打开链接地址时,调用钩子函数。
3. 根据权利要求2所述的方法,其特征在于,所述利用所述钩子函数确定所述弹窗请 求是否为用户主动发起的请求,包括: 利用所述钩子函数确定所述链接地址是否为用户主动发起的请求。
4. 根据权利要求1至3任一项所述的方法,其特征在于,所述预置规则包括拦截模式和 拦截规则,则所述根据预置规则拦截所述弹窗请求,包括 : 确定当前的拦截模式和拦截规则; 若当前的拦截模式为强力拦截模式,则拦截所述弹窗请求; 若当前的拦截模式为精准拦截模式,则确定所述弹窗请求是否符合拦截规则,若符合 拦截规则,则拦截所述弹窗请求,若不符合拦截规则,则根据所述弹窗请求进行弹窗操作。
5. 根据权利要求4所述的方法,其特征在于,所述确定所述弹窗请求是否符合拦截规 贝1J,若符合拦截规则,则拦截所述弹窗请求,若不符合拦截规则,则根据所述弹窗请求进行 弹窗操作,包括: 根据拦截规则确定所述弹窗请求是否为弹窗广告链接; 若是,则拦截所述弹窗请求; 若否,则根据所述弹窗请求进行弹窗操作。
6. 根据权利要求4所述的方法,其特征在于,所述拦截所述弹窗请求之后,还包括: 通知用户拦截结果和拦截的详细信息。
7. -种浏览器中弹窗的拦截装置,其特征在于,包括: 检测单元,用于检测到浏览器发起弹窗请求时,调用钩子函数; 判断单元,用于利用所述钩子函数确定所述弹窗请求是否为用户主动发起的请求; 第一处理单元,用于在判断单元确定所述弹窗请求为用户主动发起的请求时,根据所 述弹窗请求进行弹窗操作; 第二处理单元,用于在判断单元确定所述弹窗请求不是用户主动发起的请求时,根据 预置规则拦截所述弹窗请求。
8. 根据权利要求7所述的浏览器中弹窗的拦截装置,其特征在于, 所述检测单元,具体用于检测到浏览器调用指定的弹窗函数来打开链接地址时,调用 钩子函数;或者,检测到浏览器调用ActiveX控件以弹窗形式来打开链接地址时,调用钩子 函数。
9. 根据权利要求8所述的浏览器中弹窗的拦截装置,其特征在于, 所述判断单元,具体用于利用所述钩子函数确定所述链接地址是否为用户主动发起的 请求。
10. 根据权利要求7至9任一项所述的浏览器中弹窗的拦截装置,其特征在于,所述预 置规则包括拦截模式和拦截规则,则: 所述第二处理单元,具体用于确定当前的拦截模式和拦截规则;若当前的拦截模式为 强力拦截模式,则拦截所述弹窗请求;若当前的拦截模式为精准拦截模式,则确定所述弹窗 请求是否符合拦截规则,若符合拦截规则,则拦截所述弹窗请求,若不符合拦截规则,则根 据所述弹窗请求进行弹窗操作。
11. 根据权利要求10所述的浏览器中弹窗的拦截装置,其特征在于, 所述第二处理单元,具体用于确定当前的拦截模式和拦截规则;若当前的拦截模式为 强力拦截模式,则拦截所述弹窗请求;若当前的拦截模式为精准拦截模式,则根据拦截规则 确定所述弹窗请求是否为弹窗广告链接,若为弹窗广告链接,则拦截所述弹窗请求;若不是 弹窗广告链接,则根据所述弹窗请求进行弹窗操作。
12. 根据权利要求7至9任一项所述的浏览器中弹窗的拦截装置,其特征在于,还包括 通知单元; 通知单元,用于通知用户拦截结果和拦截的详细信息。
13. -种通信系统,其特征在于,包括权利要求7至12任一项所述的浏览器中弹窗的拦 截装置。
【文档编号】G06F17/30GK104123276SQ201310141901
【公开日】2014年10月29日 申请日期:2013年4月23日 优先权日:2013年4月23日
【发明者】童磊 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1