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充值各种主页、账单户、BM户(优势)⚡️TikTok企业户,bm户,账单户IPCola原生住宅IP⚡️$1.8/条双ISP
FB海外户、GG老户、TK加白老户PTM虚拟卡[全新卡BIN+高返点]FB虚拟卡⚡️消费越多返现越多最大欧洲Nutra网盟BA找量
高品质·稳定高速纯净IP FB个号1块一个TikTok2审户/老户/国内外端口/加白SX.ORG 高质量代理⚡235+ 地区
GG,FB,TK, 欧美源头, 欢迎合作❤️跨境债务催收/风险代理高权重Google老户[卖户+筛户等级] 海外斗篷・智能广告过审率高达 99%
DataImpulse⚡️纯净住宅代理仅 $1FB企业户海外户,授信户,TK加白户广告位出租8500万高质量住宅IP,助力各种需求
虚拟卡返佣1%,国内持牌机构   
查看: 19234|回复: 7

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

[复制链接]

16

主题

376

广告币

533

积分

中级会员

Rank: 3Rank: 3

积分
533
发表于 2021-7-15 23:08:27 | 显示全部楼层 |阅读模式
本帖最后由 yang。 于 2021-7-15 23:15 编辑 / F8 O; s3 N% q* j/ l) ?  t: n
( ]: ~  k8 f% v7 |+ ^7 \2 r
在部署LP的时候,大家一般都会做一些校验,比如 爬虫、js支持等,一般要么在每个LP上加上,要么提取公共的JS来做。7 {) a  s' o" b" v% w: b
但是我觉得与其在LP上做这这些校验,还不如在LP前边做,直接过滤到基本的爬虫、js支持这种对LP毫无贡献的流量。
" B: Q' V# f2 p& }/ m6 v# h" G5 c) K! f# Y' b0 g; w0 b4 V
另外对一些莫名其妙的访问,也起到隔离作用,顺便利用下这些流量,万一给你造成转化也说不定呢。
6 o$ {" Q' Z! j: k. J: B5 ?; O" |: w! [4 W9 G
具体做法是:- \) j3 J  |% F) Y1 e/ S
# {2 S2 j" m/ Z
1.前置页面:在nginx下部署一个公有页面,该页面负责接受追踪器的跳转,相当于追踪器的lander页面统统都访问到这个页面<后边说追踪器配置>。
( u; s, p0 M' X) T7 M4 l假设前置页面的访问路径为 http://www.xxx.com/
$ f7 X" o8 y+ N( R6 I4 C2.假设我们有2个LP页面,ng配置的访问路径为http://www.xxx.com/iphone/01/index.html  $ B( d$ \7 J  a( `1 h
http://www.xxx.com/iphone/02/index.html' M: y. U' R; l3 p7 X7 s6 I, k8 r
那么我们在追踪器中设置的LP访问路径为
1 T( W2 p6 B) S8 L6 P* Vhttp://www.xxx.com/?offerUrl=iphone&landUrl=01
: ~2 c; I& t" u% v; N5 W9 @# jhttp://www.xxx.com/?offerUrl=iphone&landUrl=02
8 P5 u: v- r6 T* B# n这里把对应的路径转化为参数,将来发送到前置页面,由前置页面根据规则统一处理
9 Y- w4 l5 a. a+ ]2 s
+ F; ?1 {' ]& e& `; W! G$ }7 p1 ~这里,如果你前端功力不错的话,也可以将一些想做split测试的因子,作为参数传递到同一个页面,由js来处理这些因子,同一个页面也能减少干扰。比如把语言作为一个测试因子,如果我想测试一个在泰国跑的LP,英语和泰语那种受欢迎,那么我就可以加一个lang的参数作为测试因子,在追踪器中新建一个参数为lang=en和lang=th的lander页面地址,就能直接测试语言对LP的影响了。
- o( V9 I* G: m/ G7 o8 m- y: t
  r5 k3 c2 O! l9 f2 a/ q2 ~9 l8 b+ t3 R6 |% W0 F
2.前置页面内容如下# Q- `* x4 R- Z# I
  1. <!DOCTYPE html>0 }0 V& C+ P. I
  2. <html lang="en">* W4 F  a  F: p5 x
  3. <head>
      Q+ q7 q3 X8 Z3 s
  4.     <meta charset="UTF-8">
    : e( Y3 z6 f0 q: [; ^
  5.     <title>Loading</title>. @$ g- r% y6 e6 a) r
  6. </head>+ ^: l+ S7 c5 S8 ~
  7. <body>
    ! D9 U$ K7 g+ O$ i8 T
  8. Loading...
    ' b6 u9 x0 i& D7 y* W" x
  9. </body>
    / \" D" c! Y! D: Z0 h1 g
  10. $ n7 @2 {  S' r$ m# Y- n5 T) [* m
  11. <script>/ c' k& @& c* N8 l
  12.     //因为我是按照offer来建立路径的,假如有个抽iphone的offer,有10个land页面,那么我的nginx目录设置成
    7 [3 T8 s; F: D! K& f0 L2 Y
  13.     //iphone
    ; m+ [$ I* W+ f8 A) x  i
  14.         //01                     http://xxx/iphone/01/index.html
    5 A' u0 P- H+ Z; G- Q) V$ k
  15.         //02                     http://xxx/iphone/02/index.html
    & V) |/ p' H9 b, a- Q3 {* B' \
  16.         //以此类推
    % M$ B, \/ @6 {5 j) y2 r+ S. V
  17.    
    $ q+ Z& m2 P) C$ W  t7 \# c
  18.     # [$ a  M; E* L, b1 E" ^4 j
  19.     + c( x6 q: U9 ]$ O% D3 J6 E2 h# j
  20.     //这里假设我们的offer访问路径是  http://xxx/iphone/01/index.html
    / s- i! n5 ?9 K* E
  21.     //那么我们的offerUrl = iphone,landUrl = 01
    4 I; f% Q. r+ x# f* `" W/ O# H
  22.     & c1 a1 E" U% C( o
  23.     //从url参数中获取设置好的访问参数+ K. n& Q/ M8 c9 d7 q4 `' O$ E2 d
  24.     const toffer = decodeURI((RegExp('offerUrl' + "=(.+?)(&|$)").exec(location.search) || [, null])[1] || "");' ^  X; ]3 p& w. h' c3 d/ n8 {
  25.     const tland = decodeURI((RegExp('landUrl' + "=(.+?)(&|$)").exec(location.search) || [, null])[1] || "");
    9 s$ I7 ^: y. z! N& p% F  k
  26.     . I( R6 V( P! O; ?2 s1 n5 p1 W( Y
  27.     //校验参数是否被传递过来,如果传递过来,则拼接成对应的路径4 \/ Z7 s% Q9 _8 e$ Z; ^1 ?
  28.     const b = (toffer != null && toffer !== '' && toffer !== undefined) && (tland != null && tland !== '' && tland !== undefined);
    " _0 W6 Y6 n7 ?; u3 Y" O) T
  29.     if(b){9 q# s6 s* d. F+ H1 R, i
  30.         setTimeout(function() {
    2 w* b- ]9 |2 \
  31.             var params = funcUrlDel(['offerUrl','landUrl']);6 A. Z' Z# m) {1 k* ]
  32.             // 跳转到真正的LP页面,顺便做一个简易的爬虫过滤
    9 Y! y" ]- s- S5 {
  33.             window.location.replace("/"+toffer+"/"+tland+"/index.html"+params);
    ' c7 i7 a0 \1 h' |2 l8 b  [# o" Y
  34.         }, 300);1 M1 e* |, _2 b* c
  35.     }else{
复制代码
5 i* K# c0 C; l! B  E8 H# z9 B: s2 ]

/ q4 f. _* T+ G3 Z
% M6 m( N& R0 M& l只是一种简易的思路,主要目的是同一处理一些通用的操作,减少LP的工作。& i: v) H/ y% l6 i

3 F, V. i5 d8 U( k. w( V& |4 ?. M: g7 Q( O4 F' l: ]! o

/ U0 A' w- }4 v/ B# E
# F" C/ Q. @$ S: E0 s- T8 q( g
- [& {* |% Y7 F0 p+ F" @# k6 q9 a, [* m4 V( u; w, T( C$ B
相关帖子
回复

使用道具 举报

16

主题

376

广告币

533

积分

中级会员

Rank: 3Rank: 3

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

使用道具 举报

1656

主题

1万

广告币

2万

积分

管理员

宇宙无敌河马天神

Rank: 9Rank: 9Rank: 9

积分
27648

社区QQ达人

发表于 2021-7-16 07:55:02 | 显示全部楼层
想法是好的  n- N4 R) _% j/ c9 _% O
" X+ M5 a! W7 ]5 M, h
但是对于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
- M1 T- V9 C& U) E9 z* O想法是好的
- J0 M# f& i+ f# X+ R6 a, F7 U' z3 e+ z6 _0 Z
但是对于tracking来说,多一层跳转,一般会多一层流量损失
* J4 h; s/ m0 Y8 D
请教下河马大大  如果是使用类似于vue的路由那种方式,会不会好一点,对用户来说基本是无感刷新,而非跳转,html可以用ajax请求了load进div
回复 支持 反对

使用道具 举报

16

主题

376

广告币

533

积分

中级会员

Rank: 3Rank: 3

积分
533
 楼主| 发表于 2021-7-16 10:28:05 | 显示全部楼层
河小马 发表于 2021-7-16 07:55* H# F+ G  Z* ~( ~0 ]9 q
想法是好的
5 m& i8 |& g5 r/ b: ~
6 `9 d: ~1 l5 E* O# @但是对于tracking来说,多一层跳转,一般会多一层流量损失
8 r3 l$ F/ i) J3 }; N9 [  r
经过测试,直接用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
. ]8 ~7 z$ `. {! w6 _额,意义在哪里呢(真心求教),媒体给到流量了就会算钱的呢,况且主流媒体用ng做转发可能被判定为规避审核 ...

% _  K# ]: u) F8 N: J8 O+ j& g1.把在每个LP都要做的JS支持、爬虫校验提取出来统一在一个地方做,也就是在编程里边讲的公共组件。
: R$ P! e+ t: [$ I! p7 m2 X2.使用同一个LP,但是通过JS和参数控制,实现多维度的split测试。
; n! _/ u- D/ E6 V, U, H$ n9 ]  @3.这个在自己服务器内部流转,应该不会被判定。。。<待测试>- ?, l; F& a  f8 {* i& t& e1 |. K

8 X* E$ z8 k$ k; ?: O/ M7 M! t4.我这么做主要是出于长久的编程习惯,总想把重复的东西提取出来统一做,让LP专注做自己的事情
回复 支持 反对

使用道具 举报

20

主题

843

广告币

997

积分

中级会员

Rank: 3Rank: 3

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-4-4 11:27 , Processed in 0.049833 second(s), 15 queries , Gzip On, MemCache On.

Copyright © 2001-2023, AdvertCN

Proudly Operating in Hong Kong.

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