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%,国内持牌机构 
查看: 18711|回复: 7

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

[复制链接]

16

主题

376

广告币

533

积分

中级会员

Rank: 3Rank: 3

积分
533
发表于 2021-7-15 23:08:27 | 显示全部楼层 |阅读模式
Lemft
本帖最后由 yang。 于 2021-7-15 23:15 编辑 ' w; ^  i* x, }3 i$ {5 B$ a
, M$ l  ?7 f' l$ m8 _
在部署LP的时候,大家一般都会做一些校验,比如 爬虫、js支持等,一般要么在每个LP上加上,要么提取公共的JS来做。( t9 M7 v5 G2 h7 O% p  g  b* e- C
但是我觉得与其在LP上做这这些校验,还不如在LP前边做,直接过滤到基本的爬虫、js支持这种对LP毫无贡献的流量。$ y  p3 G% Y) ]( b* l  F3 \
! O6 E0 }- ^  p) f
另外对一些莫名其妙的访问,也起到隔离作用,顺便利用下这些流量,万一给你造成转化也说不定呢。
8 F+ l* [/ d, U! `; ^/ _' D: L# o  ~$ E
具体做法是:
5 n4 E2 B" f- _9 L9 W+ V7 T3 L" `" n. E% d( T
1.前置页面:在nginx下部署一个公有页面,该页面负责接受追踪器的跳转,相当于追踪器的lander页面统统都访问到这个页面<后边说追踪器配置>。
6 T, h' `$ {# {" j2 ]假设前置页面的访问路径为 http://www.xxx.com/
" Z7 ]+ a8 A$ j( a  i! u7 o2.假设我们有2个LP页面,ng配置的访问路径为http://www.xxx.com/iphone/01/index.html  
: C- k2 @' [5 K/ A9 R2 whttp://www.xxx.com/iphone/02/index.html
& [2 W$ b3 ^$ b" F, E6 T那么我们在追踪器中设置的LP访问路径为( Y% p, j$ ?# s! s
http://www.xxx.com/?offerUrl=iphone&landUrl=019 Q! q9 x5 [: I, s3 \* s! l% B9 F
http://www.xxx.com/?offerUrl=iphone&landUrl=02& n6 ~8 G5 X. Z# n& E" H+ n
这里把对应的路径转化为参数,将来发送到前置页面,由前置页面根据规则统一处理6 p% J( `; H  `) j

7 S$ k$ Z5 c) V4 c6 _! ?这里,如果你前端功力不错的话,也可以将一些想做split测试的因子,作为参数传递到同一个页面,由js来处理这些因子,同一个页面也能减少干扰。比如把语言作为一个测试因子,如果我想测试一个在泰国跑的LP,英语和泰语那种受欢迎,那么我就可以加一个lang的参数作为测试因子,在追踪器中新建一个参数为lang=en和lang=th的lander页面地址,就能直接测试语言对LP的影响了。5 U' d# l5 y' B6 g
  i, f7 y8 _$ H$ e$ D

% R6 E  U7 [$ h0 ~0 R2.前置页面内容如下
, K- e- _( H5 p9 W8 O# N* m. ~$ c
  1. <!DOCTYPE html>( _0 x: J% G* a+ [
  2. <html lang="en">
    9 f$ j6 f8 X, v) W+ J
  3. <head>4 v. q! b0 T0 R5 o) ^5 @
  4.     <meta charset="UTF-8">3 c, m8 K- s  R  O' e& L9 T' Z' ^
  5.     <title>Loading</title>" p2 o% S" Q- M
  6. </head>$ R$ i% s- k' a* B, m
  7. <body>
    ( y& @' i" G7 Y0 G. Q, E( |) F
  8. Loading...
    7 m. w  z: `) B+ p" |
  9. </body>0 x8 h0 B' C* u# t
  10. 8 _  ]" }! H# m
  11. <script>
    - J$ R9 g# O  f2 `9 _: C
  12.     //因为我是按照offer来建立路径的,假如有个抽iphone的offer,有10个land页面,那么我的nginx目录设置成; I. \7 X' `! R7 s& A. o- Y' D1 m4 n
  13.     //iphone( C9 x0 t3 J5 s' f' ^( Z
  14.         //01                     http://xxx/iphone/01/index.html
    ! W! h( V" k! R' E3 G) D3 a. l2 h# ^4 z
  15.         //02                     http://xxx/iphone/02/index.html. `4 K2 @( u& a. Y
  16.         //以此类推5 `5 k6 i) t* F& V# }2 n1 k  G# c
  17.     " n3 z' X' h  W6 P$ G5 S, s. e
  18.    
    % B' F$ E3 C. y- F
  19.     : w# F! f% P( j# ~# y: ]( \' q( q
  20.     //这里假设我们的offer访问路径是  http://xxx/iphone/01/index.html# s* E2 L* x; |
  21.     //那么我们的offerUrl = iphone,landUrl = 01
    ; b3 n$ k4 A1 w/ y2 u
  22.    
    " W! V7 K/ `* p- |' L! ?
  23.     //从url参数中获取设置好的访问参数
    ; o& Q9 E% d' s  B
  24.     const toffer = decodeURI((RegExp('offerUrl' + "=(.+?)(&|$)").exec(location.search) || [, null])[1] || "");9 O, a* ^8 |6 W' X
  25.     const tland = decodeURI((RegExp('landUrl' + "=(.+?)(&|$)").exec(location.search) || [, null])[1] || "");
    % I- O! `- p( n) C/ S1 i
  26.     4 `' |4 A. _9 e9 k
  27.     //校验参数是否被传递过来,如果传递过来,则拼接成对应的路径+ p2 j' J/ _1 i9 z0 H
  28.     const b = (toffer != null && toffer !== '' && toffer !== undefined) && (tland != null && tland !== '' && tland !== undefined);
    , c- C% M2 h, l5 B0 ?
  29.     if(b){& D" ~) |; x) n; u
  30.         setTimeout(function() {
    ( v4 b, i. N8 \" B/ ~
  31.             var params = funcUrlDel(['offerUrl','landUrl']);5 ]4 ^. q& B5 ^7 a
  32.             // 跳转到真正的LP页面,顺便做一个简易的爬虫过滤
    8 `- k* \2 w+ D3 L) s
  33.             window.location.replace("/"+toffer+"/"+tland+"/index.html"+params);
    , v1 i# f( n/ X0 U0 C
  34.         }, 300);
    , [. |2 P# g# u& U9 r# W$ y8 m
  35.     }else{
复制代码

* S9 f0 M5 I  ^; m2 S" E) t7 n
3 p/ O) i6 _8 w$ }2 }
2 o2 B$ p  m. |, F' Q只是一种简易的思路,主要目的是同一处理一些通用的操作,减少LP的工作。
5 E. B( B8 X. f7 Q0 z8 [+ S; s" Z5 y+ ]( z0 M

# Y5 B& P* H4 j6 `: A
( }; ?5 {# c# o' O; u4 a) Q( g9 H1 D" v9 g0 M. a3 [

: ~! E  q2 ]0 a. X/ J+ W. D3 U
4 F8 G, b* T4 t/ z+ {4 l
相关帖子
回复

使用道具 举报

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 | 显示全部楼层
想法是好的+ Z- ~! E+ w% {. {1 y6 @( L

; G; r& `! m+ I- S1 S! {3 G但是对于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
* G0 y9 z6 ^1 V- R8 x9 H  ^想法是好的! E" z% U$ ~* h# W. O% Z
! k! D. ]) d* G; O8 E! v( ]
但是对于tracking来说,多一层跳转,一般会多一层流量损失

" E/ \) H' p4 X* Q请教下河马大大  如果是使用类似于vue的路由那种方式,会不会好一点,对用户来说基本是无感刷新,而非跳转,html可以用ajax请求了load进div
回复 支持 反对

使用道具 举报

16

主题

376

广告币

533

积分

中级会员

Rank: 3Rank: 3

积分
533
 楼主| 发表于 2021-7-16 10:28:05 | 显示全部楼层
河小马 发表于 2021-7-16 07:550 O; b' f  ?0 ?) u3 z2 m
想法是好的" Z* L  B9 i/ e/ p& D/ O: ?% }

! ]8 W) ]& q1 E但是对于tracking来说,多一层跳转,一般会多一层流量损失
# W& A, E. L0 v$ d* 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:061 R0 |. b# o, d7 P
额,意义在哪里呢(真心求教),媒体给到流量了就会算钱的呢,况且主流媒体用ng做转发可能被判定为规避审核 ...
8 J* \! Y6 j. }  e3 F* E
1.把在每个LP都要做的JS支持、爬虫校验提取出来统一在一个地方做,也就是在编程里边讲的公共组件。
0 d3 U: K9 E9 l2 b; F* K# U" r" e2 g9 C2.使用同一个LP,但是通过JS和参数控制,实现多维度的split测试。
: J: U, F6 P8 T9 V3.这个在自己服务器内部流转,应该不会被判定。。。<待测试># T5 G; j) |# {- P/ v& C' ^

  j! `6 |) V: x% Z0 F, n7 k, I$ q4.我这么做主要是出于长久的编程习惯,总想把重复的东西提取出来统一做,让LP专注做自己的事情
回复 支持 反对

使用道具 举报

20

主题

864

广告币

999

积分

中级会员

Rank: 3Rank: 3

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-22 18:15 , Processed in 0.048415 second(s), 15 queries , Gzip On, MemCache On.

Copyright © 2001-2023, AdvertCN

Proudly Operating in Hong Kong.

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