我从多个来源(包括行业中的主要名称)购买网络流量,最近从广告商那里得到报告,其中有相当多的“无效”流量。他们不会共享使用的过滤器,因此我可以阻止它。我测试了所有导航器属性,分辨率,窗口大小,modernizr功能等,糟糕的访问量似乎欺骗了一切。
经过一些测试,我发现使用以下代码:
document.addEventListener('click', function() {
window.open('/save?' + navigator.userAgent ,'_blank');
});
在某些情况下,保存的用户代理不同于在顶部窗口中保存的用户代理。意思是,访问访问了一个页面,在该页面中,用户代理可能类似于:
Mozilla / 5.0(Windows NT 10.0; Win64; x64)AppleWebKit / 537.36(KHTML, 例如Gecko)Chrome / 64.0.3282.140 Safari / 537.36 Edge / 18.17763
然后该页面使用window.open()打开一个新窗口并再次读取用户代理,它将读取如下内容:
Mozilla / 5.0(X11; Linux x86_64)AppleWebKit / 537.36(KHTML,如Gecko) HeadlessChrome / 72.0.3617.0 Safari / 537.36
我尝试了所有常用方法,例如window.chrome,webdriver,权限,插件,字体,在iframe中读取这些变量等,它们通过了所有测试,唯一有效的是window.open
,但是我显然无法打开弹出窗口来过滤流量。
有什么方法可以检测这种流量?