CN109842617B - 广告拦截方法、装置和存储介质 - Google Patents
广告拦截方法、装置和存储介质 Download PDFInfo
- Publication number
- CN109842617B CN109842617B CN201910004209.8A CN201910004209A CN109842617B CN 109842617 B CN109842617 B CN 109842617B CN 201910004209 A CN201910004209 A CN 201910004209A CN 109842617 B CN109842617 B CN 109842617B
- Authority
- CN
- China
- Prior art keywords
- data
- network
- advertisement
- proxy server
- local proxy
- 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.)
- Active
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请涉及监控领域,提供了一种广告拦截方法、装置和存储介质。方法包括获取广告拦截关联数据,根据广告拦截关联数据生成对应的广告拦截规则,并将广告拦截规则保存至预设文件中;开启本地代理服务器,通过本地代理服务器建立虚拟专用网络,通过虚拟专用网络截获网络数据,网络数据包括业务服务器接收的网络请求数据和业务服务器发送的网络响应数据;本地服务器根据广告拦截规则对网络请求数据和网络响应数据进行筛选,拦截符合广告拦截规则的广告网络数据,将广告网络数据从网络数据中过滤。根据广告拦截规则对截获的网络数据进行修改和重置,能够起到节约的流量资源,从而提升运行速度的作用。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种广告拦截方法、装置和存储介质。
背景技术
目前随着智能手机、平板等电子设备的普及,各种依托于电子设备的应用市场发展迅速,伴随而来的是大量充斥着各种广告的应用。
用户使用电子设备时,各种的视频类应用、小说类应用、游戏类应用和浏览器类应用等,通常都含有各种各样的推送广告,严重浪费了电子设备的流量资源,还会占用内存,使得电子设备运行缓慢。
发明内容
基于此,有必要针对上述问题,提供一种能够节约电子设备流量资源并提升运行速度的广告拦截方法、装置和存储介质。
一种广告拦截方法,所述方法包括:
获取广告拦截关联数据,根据所述广告拦截关联数据生成对应的广告拦截规则,并将所述广告拦截规则保存至预设文件中;
开启本地代理服务器,以使所述本地代理服务器建立虚拟专用网络,通过所述虚拟专用网络截获网络数据,所述网络数据包括所述业务服务器接收的网络请求数据和所述业务服务器发送的网络响应数据,根据所述广告拦截规则对所述网络请求数据和所述网络响应数据进行筛选,拦截符合广告拦截规则的广告网络数据,将所述广告网络数据从所述网络数据中过滤。
在其中一个实施例中,所述广告拦截关联数据包括网络类数据、用户类数据和服务器类数据中的至少一种数据,获取广告拦截关联数据包括:
从所述业务服务器上下载广告URL地址数据得到所述网络类数据;和/或
向所述业务服务器发送网络数据请求,所述网络数据请求携带用户标识;
获取所述用户标识,根据所述用户标识确定对应的用户级别,根据所述用户级别得到所述用户类数据;和/或
识别所述业务服务器的当前类型,当所述当前类型符合预设条件时,获取所述业务服务器的信息得到所述服务器类数据。
在其中一个实施例中,所述并将所述广告拦截规则保存至预设文件中步骤之后,还包括:
调用iOS系统的网络扩展框架;
调用网络扩展框架中的通道提供方法扩展核心网络层;
通过调用网络扩展框架中的通道管理方法建立与所述本地代理服务器的联系;
开启拦截服务。
在其中一个实施例中,开启本地代理服务器包括:
开启第一子线程、第二子线程和第三子线程;
在所述第一子线程中开启第一本地代理服务器,所述第一本地代理服务器用于截获HTTP数据;
在所述第二子线程中开启第二本地代理服务器,所述第一本地代理服务器用于截获SOCKS数据;
在所述第三子线程中转发各个应用的网络数据至所述本地代理服务器,所述本地代理服务器包括所述第一本地代理服务器和所述第二本地代理服务器。
在其中一个实施例中,所述拦截符合广告拦截规则的网络数据包括:
通过所述本地代理服务器根据所述广告拦截规则从所述网络数据中获取所述符合拦截规则的网络数据,作为目标网络数据;
通过所述本地代理服务器将所述目标网络数据从所述网络数据中删除,得到处理后的网络数据。
在其中一个实施例中,所述拦截符合广告拦截规则的网络数据包括:
通过所述本地代理服务器根据所述广告拦截规则将所述网络数据分为需拦截的网络数据和待转发的网络数据,将所述需拦截的网络数据作为所述目标网络数据,所述待转发的网络数据作为所述处理后的网络数据;
通过所述本地代理服务器获取与所述目标网络数据对应的预设响应数据;
所述方法还包括:
接收所述本地代理服务器返回的预设响应数据。
在一个实施例中,所述方法还包括:
获取更新的广告拦截关联数据;
根据所述更新的广告拦截关联数据生成对应的更新的广告拦截规则,并将所述更新的广告拦截规则存储在本地沙盒文件中。
一种广告拦截装置,所述装置包括:
规则生成模块,用于获取广告拦截关联数据,根据所述广告拦截关联数据生成对应的广告拦截规则,并将所述广告拦截规则保存至预设文件中;
数据截获模块,开启本地代理服务器,以使所述本地代理服务器建立虚拟专用网络,通过所述虚拟专用网络截获网络数据,所述网络数据包括所述业务服务器接收的网络请求数据和所述业务服务器发送的网络响应数据,根据所述广告拦截规则对所述网络请求数据和所述网络响应数据进行筛选,拦截符合广告拦截规则的广告网络数据,将所述广告网络数据从所述网络数据中过滤。
数据拦截模块,用于所述本地服务器根据所述广告拦截规则对所述网络请求数据和所述网络响应数据进行筛选,拦截符合广告拦截规则的广告网络数据,将所述广告网络数据从所述网络数据中过滤。
在一个实施例中,装置还包括:
框架调用模块,用于调用iOS系统的网络扩展框架;
网络扩展模块,用于调用网络扩展框架中的通道提供方法扩展核心网络层;
联系建立模块,用于通过调用网络扩展框架中的通道管理方法建立与所述本地代理服务器的联系;
拦截开启模块,用于开启拦截服务。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取广告拦截关联数据,根据所述广告拦截关联数据生成对应的广告拦截规则,并将所述广告拦截规则保存至预设文件中;
开启本地代理服务器,以使所述本地代理服务器建立虚拟专用网络,通过所述虚拟专用网络截获网络数据,所述网络数据包括所述业务服务器接收的网络请求数据和所述业务服务器发送的网络响应数据,根据所述广告拦截规则对所述网络请求数据和所述网络响应数据进行筛选,拦截符合广告拦截规则的广告网络数据,将所述广告网络数据从所述网络数据中过滤。
上述广告拦截方法、装置和存储介质,根据终端在与业务服务器交互时,获取的广告拦截关联数据生成广告拦截规则,并保存至预设文件中,终端开启本地代理服务器,并通过本地代理服务器建立虚拟专用网络,通过建立的虚拟专用网络截获由终端发送至业务服务器的网络请求数据和业务服务器向终端发送的网络响应数据共同组成的网络数据,本地代理服务器再通过虚拟专用网络获取保存在预设文件中的广告拦截规则对截获的网络数据进行拦截,并将符合广告拦截规则的广告网络数据从网络数据中过滤出去,能够节约终端的流量资源,从而提升终端的运行速度。
附图说明
图1为一个实施例中广告拦截方法的应用场景图;
图2为一个实施例中广告拦截方法的流程示意图;
图3为一个实施例中获取广告拦截关联数据的流程示意图;
图4为一个实施例中开启本地代理服务器的流程示意图;
图5为一个实施例中拦截符合广告拦截规则的网络数据步骤的流程示意图;
图6为另一个实施例中拦截符合广告拦截规则的网络数据步骤的流程示意图;
图7为一个实施例中广告拦截装置的结构框图;
图8为一个实施例中广告拦截装置的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的支付方法,可以应用于如图1所示的应用环境中。图1为一个实施例中支付方法运行的应用环境图。如图1所示,该应用环境包括终端110、业务服务器120、本地代理服务器130。终端、各个服务器之间通过网络进行通信,通信网络可以是无线或者有线通信网络,例如IP网络、蜂窝移动通信网络等,其中终端和服务器的个数不限。
其中,终端110可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。业务服务器120是指提供业务支持的服务器,如商家服务器,不同的商家具有不同的业务服务器。终端110在与业务服务器120交互时,获取广告拦截关联数据,广告拦截关联数据包括网络类数据、用户类数据和服务器类数据中的至少一种数据。终端110根据获取的广告拦截关联数据生成对应的广告拦截规则,再将生成的广告拦截规则存储至预设的文件中。终端110开启本地代理服务器130,本地代理服务器130建立虚拟专用网络。本地代理服务器130通过虚拟专用网络截获网络数据,这里截获的网络数据包括终端110发送给业务服务器120的网络请求数据,和业务服务器120向终端110发送的网络响应数据。本地代理服务器130还会获取终端110保存在预设文件中的广告拦截规则。本地代理服务器130根据广告拦截规则对截获的网络数据进行筛选,拦截符合广告拦截规则的广告网络数据,并将拦截的广告网络数据从网络数据中过滤。本地代理服务器130在拦截符合广告拦截规则的广告网络数据时,针对网络类数据,本地代理服务器直接删除;针对用户类数据和服务器类数据,则是本地代理服务器130从业务服务器120上获取与该类广告网络数据相对应的预设响应数据,并将该预设响应数据返回给此类广告网络数据的来源终端,即终端110。本地代理服务器130将过滤了广告网络数据的网络数据转发给对应的业务服务器120。该广告拦截方法、装置和存储介质可以应用于用户在使用电子设备时拦截广告,能够节约终端的流量资源,从而提升终端的运行速度。
在一个实施例中,如图2所示,提供了一种广告拦截方法,以该方法应用于图1中的终端为例进行说明,包括以下步骤:
步骤210,获取广告拦截关联数据,根据广告拦截关联数据生成对应的广告拦截规则,并将广告拦截规则保存至预设文件中。
其中,广告拦截关联数据包括网络类数据、用户类数据和服务器类数据,网络类数据包括广告URL地址数据,用户类数据包括用户的身份验证方式数据、用户凭据的来源数据、广告网络请求的操作数据,服务器类数据包括业务服务器的版本数据、连接端口数据。
具体地,现有的广告包括视频观看时的视频广告、浏览小说和网页时的开屏广告、玩游戏时出现的横屏广告等,其中广告还包括各种咨询推送、天气信息、新闻弹窗等。终端会通过服务器提前获取各种广告拦截数据,其中,终端会在与业务服务器进行交互时,获取广告拦截数据,其中包括网络类数据、用户类数据和服务器类数据。终端根据获取的广告拦截数据生成相应的广告拦截规则,并将广告拦截规则保存到预设文件中,这里的预设文件指的是沙盒文件,沙盒文件体现安全、保密。广告拦截规则会被包装成一个NSDictionary保存到沙盒文件中,NSDictionary是IOS系统中的一个存储数据类,又称为字典,它通过一个标识,就能找到对应的值,且其是不可变的,一旦初始化完毕,里面的内容就无法修改,从而保证了广告拦截规则不被篡改。
步骤220,开启本地代理服务器,以使本地代理服务器建立虚拟专用网络,通过虚拟专用网络截获网络数据,网络数据包括业务服务器接收的网络请求数据和业务服务器发送的网络响应数据,根据广告拦截规则对网络请求数据和网络响应数据进行筛选,拦截符合广告拦截规则的广告网络数据,将广告网络数据从网络数据中过滤。
其中,虚拟专用网络,又称VPN,是一种常用于连接中、大型企业或团体与团体间的私人网络的通讯方法。这里截获的网络数据包括浏览网页的网络请求、打开应用的网络请求、发送邮件的网络请求、业务服务器发送网络响应数据等。
具体地,本地代理服务器通过虚拟专用网络与业务服务器和终端相连接。终端调用iOS系统的网络扩展框架,并调用网络扩展框架中的通道提供方法,开启三个子线程,在第一子线程中开启一个不进行网页缓存且自带过滤功能的第一本地代理服务器,监听终端一个任意端口,监听完成之后将端口保存起来,此第一本地代理服务器监听的是HTTP协议类型的数据;在第二子线程上开启一个第二本地代理服务器,第二本地代理服务器监听的是SOCKS协议类型的数据,此第二本地代理服务器将终端一个任意端口与业务服务器端口连接起来,并将端口保存起来。其中,本地代理服务器包括第一本地代理服务器和第二本地代理服务器。第三子线程中转发终端上各个应用的网络数据,和业务服务器发送给终端的所有数据,只有第三子线程中转发了终端上各个应用的网络数据和业务服务器发送给终端的所有数据,第一本地代理服务器和第二本地代理服务器才能监听并截获对应的网络数据。第一本地代理服务器监听的数据处于网络层,第一本地代理服务器截获的网络数据要转发给业务服务器的,需要通过Tun2socks包装成SOCKS协议类型的数据,再通过第二本地代理服务器返回给业务服务器。其中,Tun2socks是一种无需改动任何应用程序而完全透明地将数据用socks协议封装,转发给一个socks代理,然后由该代理程序负责与真实服务器之间转发应用数据的技术。再用第一本地代理服务器保存的端口开始虚拟专用网络的连接,才将本地代理服务器与终端和业务服务器连接起来。
其中,广告网络数据则是指的符合广告拦截规则的网络数据,该网络数据进行显示后即为广告,是需要拦截的。
具体地,本地代理服务器对截获到的网络数据进行解析,并根据广告拦截规则进行拦截,符合广告拦截规则的就表明对应的网络数据是由广告发出的,需要对其进行拦截,便对该网络数据进行修改和重置,从而起到拦截的效果。这里的网络数据不仅包括终端发送给业务服务器的网络请求数据,还包括业务服务器响应终端的网络请求而发送给终端的网络响应请求。当开启全局代理时,本地代理服务器直接将截获的网络数据发送给服务器,其中,全局代理是指对全部数据进行筛选,这里的网络数据是已经在本地代理服务器中处理之后,不在有广告网络数据的网络数据。
上述广告拦截方法中,根据终端在与业务服务器交互时,获取的广告拦截关联数据生成广告拦截规则,并保存至预设文件中,终端开启本地代理服务器,并通过本地代理服务器建立虚拟专用网络,通过建立的虚拟专用网络截获由终端发送至业务服务器的网络请求数据和业务服务器向终端发送的网络响应数据共同组成的网络数据,本地代理服务器再通过虚拟专用网络获取保存在预设文件中的广告拦截规则对截获的网络数据进行拦截,并将符合广告拦截规则的广告网络数据从网络数据中过滤出去,从而起到节约资源的作用。
在一个实施例中,步骤210包括:
步骤212,从业务服务器上下载广告URL地址数据得到网络类数据。
具体地,网络类数据中包括广告URL地址数据,而网络类数据属于广告拦截关联数据中的一种。广告URL地址数据是终端直接在业务服务器中可以下载的,终端发送一个广告URL地址数据的网络请求到业务服务器,业务服务器接收终端的网络请求后,返回相依的响应数据给终端,响应数据中含有各种广告的URL地址。
步骤214,向业务服务器发送网络数据请求,网络数据请求携带用户标识。
具体地,网络数据请求携带的用户标识是有级别之分的,例如终端中应用爱奇艺发送了网络数据请求,其中网络数据请求携带的用户标识即是该爱奇艺用户,用户标识的级别在此处即为会员用户和一般用户两种,会员用户的爱奇艺网络数据请求中并不含有广告的,而一般用户的爱奇艺网络数据请求是含有广告的。终端在向业务服务器发送网络数据请求时,携带的用户标识是可以区分该网络数据请求中是否含有广告网络数据。
步骤216,获取用户标识,根据用户标识确定对应的用户级别,根据用户级别得到用户类数据。
具体地,用户类数据包括用户的身份验证方式数据、用户凭据的来源数据、广告网络请求的操作数据,用户类数据属于广告拦截关联数据中的一种。终端获取网络数据请求中携带的用户标识,并根据用户标识确定对应的用户级别,这里确定的用户级别是含有广告网络数据的网络数据对应的用户级别。
步骤218,识别业务服务器的当前类型,当当前类型符合预设条件时,获取业务服务器的信息得到服务器类数据。
其中,当前类型符合预设条件是指的该服务器的类型为发送广告的服务器。服务器类数据包括业务服务器的版本数据、连接端口数据,而服务器类数据属于广告拦截关联数据中的一种。
具体地,终端识别业务服务器的类型,如果该服务器的类型为广告类型的业务服务器,即该业务服务器响应网络数据请求而发送给终端的网络数据中只含有广告网络数据,终端就根据该业务服务器的相应信息得到广告拦截关联数据中的服务器类数据。
在一个实施例中,并将广告拦截规则保存至预设文件中之后,还包括:调用iOS系统的网络扩展框架;调用网络扩展框架中的通道提供方法扩展核心网络层;通过调用网络扩展框架中的通道管理方法建立与本地代理服务器的联系;开启拦截服务。
其中,IOS系统是由苹果公司开发的移动操作系统。网络扩展框架,即NetworkExtension,可以帮助配置通道,自定义和拓展核心网络功能。通道提供方法,即NEPacketTunnelProvider,是网络扩展框架中的一个API,可以扩展核心网络层,从而实现非标准化的私密技术,API,Application Programming Interface,即应用程序编程接口,是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。通道管理方法,即NETunnelProviderManager,也是网络扩展框架中的一个API,可以扩展核心网络层,从而实现非标准化的私密技术。
具体地,终端选择iOS系统中的网络扩展框架。终端通过调用网络扩展框架中的通道管理方法建立终端与本地代理服务器的联系,本地代理服务器可以基于此联系获取终端存储在预设文件中广告拦截规则。终端在调用网络扩展框架中的管理方法之后,自动开启了拦截功能。
在一个实施例中,开启本地代理服务器包括:
步骤222,开启第一子线程、第二子线程和第三子线程。
具体地,子线程,与主线程相对,都是程序中独立运行的程序片段,是指软件或硬件上实现和主线程并发执行的技术,进而提升整体处理性能。终端同时开启第一子线程、第二子线程和第三子线程三个子线程。
步骤224,在第一子线程中开启第一本地代理服务器,第一本地代理服务器用于截获HTTP数据。
其中,HTTP,是Hyper Text Transfer Protocol的缩写,又称超文本传输协议,是互联网上应用最为广泛的一种网络协议。HTTP数据为网络传输协议为HTTP类型的网络数据。
具体地,开启的第一本地代理服务器为privoxy的代理服务器,工作在建立起的虚拟专用网络上。Privoxy是一款不进行网页缓存且自带过滤功能的代理服务器,针对HTTP、HTTPS协议。Privoxy可以实现如下功能:一是根据定制的规则,进行代理转发;二是根据定制的规则,修改HTTP页面的内容;三是根据定制的规则,修改HTTP Header的字段。其中,HTTP Header是指的服务器以HTTP协议传超文本标记语言资料到浏览器前所送出的字串。
步骤226,在第二子线程中开启第二本地代理服务器,第一本地代理服务器用于截获SOCKS数据。
其中,SOCKS是SOCKetS的缩写,SOCKS是一种网络传输协议,主要用于客户端与外网服务器之间通讯的中间传递。SOCKS数据为网络传输协议为SOCKS类型的网络数据。
具体地,第二子线程开启的第二本地代理服务截获SOCKS数据用于根据广告拦截规则进行处理,开启的第二本地代理服务器为支持SOCKS的代理服务器。
步骤228,在第三子线程中转发各个应用的网络数据至本地代理服务器,本地代理服务器包括第一本地代理服务器和第二本地代理服务器。
具体地,第三子线程转发各个应用的网络数据是为了保证本地代理服务器能够截获所有的网络数据,并对之做出处理。且转发各个应用的网络数据至代理服务器的步骤与前面截获SOCKS数据和HTTP数据是同时进行的。
在一个实施例中,如图5所示,步骤220包括:
步骤222A,本地代理服务器根据广告拦截规则从网络数据中获取符合广告拦截规则的网络数据,作为目标网络数据。
具体地,目标网络数据就是指的广告网络数据。本地代理服务器会根据广告拦截规则拦截符合规则的网络数据,剩下的网络数据作为处理后的网络数据。例如,本地代理服务器截获了应用爱奇艺的网络请求数据,其中包括视频部分的网络请求数据和广告部分的网络请求数据,而广告部分的网络请求数据符合广告拦截规则,则会被本地代理服务器拦截下来,作为目标网络数据。再例如,本地代理服务器截获了网页浏览对应的业务服务器发送给终端的网络响应数据,其中包括网页页面的网络响应数据和广告部分的网络响应数据,而广告部分的网络响应数据符合广告拦截规则,广告部分的网络响应数据就会被本地代理服务器拦截下来,并作为目标网络数据。
步骤224A,本地代理服务器将目标网络数据从网络数据中删除,得到处理后的网络数据。
具体地,处理后的网络数据中不存在广告网络数据。本地代理服务器直接将广告网络数据从网络数据中删除,将得到的处理后的网络数据发送给相应的业务服务器或者终端。而能够直接删除的广告网络数据都是根据网络类数据形成的广告拦截规则。例如,本地代理服务器截获了应用爱奇艺的网络请求数据,而该网络请求数据中包括视频部分的网络请求数据和广告部分的网络请求数据,本地代理服务器通过虚拟专用网络获取终端保存在预设文件中的广告拦截规则,并根据广告拦截规则对网络请求数据进行筛选,从而拦截广告部分的网络请求数据,因为这里的广告拦截规则是根据广告URL地址得到的网络类数据而生成的规则,所以本地代理服务器可以直接将该广告部分的网络请求数据删除。而剩下的视频部分的网络请求数据,本地代理服务器会直接转发送给对应的业务服务器。
在本实施例中,通过删除符合广告拦截规则的网络数据,从而加快了拦截广告网络数据的速度。
在一个实施例中,如图6所示,步骤220包括:
步骤222B,本地代理服务器根据广告拦截规则将网络数据分为需拦截的网络数据和待转发的网络数据,将需拦截的网络数据作为目标网络数据,待转发的网络数据作为处理后的网络数据。
具体地,本地代理服务器会将截获的网络数据根据广告拦截规则分为两部分,把符合广告拦截规则的网络数据作为目标网络数据,带转发的网络数据作为处理后的网络数据。
步骤224B,本地代理服务器获取与目标网络数据对应的预设响应数据;
具体地,预设响应数据包括针对终端发送的网络数据有未请求到数据、网络连接失败或者数据请求失败等;和针对业务服务器发送的网络数据有无法显示、已接收数据或者发送失败等。
步骤226B,接收本地代理服务器返回的预设响应数据。
具体地,本地代理服务器根据广告拦截规则拦截广告网络数据,并直接返回预设响应数据给该广告网络数据,使得该广告网络数据无法送达服务器或者终端,从而实现拦截广告效果。例如,终端发送了网页页面浏览的网络请求数据,而该网络请求数据中包括网页部分的网络请求数据和广告部分的网络请求数据,本地代理服务器通过虚拟专用网络获取终端保存在预设文件中的广告拦截规则,并根据广告拦截规则对网络请求数据进行筛选,从而拦截广告部分的网络请求数据,因为这里的广告拦截规则是根据用户类数据或者服务器类数据生成的规则,无法直接读取广告的地址进行删除,只能针对该广告部分的网络请求数据返回预设的未请求到数据,使得该广告网路请求数据根本无法送达业务服务器,剩下的网页部分的网络请求数据则由本地代理服务器转发给相应的业务服务器,从而实现拦截广告的效果。再例如,业务服务器发送了视频播放的网络相应数据,而该网络响应数据中包括视频部分的网络响应数据和广告部分的网络响应数据,本地代理服务器通过虚拟专用网络获取终端保存在预设文件中的广告拦截规则,并根据广告拦截规则对网络响应数据进行筛选,从而拦截广告部分的网络响应数据,因为这里的广告拦截规则是根据用户类数据或者服务器类数据生成的规则,无法直接读取广告的地址进行删除,只能针对该广告部分的网络响应数据返回预设的已接收数据,使得该广告网路响应数据根本无法送达终端,剩下的视频部分的网络响应数据则由本地代理服务器转发给相应的终端处,从而实现拦截广告的效果。
在本实施例中,通过处理符合由用户类数据和服务器类数据生成的广告拦截规则的网络数据,从而扩大了广告网络数据的拦截范围。
在一个实施例中,方法还包括:获取更新的广告拦截关联数据;根据更新的广告拦截关联数据生成对应的更新的广告拦截规则,并将更新的广告拦截规则存储在本地沙盒文件中。
具体地,随着互联网的发展,会出现各种各样新类型的广告,终端需要定期的在与业务服务器交互时,获取更新的广告拦截关联数据,终端将更新的广告拦截关联数据生成对应的更新的广告拦截规则,将更新的广告拦截规则存储在本地沙盒文件中,可以保证更新的广告拦截规则不被篡改。
在本实施例中,通过定期更新广告拦截规则,从而确保最佳拦截效果。
应该理解的是,虽然图2-6的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-6中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图7所示,提供了一种广告拦截装置,包括:规则生成模块310和数据拦截模块320,其中:
规则生成模块310,用于获取广告拦截关联数据,根据广告拦截关联数据生成对应的广告拦截规则,并将广告拦截规则保存至预设文件中。
数据拦截模块320,用于开启本地代理服务器,以使本地代理服务器建立虚拟专用网络,通过虚拟专用网络截获网络数据,网络数据包括业务服务器接收的网络请求数据和业务服务器发送的网络响应数据,根据广告拦截规则对网络请求数据和网络响应数据进行筛选,拦截符合广告拦截规则的广告网络数据,将广告网络数据从网络数据中过滤。
在一个实施例中,规则生成模块310包括:
网络数据单元,用于从业务服务器上下载广告URL地址数据得到网络类数据。
请求发送单元,用于向业务服务器发送网络数据请求,网络数据请求携带用户标识。
用户数据单元,用于获取用户标识,根据用户标识确定对应的用户级别,根据用户级别得到用户类数据。
服务器数据单元,用于识别业务服务器的当前类型,当当前类型符合预设条件时,获取业务服务器的信息得到服务器类数据。
在一个实施例中,如图8所示,装置还包括:
框架调用模块410,用于调用iOS系统的网络扩展框架。
网络扩展模块420,用于调用网络扩展框架中的通道提供方法扩展核心网络层。
联系建立模块430,用于通过调用网络扩展框架中的通道管理方法建立与本地代理服务器的联系。
拦截开启模块440,用于开启拦截服务。
在一个实施例中,数据拦截模块320包括:
线程开启单元,用于开启第一子线程、第二子线程和第三子线程。
第一线程单元,用于在第一子线程中开启第一本地代理服务器,第一本地代理服务器用于截获HTTP数据。
第二线程单元,用于在第二子线程中开启第二本地代理服务器,第一本地代理服务器用于截获SOCKS数据。
第三线程单元,用于在第三子线程中转发各个应用的网络数据至本地代理服务器,本地代理服务器包括第一本地代理服务器和第二本地代理服务器。
在一个实施例中,数据拦截模块320包括:
目标数据单元,用于本地代理服务器根据广告拦截规则从网络数据中获取符合广告拦截规则的网络数据,作为目标网络数据。
网络数据单元,用于本地代理服务器将目标网络数据从网络数据中删除,得到处理后的网络数据。
在一个实施例中,数据拦截模块320还包括:
数据分类单元,用于本地代理服务器根据广告拦截规则将网络数据分为需拦截的网络数据和待转发的网络数据,将需拦截的网络数据作为目标网络数据,待转发的网络数据作为处理后的网络数据。
响应获取单元,用于本地代理服务器获取与目标网络数据对应的预设响应数据。
数据返回单元,用于接收本地代理服务器返回的预设响应数据。
在一个实施例中,装置还包括:
数据更新模块,用于获取更新的广告拦截关联数据;
规则更新模块,用于根据更新的广告拦截关联数据生成对应的更新的广告拦截规则,并将更新的广告拦截规则存储在本地沙盒文件中。
关于广告拦截装置的具体限定可以参见上文中对于广告拦截方法的限定,在此不再赘述。上述广告拦截装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取广告拦截关联数据,根据广告拦截关联数据生成对应的广告拦截规则,并将广告拦截规则保存至预设文件中;开启本地代理服务器,通过本地代理服务器建立虚拟专用网络,通过虚拟专用网络截获网络数据,网络数据包括业务服务器接收的网络请求数据和业务服务器发送的网络响应数据;本地服务器根据广告拦截规则对网络请求数据和网络响应数据进行筛选,拦截符合广告拦截规则的广告网络数据,将广告网络数据从网络数据中过滤。
在一个实施例中,广告拦截关联数据包括网络类数据、用户类数据和服务器类数据中的至少一种数据,获取广告拦截关联数据包括:从业务服务器上下载广告URL地址数据得到网络类数据;向业务服务器发送网络数据请求,网络数据请求携带用户标识;获取用户标识,根据用户标识确定对应的用户级别,根据用户级别得到用户类数据;识别业务服务器的当前类型,当当前类型符合预设条件时,获取业务服务器的信息得到服务器类数据。
在一个实施例中,并将广告拦截规则保存至预设文件中之后,还包括:调用iOS系统的网络扩展框架;调用网络扩展框架中的通道提供方法扩展核心网络层;通过调用网络扩展框架中的通道管理方法建立与本地代理服务器的联系;开启拦截服务。
在一个实施例中,开启本地代理服务器,计算机程序被处理器执行时还实现以下步骤:开启第一子线程、第二子线程和第三子线程;在第一子线程中开启第一本地代理服务器,第一本地代理服务器用于截获HTTP数据;在第二子线程中开启第二本地代理服务器,第一本地代理服务器用于截获SOCKS数据;在第三子线程中转发各个应用的网络数据至本地代理服务器,本地代理服务器包括第一本地代理服务器和第二本地代理服务器。
在一个实施例中,拦截符合广告拦截规则的网络数据,包括:本地代理服务器根据广告拦截规则从网络数据中获取符合广告拦截规则的网络数据,作为目标网络数据;本地代理服务器将目标网络数据从网络数据中删除,得到处理后的网络数据。
在一个实施例中,拦截符合广告拦截规则的网络数据,包括:通过本地代理服务器根据广告拦截规则将网络数据分为需拦截的网络数据和待转发的网络数据,将需拦截的网络数据作为目标网络数据,待转发的网络数据作为处理后的网络数据;通过本地代理服务器获取与目标网络数据对应的预设响应数据;接收本地代理服务器返回的预设响应数据。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取更新的广告拦截关联数据;根据更新的广告拦截关联数据生成对应的更新的广告拦截规则,并将更新的广告拦截规则存储在本地沙盒文件中。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种广告拦截方法,所述方法包括:
获取广告拦截关联数据,根据所述广告拦截关联数据生成对应的广告拦截规则,并将所述广告拦截规则保存至预设沙盒文件中;
开启本地代理服务器,以使所述本地代理服务器建立虚拟专用网络,通过所述虚拟专用网络截获网络数据并获取保存在预设沙盒文件中的广告拦截规则,所述网络数据包括业务服务器接收的网络请求数据和所述业务服务器发送的网络响应数据,根据所述广告拦截规则对所述网络请求数据和所述网络响应数据进行筛选,拦截符合广告拦截规则的广告网络数据,将所述广告网络数据从所述网络数据中过滤;
所述开启本地代理服务器包括:
开启第一子线程、第二子线程和第三子线程;
在所述第一子线程中开启第一本地代理服务器,所述第一本地代理服务器用于截获HTTP数据;
在所述第二子线程中开启第二本地代理服务器,所述第二本地代理服务器用于截获SOCKS数据;
在所述第三子线程中转发各个应用的网络数据至所述本地代理服务器,所述本地代理服务器包括所述第一本地代理服务器和所述第二本地代理服务器。
2.根据权利要求1所述的方法,其特征在于,所述广告拦截关联数据包括网络类数据、用户类数据和服务器类数据中的至少一种数据,获取广告拦截关联数据包括:
从所述业务服务器上下载广告URL地址数据得到所述网络类数据;和/或
向所述业务服务器发送网络数据请求,所述网络数据请求携带用户标识;
获取所述用户标识,根据所述用户标识确定对应的用户级别,根据所述用户级别得到所述用户类数据;和/或
识别所述业务服务器的当前类型,当所述当前类型符合预设条件时,获取所述业务服务器的信息得到所述服务器类数据。
3.根据权利要求1所述的方法,其特征在于,并将所述广告拦截规则保存至预设文件中步骤之后,还包括:
调用iOS系统的网络扩展框架;
调用网络扩展框架中的通道提供方法扩展核心网络层;
通过调用网络扩展框架中的通道管理方法建立与所述本地代理服务器的联系;
开启拦截服务。
4.根据权利要求1所述的方法,其特征在于,所述拦截符合广告拦截规则的网络数据包括:
通过所述本地代理服务器根据所述广告拦截规则从所述网络数据中获取所述符合广告拦截规则的网络数据,作为目标网络数据;
通过所述本地代理服务器将所述目标网络数据从所述网络数据中删除,得到处理后的网络数据。
5.根据权利要求4所述的方法,其特征在于,所述拦截符合广告拦截规则的网络数据包括:
通过所述本地代理服务器根据所述广告拦截规则将所述网络数据分为需拦截的网络数据和待转发的网络数据,将所述需拦截的网络数据作为所述目标网络数据,所述待转发的网络数据作为所述处理后的网络数据;
通过所述本地代理服务器获取与所述目标网络数据对应的预设响应数据;
所述方法还包括:
接收所述本地代理服务器返回的预设响应数据。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取更新的广告拦截关联数据;
根据所述更新的广告拦截关联数据生成对应的更新的广告拦截规则,并将所述更新的广告拦截规则存储在本地沙盒文件中。
7.一种广告拦截装置,其特征在于,所述装置包括:
规则生成模块,用于获取广告拦截关联数据,根据所述广告拦截关联数据生成对应的广告拦截规则,并将所述广告拦截规则保存至预设沙盒文件中;
数据拦截模块,用于开启本地代理服务器,以使所述本地代理服务器建立虚拟专用网络,通过所述虚拟专用网络截获网络数据并获取保存在预设沙盒文件中的广告拦截规则,所述网络数据包括业务服务器接收的网络请求数据和所述业务服务器发送的网络响应数据,根据所述广告拦截规则对所述网络请求数据和所述网络响应数据进行筛选,拦截符合广告拦截规则的广告网络数据,将所述广告网络数据从所述网络数据中过滤;
所述数据拦截模块包括:
线程开启单元,用于开启第一子线程、第二子线程和第三子线程;
第一线程单元,用于在所述第一子线程中开启第一本地代理服务器,所述第一本地代理服务器用于截获HTTP数据;
第二线程单元,用于在所述第二子线程中开启第二本地代理服务器,所述第二本地代理服务器用于截获SOCKS数据;
第三线程单元,用于在所述第三子线程中转发各个应用的网络数据至所述本地代理服务器,所述本地代理服务器包括所述第一本地代理服务器和所述第二本地代理服务器。
8.根据权利要求7所述的装置,其特征在于,所述装置包括:
框架调用模块,用于调用iOS系统的网络扩展框架;
网络扩展模块,用于调用网络扩展框架中的通道提供方法扩展核心网络层;
联系建立模块,用于通过调用网络扩展框架中的通道管理方法建立 与所述本地代理服务器的联系;
拦截开启模块,用于开启拦截服务。
9.根据权利要求7所述的装置,其特征在于,所述数据拦截模块还包括:
目标数据单元,用于通过所述本地代理服务器根据所述广告拦截规则从所述网络数据中获取所述符合广告拦截规则的网络数据,作为目标网络数据;
网络数据单元,用于通过所述本地代理服务器将所述目标网络数据从所述网络数据中删除,得到处理后的网络数据。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910004209.8A CN109842617B (zh) | 2019-01-03 | 2019-01-03 | 广告拦截方法、装置和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910004209.8A CN109842617B (zh) | 2019-01-03 | 2019-01-03 | 广告拦截方法、装置和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109842617A CN109842617A (zh) | 2019-06-04 |
CN109842617B true CN109842617B (zh) | 2022-09-09 |
Family
ID=66883632
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910004209.8A Active CN109842617B (zh) | 2019-01-03 | 2019-01-03 | 广告拦截方法、装置和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109842617B (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110417919B (zh) * | 2019-08-29 | 2021-10-29 | 网宿科技股份有限公司 | 一种流量劫持方法及装置 |
CN111193768B (zh) * | 2019-11-25 | 2021-11-02 | 腾讯科技(深圳)有限公司 | 网络数据处理方法、装置、计算机设备和存储介质 |
CN111030915A (zh) * | 2019-12-24 | 2020-04-17 | 秒针信息技术有限公司 | 一种广告投放效果监测方法及装置 |
CN111163078A (zh) * | 2019-12-26 | 2020-05-15 | 珠海格力电器股份有限公司 | 一种网络链接拦截方法、装置、设备及介质 |
CN111209031B (zh) * | 2019-12-30 | 2024-02-02 | 瑞庭网络技术(上海)有限公司 | 一种数据获取方法、装置、终端设备及存储介质 |
CN111786940A (zh) * | 2020-05-07 | 2020-10-16 | 宁波小遛共享信息科技有限公司 | 一种数据处理方法及装置 |
CN111737626A (zh) * | 2020-06-28 | 2020-10-02 | 深信服科技股份有限公司 | 一种数据过滤方法、装置、系统、设备和介质 |
CN111970251A (zh) * | 2020-07-28 | 2020-11-20 | 西安万像电子科技有限公司 | 数据处理方法及服务器 |
CN111901354B (zh) * | 2020-08-03 | 2022-09-30 | 北京指掌易科技有限公司 | 数据处理方法、装置及电子终端 |
CN112149032B (zh) * | 2020-09-11 | 2023-12-08 | 麒麟合盛网络技术股份有限公司 | 广告拦截方法及装置 |
CN114500496A (zh) * | 2020-10-27 | 2022-05-13 | 华为终端有限公司 | 一种目标数据的下载方法及设备 |
CN112995149B (zh) * | 2021-02-07 | 2022-04-22 | 河南职业技术学院 | 一种计算机网络信息管理系统 |
CN112911598A (zh) * | 2021-02-23 | 2021-06-04 | 上海锐伟电子科技有限公司 | 一种移动设备的网络防火墙管理方法及系统 |
CN113239065A (zh) * | 2021-06-25 | 2021-08-10 | 深圳市合美鑫精密电子有限公司 | 基于大数据的安全拦截规则更新方法及人工智能安全系统 |
CN113726872B (zh) * | 2021-08-27 | 2022-12-06 | 北京百度网讯科技有限公司 | 一种推广信息的过滤方法、装置、设备及介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104021172B (zh) * | 2014-05-30 | 2017-07-28 | 北京搜狗科技发展有限公司 | 广告过滤方法及广告过滤装置 |
CN104468551B (zh) * | 2014-11-28 | 2016-06-15 | 北京奇虎科技有限公司 | 一种基于广告拦截节省流量的方法及装置 |
CN105897900A (zh) * | 2016-04-22 | 2016-08-24 | 北京小米移动软件有限公司 | 资源获取方法及装置 |
CN108282441B (zh) * | 2017-01-05 | 2021-04-27 | 中国移动通信集团辽宁有限公司 | 广告拦截方法及装置 |
-
2019
- 2019-01-03 CN CN201910004209.8A patent/CN109842617B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109842617A (zh) | 2019-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109842617B (zh) | 广告拦截方法、装置和存储介质 | |
US8925056B2 (en) | Universal management of user profiles | |
CN107251528B (zh) | 用于提供源自服务提供商网络内的数据的方法和装置 | |
EP2985705A2 (en) | Webpage access method and apparatus, and router | |
CN108156210B (zh) | 目标资源的获取方法和装置 | |
US20130246504A1 (en) | Method for subscribing to notification, apparatus and system | |
RU2498520C2 (ru) | Способ обеспечения одноранговой связи на веб-странице | |
CN105635073B (zh) | 访问控制方法、装置和网络接入设备 | |
US9313100B1 (en) | Remote browsing session management | |
CN107181779B (zh) | 访问请求的处理方法、装置和系统 | |
US9501777B1 (en) | Systems and methods for MAC address tracking for a mobile device | |
CN104580192A (zh) | 应用程序的网络访问请求的处理方法和装置 | |
CN109547490B (zh) | 监护方法、装置和存储介质 | |
US20190116186A1 (en) | Enterprise cloud access control and network access control policy using risk based blocking | |
CN102783119A (zh) | 访问控制方法、系统及接入终端 | |
CN106339309A (zh) | 应用程序的测试方法、客户端及系统 | |
US12013971B2 (en) | System and method for dynamic management of private data | |
CN106254319B (zh) | 一种轻应用登录控制方法和装置 | |
CN106789413B (zh) | 一种检测代理上网的方法和装置 | |
CN108595280B (zh) | 接口适配方法、装置、计算机设备和存储介质 | |
CN110413846B (zh) | 用于网页镜像的数据处理方法、装置及计算机可读存储介质 | |
US10225358B2 (en) | Page push method, device, server and system | |
US20220255938A1 (en) | Method and system for processing network resource access requests, and computer device | |
CN112104703A (zh) | cookie管理方法、中间节点及webvpn系统 | |
CN114915565B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |