yang。 发表于 2021-7-15 23:08:27

简单垃圾流量利用及爬虫过滤、JS支持校验方案

本帖最后由 yang。 于 2021-7-15 23:15 编辑

在部署LP的时候,大家一般都会做一些校验,比如 爬虫、js支持等,一般要么在每个LP上加上,要么提取公共的JS来做。
但是我觉得与其在LP上做这这些校验,还不如在LP前边做,直接过滤到基本的爬虫、js支持这种对LP毫无贡献的流量。

另外对一些莫名其妙的访问,也起到隔离作用,顺便利用下这些流量,万一给你造成转化也说不定呢。

具体做法是:

1.前置页面:在nginx下部署一个公有页面,该页面负责接受追踪器的跳转,相当于追踪器的lander页面统统都访问到这个页面<后边说追踪器配置>。
假设前置页面的访问路径为 http://www.xxx.com/
2.假设我们有2个LP页面,ng配置的访问路径为http://www.xxx.com/iphone/01/index.html
http://www.xxx.com/iphone/02/index.html
那么我们在追踪器中设置的LP访问路径为
http://www.xxx.com/?offerUrl=iphone&landUrl=01
http://www.xxx.com/?offerUrl=iphone&landUrl=02
这里把对应的路径转化为参数,将来发送到前置页面,由前置页面根据规则统一处理

这里,如果你前端功力不错的话,也可以将一些想做split测试的因子,作为参数传递到同一个页面,由js来处理这些因子,同一个页面也能减少干扰。比如把语言作为一个测试因子,如果我想测试一个在泰国跑的LP,英语和泰语那种受欢迎,那么我就可以加一个lang的参数作为测试因子,在追踪器中新建一个参数为lang=en和lang=th的lander页面地址,就能直接测试语言对LP的影响了。


2.前置页面内容如下
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Loading</title>
</head>
<body>
Loading...
</body>

<script>
    //因为我是按照offer来建立路径的,假如有个抽iphone的offer,有10个land页面,那么我的nginx目录设置成
    //iphone
      //01                     http://xxx/iphone/01/index.html
      //02                     http://xxx/iphone/02/index.html
      //以此类推
   
   
   
    //这里假设我们的offer访问路径是http://xxx/iphone/01/index.html
    //那么我们的offerUrl = iphone,landUrl = 01
   
    //从url参数中获取设置好的访问参数
    const toffer = decodeURI((RegExp('offerUrl' + "=(.+?)(&|$)").exec(location.search) || [, null]) || "");
    const tland = decodeURI((RegExp('landUrl' + "=(.+?)(&|$)").exec(location.search) || [, null]) || "");
   
    //校验参数是否被传递过来,如果传递过来,则拼接成对应的路径
    const b = (toffer != null && toffer !== '' && toffer !== undefined) && (tland != null && tland !== '' && tland !== undefined);
    if(b){
      setTimeout(function() {
            var params = funcUrlDel(['offerUrl','landUrl']);
            // 跳转到真正的LP页面,顺便做一个简易的爬虫过滤
            window.location.replace("/"+toffer+"/"+tland+"/index.html"+params);
      }, 300);
    }else{


只是一种简易的思路,主要目的是同一处理一些通用的操作,减少LP的工作。






yang。 发表于 2021-7-15 23:28:50

当然,引申一点,如果你的LP做的足够通用,比如你做的一个专门为各种手机抽奖的LP,每种不同的手机都有一组相同名称的图片,你完全可以通过传入参数去加载不同的手机图片、或者语言等等,通过一个LP,不同的参数组合实现N多个offer的复用和测试

河小马 发表于 2021-7-16 07:55:02

想法是好的

但是对于tracking来说,多一层跳转,一般会多一层流量损失

yang。 发表于 2021-7-16 09:47:46

河小马 发表于 2021-7-16 07:55
想法是好的

但是对于tracking来说,多一层跳转,一般会多一层流量损失

请教下河马大大如果是使用类似于vue的路由那种方式,会不会好一点,对用户来说基本是无感刷新,而非跳转,html可以用ajax请求了load进div

yang。 发表于 2021-7-16 10:28:05

河小马 发表于 2021-7-16 07:55
想法是好的

但是对于tracking来说,多一层跳转,一般会多一层流量损失

经过测试,直接用load的方式,用户基本无感,应该会比直接跳转的方式要好很多,相当于通过ajax隐藏了中间跳转的细节

卡拉赞 发表于 2021-7-16 22:06:24

额,意义在哪里呢(真心求教),媒体给到流量了就会算钱的呢,况且主流媒体用ng做转发可能被判定为规避审核。。。小白一枚 不是杠 真心求教

yang。 发表于 2021-7-17 10:52:29

卡拉赞 发表于 2021-7-16 22:06
额,意义在哪里呢(真心求教),媒体给到流量了就会算钱的呢,况且主流媒体用ng做转发可能被判定为规避审核 ...

1.把在每个LP都要做的JS支持、爬虫校验提取出来统一在一个地方做,也就是在编程里边讲的公共组件。
2.使用同一个LP,但是通过JS和参数控制,实现多维度的split测试。
3.这个在自己服务器内部流转,应该不会被判定。。。<待测试>

4.我这么做主要是出于长久的编程习惯,总想把重复的东西提取出来统一做,让LP专注做自己的事情

小柒大大 发表于 2021-7-17 12:17:23

技术大佬,人才
页: [1]
查看完整版本: 简单垃圾流量利用及爬虫过滤、JS支持校验方案