AdvertCN - 广告中国

 找回密码
 立即注册

QQ登录

只需一步,快速开始

PropellerAds
Google-Bing-Mediago-Criteo开户
⚡️按条S5代理⚡️静态⚡️独享⚡️5G广告专用虚拟卡/U充值/高返点皇家代理IP⚡️#1性价比⚡️
Mediabuy⚡️玩家开户首选【鲁班跨境通-自助充值转账】FB/GG/TT❤️官方免费开户Affiliate 全媒体流量资源⚡️
Taboola/Outbrain /Bing⚡️一级代理开户投流-7*24h❤️人工在线【官方】❤️搜索套利买量投流开户独立站⚡️开户投放
⚡️AdsPower:安全不封号,高效自动化Google FB TK游戏代投⚡️E.PN 虚拟卡⚡️BINOM TRACKER 60% OFF!
比Adplexity还好用的Spy工具ADPLEXITY + ADVERTCN7200W全球动态不重复住宅IP代理虚拟信用卡+独立站收款
全球虚拟卡, 支持U充值Facebook 批量上广告尤里改 - FB 稳定投放免费黑五教程(持续更新、欢迎交流)
FB 三不限源头 - 自助下户充值转款各种主页、账单户、BM户(优势)IPCola原生住宅IP⚡️$1.8/条双ISPFB资源,账单户,分享户,国内一手
TK加白户/二解户/FB海外户/GG老户海外CL企业户源头FB虚拟卡⚡️消费越多返现越多FB广告Spy工具⚡免费试用✅
FB个号1块一个TikTok2审户/老户/国内外端口/加白GG,FB,TK, 欧美源头, 欢迎合作❤️FB企业户海外户,授信户,TK加白户
联盟收款/海外资金下发/服贸结汇域名防红⚠斗篷工具/可试用3天广告位出租8500万高质量住宅IP,助力各种需求
虚拟卡返佣1%,国内持牌机构   
查看: 19325|回复: 7

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

[复制链接]

16

主题

376

广告币

533

积分

中级会员

Rank: 3Rank: 3

积分
533
发表于 2021-7-15 23:08:27 | 显示全部楼层 |阅读模式
本帖最后由 yang。 于 2021-7-15 23:15 编辑
: X; U8 S  q# M) d0 M" Q1 a5 L6 p/ R7 F1 Z; Y9 D; |
在部署LP的时候,大家一般都会做一些校验,比如 爬虫、js支持等,一般要么在每个LP上加上,要么提取公共的JS来做。
3 k8 y- X. s  J8 h" V5 p但是我觉得与其在LP上做这这些校验,还不如在LP前边做,直接过滤到基本的爬虫、js支持这种对LP毫无贡献的流量。
- x2 k# P7 u, @/ i2 }0 U
8 v$ r$ C$ z) X$ r2 @& z另外对一些莫名其妙的访问,也起到隔离作用,顺便利用下这些流量,万一给你造成转化也说不定呢。! x, ?8 |, }0 {6 P  U

6 s5 g$ z" D8 u具体做法是:! H& ~1 m1 @5 v( O2 K
( o% B# |; t, x, b' F2 p
1.前置页面:在nginx下部署一个公有页面,该页面负责接受追踪器的跳转,相当于追踪器的lander页面统统都访问到这个页面<后边说追踪器配置>。
4 R% \8 |# B. w! ~$ b6 U假设前置页面的访问路径为 http://www.xxx.com/  Q4 S9 R: g0 ~; j
2.假设我们有2个LP页面,ng配置的访问路径为http://www.xxx.com/iphone/01/index.html  
$ H* H* G, m# R9 N$ F" Shttp://www.xxx.com/iphone/02/index.html  E; |6 }" l: s1 }1 y  `  e" e( I
那么我们在追踪器中设置的LP访问路径为) K$ \1 c( k9 E; F5 `7 @; l: p# O
http://www.xxx.com/?offerUrl=iphone&landUrl=01
8 V  ~) l6 e) c2 Shttp://www.xxx.com/?offerUrl=iphone&landUrl=02& _' i6 G2 B$ P" ]
这里把对应的路径转化为参数,将来发送到前置页面,由前置页面根据规则统一处理5 e) Z3 I& w# i+ v, c& y

7 j( h9 U: p8 d# U9 @这里,如果你前端功力不错的话,也可以将一些想做split测试的因子,作为参数传递到同一个页面,由js来处理这些因子,同一个页面也能减少干扰。比如把语言作为一个测试因子,如果我想测试一个在泰国跑的LP,英语和泰语那种受欢迎,那么我就可以加一个lang的参数作为测试因子,在追踪器中新建一个参数为lang=en和lang=th的lander页面地址,就能直接测试语言对LP的影响了。9 K% Q1 ?* h1 s
9 L( t- \! b4 F4 s$ k: M

* s0 a0 d/ B% \4 v2.前置页面内容如下+ J; }0 u) t3 X# f' V7 l
  1. <!DOCTYPE html>+ Q& r: ?8 \' p' B8 H% g
  2. <html lang="en">
    ) Z$ {9 S; t/ s
  3. <head>1 v% e4 Y- {' D+ C* t/ ~
  4.     <meta charset="UTF-8">) u" x6 Z4 g& n
  5.     <title>Loading</title>) V) V: D! r0 S- j0 {
  6. </head>9 {5 {) ?& C3 P. ]' S/ L. z
  7. <body>
    8 K  V) c% K" M
  8. Loading...
    " t& G; \5 {5 v$ F/ ~8 e1 s
  9. </body>
    0 ?1 U+ A3 }5 s3 o( n/ X: S5 j

  10. 2 {. Z& N% Y$ U  g* r+ j; E
  11. <script># H1 {4 S+ o8 V  A3 K5 }0 `
  12.     //因为我是按照offer来建立路径的,假如有个抽iphone的offer,有10个land页面,那么我的nginx目录设置成
    # O( F$ e; I) d, d; O6 t7 B  K! Z
  13.     //iphone
    0 }: N8 M  x0 g% k# h0 F+ @
  14.         //01                     http://xxx/iphone/01/index.html
    , k% C5 `( J2 X9 H
  15.         //02                     http://xxx/iphone/02/index.html! s' c1 _7 p" l6 }$ y; v  a8 C! l
  16.         //以此类推
    # l: P9 P4 t- K/ |# s
  17.     7 X4 x- l, ]7 r5 u( D
  18.    
    8 u; U! a2 H9 L2 b# B. _% `* C
  19.    
    3 x6 g# v3 \( i, h1 ^) Y* B
  20.     //这里假设我们的offer访问路径是  http://xxx/iphone/01/index.html
    / K  z! R% R& v. q2 h7 k7 M
  21.     //那么我们的offerUrl = iphone,landUrl = 01
    6 Q" b: R6 Q5 y+ ~% |- L) _
  22.     & |. m' W& J+ ~1 e3 l
  23.     //从url参数中获取设置好的访问参数
    $ c% _! O; L& @, ]; m" X
  24.     const toffer = decodeURI((RegExp('offerUrl' + "=(.+?)(&|$)").exec(location.search) || [, null])[1] || "");
    5 h. @( Y% Q8 f9 S
  25.     const tland = decodeURI((RegExp('landUrl' + "=(.+?)(&|$)").exec(location.search) || [, null])[1] || "");
    ( }% x2 r6 R( @+ B1 t# t
  26.     - w+ [$ n) H" T6 j+ S! X) s
  27.     //校验参数是否被传递过来,如果传递过来,则拼接成对应的路径% L% H) Q/ I5 R) M
  28.     const b = (toffer != null && toffer !== '' && toffer !== undefined) && (tland != null && tland !== '' && tland !== undefined);
    0 q( [9 [9 `5 y% H  F" l
  29.     if(b){
    $ a1 N% Y# a+ g# \
  30.         setTimeout(function() {3 B' M8 m* ]6 G$ R6 e
  31.             var params = funcUrlDel(['offerUrl','landUrl']);
    2 U+ s# @3 m2 b2 L; E/ I2 v
  32.             // 跳转到真正的LP页面,顺便做一个简易的爬虫过滤/ c/ p3 ]# \9 m2 I7 |# n0 [& o
  33.             window.location.replace("/"+toffer+"/"+tland+"/index.html"+params);
    ( W+ n( G+ A" O5 u9 {
  34.         }, 300);
    / ?! h/ B# W6 ]
  35.     }else{
复制代码
% o' q1 k/ S: c1 _+ P

( H- h' ?6 J+ F* N3 Q; i8 M5 r3 D' g* k1 J- p$ S5 X
只是一种简易的思路,主要目的是同一处理一些通用的操作,减少LP的工作。
" S* \5 e; T% D3 M1 U9 {' K, K  y+ O3 g  \
5 j  \1 F+ P1 c
; c5 U1 v, W5 j
8 a5 @! c6 }. f4 {0 Z

1 H( C/ S; ]9 B3 G" j
( S1 s# ~  X9 ]. ~/ [
相关帖子
回复

使用道具 举报

16

主题

376

广告币

533

积分

中级会员

Rank: 3Rank: 3

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

使用道具 举报

1660

主题

1万

广告币

2万

积分

管理员

宇宙无敌河马天神

Rank: 9Rank: 9Rank: 9

积分
27723

社区QQ达人

发表于 2021-7-16 07:55:02 | 显示全部楼层
想法是好的7 w% i5 y  L4 I3 z+ a
( S- i! h; k7 `5 d
但是对于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:553 f1 J2 A4 h" H- y* F4 a4 i
想法是好的
5 j5 ]" j  D( t- i& k
- H2 e& p5 F1 @8 P但是对于tracking来说,多一层跳转,一般会多一层流量损失

8 M+ v: L4 x+ e7 |; }& r3 a请教下河马大大  如果是使用类似于vue的路由那种方式,会不会好一点,对用户来说基本是无感刷新,而非跳转,html可以用ajax请求了load进div
回复 支持 反对

使用道具 举报

16

主题

376

广告币

533

积分

中级会员

Rank: 3Rank: 3

积分
533
 楼主| 发表于 2021-7-16 10:28:05 | 显示全部楼层
河小马 发表于 2021-7-16 07:55' P  p0 t" ~2 j
想法是好的
* `6 y" r( w5 i8 u' @5 p3 x& `. {; Z* ^. w7 Z# v
但是对于tracking来说,多一层跳转,一般会多一层流量损失
( M) f- }$ v  h- j& d
经过测试,直接用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
- F9 I9 E4 n* f7 [! g; P& A额,意义在哪里呢(真心求教),媒体给到流量了就会算钱的呢,况且主流媒体用ng做转发可能被判定为规避审核 ...

( F6 i3 M) i  P' C: ]1.把在每个LP都要做的JS支持、爬虫校验提取出来统一在一个地方做,也就是在编程里边讲的公共组件。5 O" s9 P$ V% q) ^6 r0 @" k
2.使用同一个LP,但是通过JS和参数控制,实现多维度的split测试。9 i8 A5 `# w7 b  C6 a  B2 [- y
3.这个在自己服务器内部流转,应该不会被判定。。。<待测试>! W9 f/ v5 f% @* p) h! S7 W
# I& \( R' ~+ Z1 C/ o  e1 U
4.我这么做主要是出于长久的编程习惯,总想把重复的东西提取出来统一做,让LP专注做自己的事情
回复 支持 反对

使用道具 举报

20

主题

845

广告币

999

积分

中级会员

Rank: 3Rank: 3

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-5-28 22:39 , Processed in 0.062028 second(s), 15 queries , Gzip On, MemCache On.

Copyright © 2001-2023, AdvertCN

Proudly Operating in Hong Kong.

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