AdvertCN - 广告中国

 找回密码
 立即注册

QQ登录

只需一步,快速开始

Adsterra China
 谷歌+Bing+TT+MSN官方代理 
⚡️按条S5代理⚡️静态⚡️独享⚡️5G皇家代理IP?⚡️#1性价比⚡️指纹浏览器,就用AdsPower
Mediabuy⚡️玩家开户首选【鲁班跨境通-自助充值转账】FB/GG/TT❤️官方免费开户Affiliate 全媒体流量资源⚡️
Taboola/Outbrain /Bing⚡️一级代理开户投流-7*24h❤️人工在线【官方】❤️搜索套利买量投流开户独立站⚡️开户投放
FB BM不限额,短id账单户E.PN 虚拟卡DuoPlus专注打造跨境电商云手机BINOM TRACKER 60% OFF!
比Adplexity还好用的Spy工具ADPLEXITY + ADVERTCN7200W全球动态不重复住宅IP代理虚拟信用卡+独立站收款
全球虚拟卡, 支持U充值Facebook 批量上广告尤里改 - FB 稳定投放免费黑五教程(持续更新、欢迎交流)
FB 三不限源头 - 自助下户充值转款各种主页、账单户、BM户(优势)⚡️个人户,bm户不限额,账单户IPCola原生住宅IP⚡️$1.8/条双ISP
Google、Bing官方总代  联盟流量开户FB资源,账单户,分享户,国内一手FB企业户BM户账单户源头PTM全球虚拟卡—进来交个朋友!
PTM虚拟卡⚡️费率透明⚡️额度随心FB虚拟卡⚡️消费越多返现越多虚拟卡 - Pay2.House【找量】BA独家Nutra单找量
广告位出租8500万高质量住宅IP,助力各种需求虚拟卡返佣1%,国内持牌机构 
查看: 18712|回复: 7

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

[复制链接]

16

主题

376

广告币

533

积分

中级会员

Rank: 3Rank: 3

积分
533
发表于 2021-7-15 23:08:27 | 显示全部楼层 |阅读模式
Lemft
本帖最后由 yang。 于 2021-7-15 23:15 编辑
) [% Z. @! m$ E; H* u3 {  d4 a( P
/ e8 c0 }! W& Y* ^在部署LP的时候,大家一般都会做一些校验,比如 爬虫、js支持等,一般要么在每个LP上加上,要么提取公共的JS来做。- M- |, r$ H  B, ?* Y6 E
但是我觉得与其在LP上做这这些校验,还不如在LP前边做,直接过滤到基本的爬虫、js支持这种对LP毫无贡献的流量。
7 {: I- O, Y% q4 p3 Q4 T. U5 q3 J3 i1 x
另外对一些莫名其妙的访问,也起到隔离作用,顺便利用下这些流量,万一给你造成转化也说不定呢。
7 ]9 M2 s) S& [7 N3 B+ a
; u3 I& h! u4 U! z( c- x具体做法是:
8 `# u6 l2 h9 j# [% E6 ?' N5 D' W6 M  Q$ R' l  N5 \0 n" U3 r
1.前置页面:在nginx下部署一个公有页面,该页面负责接受追踪器的跳转,相当于追踪器的lander页面统统都访问到这个页面<后边说追踪器配置>。1 c% r1 m' O+ y
假设前置页面的访问路径为 http://www.xxx.com/
2 Z- |2 R$ U0 Y, y8 z3 ]- M2.假设我们有2个LP页面,ng配置的访问路径为http://www.xxx.com/iphone/01/index.html  ' R# K1 h, s  i
http://www.xxx.com/iphone/02/index.html
/ V3 a0 m2 O, `2 H4 T那么我们在追踪器中设置的LP访问路径为) h/ f3 R: ~0 t4 s+ P! \) G, b4 r1 B
http://www.xxx.com/?offerUrl=iphone&landUrl=01
( L# ^/ |- e/ l: m* y& E/ Nhttp://www.xxx.com/?offerUrl=iphone&landUrl=02
; g$ h9 U, e9 t  k$ R. O3 n; z这里把对应的路径转化为参数,将来发送到前置页面,由前置页面根据规则统一处理
/ |% P+ G3 F4 a0 K" A" i8 e1 d1 G' P6 o0 M1 W4 A5 C
这里,如果你前端功力不错的话,也可以将一些想做split测试的因子,作为参数传递到同一个页面,由js来处理这些因子,同一个页面也能减少干扰。比如把语言作为一个测试因子,如果我想测试一个在泰国跑的LP,英语和泰语那种受欢迎,那么我就可以加一个lang的参数作为测试因子,在追踪器中新建一个参数为lang=en和lang=th的lander页面地址,就能直接测试语言对LP的影响了。
2 |& {. Y6 f, }& j1 j/ `3 E1 C8 c" m1 _. S5 g

$ w" h9 j+ t2 W' \; U% D) u4 M2.前置页面内容如下0 i7 N7 W; j* w0 V; p4 {
  1. <!DOCTYPE html>; `$ g, O' y8 i) h/ d8 H, k0 J
  2. <html lang="en">
    ) Z) G/ w9 m  \$ ^6 n
  3. <head>
    ( s9 \$ T8 y& D8 k
  4.     <meta charset="UTF-8">
    / Q, c+ O8 r( q0 b' j: D+ r9 H
  5.     <title>Loading</title>: G- J+ z* x# ~7 e% K- d+ u
  6. </head>, O$ I3 x$ Q2 Q6 h1 ]
  7. <body>8 E7 P! E6 C6 y1 ~/ ~6 \5 v) Y
  8. Loading...
    9 h  w% `1 G( _" t5 w6 ^0 y
  9. </body>; b7 Q! `$ D/ N4 u

  10.   d" J& o, s, Z& [! Y4 d9 M
  11. <script>: O2 y& M* l1 Z$ C( M
  12.     //因为我是按照offer来建立路径的,假如有个抽iphone的offer,有10个land页面,那么我的nginx目录设置成
    8 }- C' t/ I; U7 e8 w
  13.     //iphone8 n' R- m1 }: x0 }! x( f
  14.         //01                     http://xxx/iphone/01/index.html
    8 z& j( m3 }! }( t% s
  15.         //02                     http://xxx/iphone/02/index.html
    $ h* v" f8 C) S. g+ z
  16.         //以此类推1 [8 m) c! J2 v8 B2 z  r* `" s: p, |+ D
  17.     ! f; r: M0 {4 K9 n
  18.    
    7 y- R- E1 K! `5 {7 p' a+ H; D
  19.    
    : M4 H( R0 w6 N0 U6 o% m
  20.     //这里假设我们的offer访问路径是  http://xxx/iphone/01/index.html
    3 k4 M; O; E+ y8 b0 A" v7 f
  21.     //那么我们的offerUrl = iphone,landUrl = 01* S, l6 k7 b3 R& p
  22.     * E) t7 s1 W/ a1 d4 P- |) Q
  23.     //从url参数中获取设置好的访问参数, E- d- Y  W: a- D0 I
  24.     const toffer = decodeURI((RegExp('offerUrl' + "=(.+?)(&|$)").exec(location.search) || [, null])[1] || "");
    3 n; W4 F1 Q5 U5 n4 j! f
  25.     const tland = decodeURI((RegExp('landUrl' + "=(.+?)(&|$)").exec(location.search) || [, null])[1] || "");
    . s6 B3 u  {( i$ s( ~' y) w9 G
  26.     8 u, p$ c7 P- P' c3 q. H0 J
  27.     //校验参数是否被传递过来,如果传递过来,则拼接成对应的路径
    ; j3 l, c! L1 B: u: U' K8 N
  28.     const b = (toffer != null && toffer !== '' && toffer !== undefined) && (tland != null && tland !== '' && tland !== undefined);$ a1 R5 A$ ]" k' g$ }
  29.     if(b){' L! V5 H2 A6 h( \# h
  30.         setTimeout(function() {! Z- k& A: i/ u0 ^3 j& L$ K
  31.             var params = funcUrlDel(['offerUrl','landUrl']);7 r- l! t! l, Q- [7 P4 J
  32.             // 跳转到真正的LP页面,顺便做一个简易的爬虫过滤
    : K6 p1 H9 w+ f" K2 `6 N  v
  33.             window.location.replace("/"+toffer+"/"+tland+"/index.html"+params);
    $ n5 {) h0 [( v; r- q2 B) g
  34.         }, 300);
    * z: p# Q& _" [8 u( i' S/ ~, T
  35.     }else{
复制代码
& ]( E! |6 @9 _

. i: M8 [& H5 @4 U2 d7 U/ t/ e6 @: y+ u: F, g; M
只是一种简易的思路,主要目的是同一处理一些通用的操作,减少LP的工作。
$ H, F1 d# G# x  Y/ _( U* @4 l4 c4 p) P- _; \
! U* W" {% m/ j! n% @) ~! `
' Q$ y  d4 j# I7 v! C9 V: Z
1 Y8 G3 w1 o0 `7 C- V- E

2 M- i7 f9 W; n) @6 C
8 ~& w. K# k8 s& J. e
相关帖子
回复

使用道具 举报

16

主题

376

广告币

533

积分

中级会员

Rank: 3Rank: 3

积分
533
 楼主| 发表于 2021-7-15 23:28:50 | 显示全部楼层
当然,引申一点,如果你的LP做的足够通用,比如你做的一个专门为各种手机抽奖的LP,每种不同的手机都有一组相同名称的图片,你完全可以通过传入参数去加载不同的手机图片、或者语言等等,通过一个LP,不同的参数组合实现N多个offer的复用和测试
回复 支持 反对

使用道具 举报

1630

主题

1万

广告币

2万

积分

管理员

宇宙无敌河马天神

Rank: 9Rank: 9Rank: 9

积分
27022

社区QQ达人

发表于 2021-7-16 07:55:02 | 显示全部楼层
想法是好的) K1 J& R, S! W# N& e

9 _2 P3 D6 F4 o0 N但是对于tracking来说,多一层跳转,一般会多一层流量损失

点评

经过测试,直接用load的方式,用户基本无感,应该会比直接跳转的方式要好很多,相当于通过ajax隐藏了中间跳转的细节  详情 回复 发表于 2021-7-16 10:28
请教下河马大大 如果是使用类似于vue的路由那种方式,会不会好一点,对用户来说基本是无感刷新,而非跳转,html可以用ajax请求了load进div  详情 回复 发表于 2021-7-16 09:47
学会提问的艺术, 从小处入手, 忌大而空
AdvertCN电报群

我最喜欢用的工具
7200W全球动态不重复住宅IP代理
回复 支持 反对

使用道具 举报

16

主题

376

广告币

533

积分

中级会员

Rank: 3Rank: 3

积分
533
 楼主| 发表于 2021-7-16 09:47:46 | 显示全部楼层
河小马 发表于 2021-7-16 07:55
9 P/ ]+ ^  f) |: o' @) W想法是好的: j  S+ B! \9 n( _( Q; g# Z

, [" f& e5 c7 ~6 `% ~0 R但是对于tracking来说,多一层跳转,一般会多一层流量损失

( ~0 v4 J8 L$ F; a! M0 l请教下河马大大  如果是使用类似于vue的路由那种方式,会不会好一点,对用户来说基本是无感刷新,而非跳转,html可以用ajax请求了load进div
回复 支持 反对

使用道具 举报

16

主题

376

广告币

533

积分

中级会员

Rank: 3Rank: 3

积分
533
 楼主| 发表于 2021-7-16 10:28:05 | 显示全部楼层
河小马 发表于 2021-7-16 07:559 m, f7 t8 t- f5 t3 |1 |
想法是好的
5 T& Y' u$ Z  U% e. b6 R" U( t5 @( @; N$ J. q, ]
但是对于tracking来说,多一层跳转,一般会多一层流量损失

* Z  a6 o) f4 U经过测试,直接用load的方式,用户基本无感,应该会比直接跳转的方式要好很多,相当于通过ajax隐藏了中间跳转的细节
回复 支持 反对

使用道具 举报

3

主题

13

广告币

22

积分

初级会员

Rank: 2

积分
22
发表于 2021-7-16 22:06:24 | 显示全部楼层
额,意义在哪里呢(真心求教),媒体给到流量了就会算钱的呢,况且主流媒体用ng做转发可能被判定为规避审核。。。小白一枚 不是杠 真心求教

点评

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

使用道具 举报

16

主题

376

广告币

533

积分

中级会员

Rank: 3Rank: 3

积分
533
 楼主| 发表于 2021-7-17 10:52:29 | 显示全部楼层
卡拉赞 发表于 2021-7-16 22:06$ `- J) x/ g( ~( o( ^; W
额,意义在哪里呢(真心求教),媒体给到流量了就会算钱的呢,况且主流媒体用ng做转发可能被判定为规避审核 ...
7 l/ C+ l, v0 c
1.把在每个LP都要做的JS支持、爬虫校验提取出来统一在一个地方做,也就是在编程里边讲的公共组件。0 i" _- u, X1 {7 q) {& j
2.使用同一个LP,但是通过JS和参数控制,实现多维度的split测试。
2 ]( \  G4 e2 p3.这个在自己服务器内部流转,应该不会被判定。。。<待测试>
- z; H' r: d/ \! z8 @: z4 T1 m8 H( d. B  G2 H
4.我这么做主要是出于长久的编程习惯,总想把重复的东西提取出来统一做,让LP专注做自己的事情
回复 支持 反对

使用道具 举报

20

主题

864

广告币

999

积分

中级会员

Rank: 3Rank: 3

积分
999
发表于 2021-7-17 12:17:23 | 显示全部楼层
技术大佬,人才
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关于我们|联系我们|DMCA|广告服务|小黑屋|手机版|Archiver|Github|网站地图|AdvertCN

GMT+8, 2025-6-22 19:11 , Processed in 0.047444 second(s), 14 queries , Gzip On, MemCache On.

Copyright © 2001-2023, AdvertCN

Proudly Operating in Hong Kong.

快速回复 返回顶部 返回列表