转自: https://www.ctrl.blog/entry/chrome-adblocker
google chrome 将在2018年2月15日开始对某些网站上的广告进行屏蔽。 笔者看了一下Chromium源代码,以更好的理解这个新的广告拦截器的工作机制。
安全浏览服务
该服务用于阻止恶意软件,欺诈,网络钓鱼等不良行为。Chrome将定期从“安全浏览”下载恶意网站列表,用于检查用户访问的每一个网站。
Google已经扩展了安全浏览服务,以包含一种名为“BETTER_ADS”的新型威胁。不符合“更好的广告标准”的网站将被标记为这种类型的威胁,浏览器可以根据用户设置采取措施。广告拦截在桌面设备和移动设备上默认启用。通过转到Chrome设置,用户可以选择退出广告拦截器:内容设置:广告并禁用该功能。
“安全浏览”内置于许多网络浏览器,包括Google Chrome,Mozilla Firefox和Safari。并不是所有的网页浏览器都能拦截安全浏览服务可识别的所有类型的垃圾软件或行为。在出版时间,Google提供给第三方开发人员的安全浏览公共API中不提供这种新类型的威胁数据。不过,Google可能会在未来的某个时间点向其他网络浏览器提供不符合“更好的广告标准”的网站列表。
哪些网站最终落入黑名单完全在谷歌的压制之下。Google正在通过分析网站来确定他们是否符合更好的广告标准,或者是否在黑名单上。Google为网站发布商提供了一个广告体验报告,用于确定发布商的网站是否在列表中,以及发布商网站的潜在问题。
那么Google究竟会如何阻止违规网站上的广告呢?
EasyList和EasyPrivacy拦截列表
谷歌浏览器会定期下载一组拦截规则,其中包括两个流行的广告拦截列表:EasyList(广告)和EasyPrivacy(追踪)。EasyList和EasyPrivacy内置于许多流行的广告拦截扩展,包括uBlock Origin和AdBlock Plus,以及面向隐私的应用程序和Web浏览器。Google的广告拦截功能将与第一天提供的最佳工具相媲美。
这些列表用于限制通过安全浏览标识的网站上加载的资源不符合更好的广告标准。Google的实现与大多数扩展作为阻塞在渲染过程的早期阶段被强制执行的方式有所不同,而不是扩展可以访问的。
Google似乎在运送EasyList和EasyPrivacy的全部内容; 其中包括Google自己的AdSense和DoubleClick广告平台以及Google Analytics和其他Google服务的屏蔽规则。
Chrome的用户界面允许用户在禁止访问的网站上投放广告。但是,用户不能将自己的网站添加到阻止列表。桌面上的用户界面在“站点设置”中提到“允许”和“阻止”时会有点混淆。用户的实际选择是Block-if-on-the-blocklist或Allow。
我个人希望看到Google给予他们的用户自己根据每个网站启用阻止列表的权力。希望实现这种精细控制级别的用户仍然需要安装第三方广告屏蔽扩展程序。
高级用户可以通过chrome://components更新“子资源筛选规则”组件来手动强制更新阻止列表。
通知
使用桌面上的地址字段(“多功能框”)中的通知或移动设备上的通知工具栏,将通知用户任何阻止操作。这些工作与用于Cookie和弹出窗口阻止的类似弹出窗口相同。
在桌面(第一/左)和Android(上/右)上的广告拦截通知。
通知允许用户选择允许加载广告并将当前网站列入白名单。如果不禁用广告拦截器,则无法禁用通知。
说实话,我不相信任何用户想看到这些通知。它在桌面上足够微妙,但手机上的信息工具栏占用了屏幕上相当大的可用空间。但是,每次Chrome阻止任何广告时通知用户,使系统有些透明 - 即使用户坦率地不会在乎一点。
请注意,请注意,Chrome的新内置广告拦截器是否足以影响安装广告拦截器的用户数量。在理想的情况下,更好的广告标准将消除用户接受剩余广告的痛苦,并且不要被诱惑/提醒安装拦截所有在线广告的第三方广告拦截器。