抛砖引玉,我了解到的广告拦截方案,更准确地说是内容拦截方案,因为很多时候需要拦截的不仅仅是广告,还有跟踪器、影响体验的一些非广告页面元素等等,例如下面这张图片,是不是有点恐怖呢:
1)电脑-浏览器内置的拦截工具
例如微软Edge内置了跟踪防护,可以屏蔽广告跟踪器,跟踪器其实就是一段代码,例如GoogleAnalytics.js。跟踪器能收集用户或设备的信息,跟踪你访问过哪些网站等,广告主于是能根据你的浏览行为对你投放广告。有时候我们在京东看了一双鞋,打开其他网站马上就能看到这双鞋的广告。
Firefox、Safari也内置跟踪器防护功能;但是Chrome没有。至于广告屏蔽,以上浏览器都没有内置。
下图是被Edge内置的跟踪防护功能阻止的爱奇艺网站的跟踪器:
2)电脑-浏览器插件
AdGuard、Adblock、AdblockPlus、uBlockOrigin等广告拦截插件,除了可以阻止跟踪器,还可以屏蔽广告、屏蔽一些虽然不是广告但令人讨厌的弹窗等页面元素。这四款工具效果各异,这里不评价。
下图是淘宝网站被屏蔽的内容,应该不止广告,看来还省了很多流量。
3)电脑-广告屏蔽软件
浏览器插件只能用于浏览器内,有一些内容拦截工具还有桌面版应用,例如AdGuard等,它们支持系统级的广告过滤,可过滤浏览器和其他应用的广告,不过可能收费。
浏览器插件必须遵守浏览器的规则,不见得所有浏览器都希望你屏蔽广告,例如Chrome应该不希望你拦截Google的广告,而系统级别的内容拦截软件可以摆脱这些限制。
4)手机-浏览器插件
手机版的Chrome不能屏蔽广告;Edge内置了AdblockPlus用于屏蔽广告,需手动开启,Edge和电脑版一样,支持阻止跟踪器;Safari本身支持阻止跨域跟踪但不支持屏蔽广告,不过可通过第三方内容拦截器屏蔽广告;Firefox能阻止跟踪。
5)手机-内容拦截应用
AdGuard有iOS和Android版,但需要付费才能拦截其他应用的广告,否则只能作用于浏览器;AdblockPlus、Adblock在iOS和Android都没有全局拦截功能,要不就是作为浏览器插件存在,要不就是开发一个主打广告拦截的浏览器;uBlockOrigin不支持手机。
下图是AdblockPlus、Adblock针对三星手机浏览器的插件截图:
6)DNS或host
Android平台有一款叫AdAway的广告拦截应用,通过修改host阻止广告请求,已经开发了很多年,但因为需要root,不太流行。DNS拦截和改host拦截原理差不多,我用过的有nextDNS,可以拦截浏览器和应用中的广告,但可能影响国内网站访问速度,例如在浏览器打开百度慢很多。DNS方案甚至可以用在路由器,这样所有连接到这个网络的设备都可以过滤广告,只是我还没找到好用的广告过滤DNS。
GitHub有一个叫pi-hole的开源项目,可以用树莓派自建DNS拦截服务。
下图是nextDNS的数据统计面板:
关于屏蔽规则
上面提到的所有内容拦截工具都离不开EasyList这个开源项目,EasyList针对不同的用户需求维护了众多内容拦截规则,有些开发者例如AdGuard还会维护自己的规则,他们称之为过滤器,在GitHub还能找到很多由网友个人维护的过滤列表。
---
我曾经是广告屏蔽插件的忠实用户,Adblock、AdblockPlus、uBlockOrigin这些浏览器插件我都用过,后来好像是迫于多种压力,这些插件屏蔽广告的做法不那么激进了,允许展示“可接受广告”,于是屏蔽效果开始下降。
另一个重要原因是,很多网站也开始采取反广告屏蔽措施,友好一点的就是弹出一个几秒到十几秒后自动消失的提示,提醒你关闭屏蔽功能;粗鲁一点的就完全禁止你浏览网页内容,直到你对它停止屏蔽。这是我不再使用屏蔽插件的主要原因,烦不胜烦,就卸了。
如果你不知道如何BlockAdblock,有人甚至免费提供了反广告屏蔽代码,帮助站长快速布署:
BlockAdblock的作者反广告屏蔽的理由是:Thefreewebisimportant.Freemediaisimportant.
我突然对这个话题感兴趣,是因为昨天看到新闻说脸书公司在很多媒体上大幅打广告,谴责苹果损害了超过千万的中小卖家的利益,理由是iOS系统的隐私*策导致小卖家在脸书上投放的广告效率下降,平均一美金的广告费用所带来的销售额下降了60%。
为什么会这样呢,因为在iOS14如果一个App需要对你进行跟踪,它必须先弹窗询问用户:请问你允许我跟踪你吗?可能大多数用户都会拒绝。在iOS14之前默认允许。
你可以在这里查看自己拒绝了多少应用的跟踪请求:设置隐私跟踪。
除了阻止App跟踪,前面还提到了Safari也默认开启了阻止跨域跟踪。阻止跟踪意味着广告主给你推送的广告不再那么有针对性,甚至无法定位到要投放的用户群体,影响广告主的收益,这是他们不愿意看到的。