找回密码
 立即注册

QQ登录

只需一步,快速开始

PropellerAds
Google-Bing-Mediago-Criteo开户
⚡️按条S5代理⚡️静态⚡️独享⚡️5G广告专用虚拟卡/U充值/高返点皇家代理IP⚡️#1性价比⚡️
Mediabuy⚡️玩家开户首选【鲁班跨境通-自助充值转账】FB/GG/TT❤️官方免费开户Affiliate 全媒体流量资源⚡️
Taboola/Outbrain /Bing⚡️一级代理开户投流-7*24h❤️人工在线【官方】❤️搜索套利买量投流开户独立站⚡️开户投放
Google FB TK游戏代投⚡️E.PN 虚拟卡⚡️BINOM TRACKER 60% OFF!比Adplexity还好用的Spy工具
ADPLEXITY + ADVERTCN7200W全球动态不重复住宅IP代理虚拟信用卡+独立站收款全球虚拟卡, 支持U充值
Facebook 批量上广告尤里改 - FB 稳定投放免费黑五教程(持续更新、欢迎交流)FB 三不限源头 - 自助下户充值转款
各种主页、账单户、BM户(优势)IPCola原生住宅IP⚡️$1.8/条双ISPTK加白户/二解户/FB海外户/GG老户海外CL企业户源头
最大欧洲Nutra网盟BA找量 FB高权重耐操个号⚡️稳定过审GG,FB,TK, 欧美源头, 欢迎合作❤️FB企业户海外户,授信户,TK加白户
联盟收款/海外资金下发/服贸结汇⚡️Spend.net — 美元卡仅需$0⚡️比特浏览器+云手机 |防关联防封号Facebook截流, 1 次点击 2 次曝光
广告位出租8500万高质量住宅IP,助力各种需求虚拟卡返佣1%,国内持牌机构 
查看: 13993|回复: 10

[分享] 简单前端JS校验脚本分享

[复制链接]

16

主题

376

广告币

533

积分

中级会员

积分
533
发表于 2021-9-11 14:09:26 | 显示全部楼层 |阅读模式
Deepclick
本帖最后由 yang。 于 2021-9-14 10:27 编辑
6 h8 s3 I/ _9 V4 C4 t  j1 m3 b2 S5 I, L  H+ }5 _9 w+ k( |! Q1 l
开个头-------------持续亏钱ing。。。。
. v+ |; b- j% |6 ~/ y
  r% z; q- Z3 A& i/ d4 b
8 f7 ^; g7 R0 Q5 m. d2 e这两日有小伙伴觉得我加的一些前端验证有点用,遂求分享代码,这里也整理了一下发出来。/ ]( c1 M4 |" L. d" S* K6 K
, d5 k) G  b4 t* o& L% L: r+ e
基本效果么 可以查看这篇帖子
8 E% o# ^! q" E1 chttps://www.advertcn.com/thread-99669-1-1.html5 t0 i' W2 ?! V) N9 P, U
1 w4 w. o2 k' j0 O0 `
2 a7 B* o7 h! Q& n7 A( g4 Z
但是要强调下:脚本永远只能作为参考和辅助,2 t$ k8 L% |6 E9 a/ M+ O! g
5 l/ C1 q& A! y' q. h; h8 y
  1. //your track host7 A, r; e- a1 U  u4 g; W' r; f
  2. var trackHost = "";
    & K3 s: ^# O' w8 x
  3. 7 L) Y$ Z  d( j: b
  4. /**
    3 ^1 E1 _% h& Z2 ~
  5. * 1.校验浏览器是否支持js,可以作为垃圾爬虫得基础校验方式之一; Q% J6 ~7 ?4 c. z6 [
  6. * 使用方式  直接调用jsSuportCheck(): @- N! V- n/ n5 ]2 u8 Y
  7. *      1.trackHost 指向你的追踪器,
    + k6 I2 H. C# o/ k8 z
  8. *      2.修改 event1 为你自己的event
    ) x) l6 j2 \/ \) C: ?2 t- ~( G% K
  9. *      3.追踪器上  click-event1 = 不支持js浏览器数量(个人认为是刷子爬虫之类的)
    ) X; C5 q& ?" V( {- {4 d
  10. *      4.追踪器上  event1 = 支持js浏览器数量) f& I7 D" H( `
  11. */* [& J6 o! g' U# B" z( _
  12. function jsSuportCheck() {
    + [3 D/ h& m0 g0 O
  13.     var o = document.createElement("img");
    2 Q  [3 J$ [5 }: M& p
  14.     o.style.display = "none";1 c4 j) N5 [9 P. V8 v0 Z
  15.     o.src= trackHost + '?event1=1';0 M! [( v+ l" S; K& ~3 R
  16.     document.body.appendChild(o): C* D. T! z7 A1 F  g0 s4 s! w
  17. }% G# {/ m  a" v

  18. * ^: K$ l. B) }8 x# ]

  19. + Q* i: C% y8 G% X/ w! j3 l
  20. /**
    ) U% k: t% k) Z5 _7 G
  21. * 2.页面存活时间
    2 N7 J0 m6 w# ]+ \
  22. * 使用方式 直接调用 aliveCheck()3 L2 s/ ?/ v$ D. C% U
  23. *      每隔1s向你的追踪器发送一条数据:更新你的event
    $ W+ l* _3 N4 L% s9 Q# e
  24. *      1.trackHost 指向你的追踪器,
    % N. s; U' T% \4 z# Q# s0 L1 I
  25. *      2.修改 event3 为你自己的event
    6 o- e* \6 P2 O7 t/ b
  26. *      4.追踪器上 event3 = 页面存活时间$ g6 l& N1 L- a
  27. *. y6 v8 u; _# L: v/ Y
  28. * 数据说明:* E1 i; @% f: G
  29. *  1.时间为0
    * s; ?- W0 V4 t% }$ ^1 f$ D
  30. *         1.jsSuportCheck = 支持的 说明用户在1s呢关闭了页面,疑似高级爬虫(支持js的爬虫 如PhantomJS、NightmareJS 等无头)
    % T- V+ `/ H4 m& h* I
  31. *         2.jsSuportCheck = 不支持的 参考jsSuportCheck
    7 t' C# h8 V. ]+ e7 M4 p5 o3 e
  32. *  2.时间不为0
    8 k& y4 z) ?7 f
  33. *         1.时间很长的:页面打开了,没人管,,这个不好说,我觉得不正常
    6 h* D" }. ?% q& D  C) v: M
  34. *         2.时间长短不一的,人类操作概率较大,若普遍存活时间短的,可以考虑LP有问题" N# _2 v) G/ ~2 E2 R
  35. *         3.存活时间还行,LP ctr也还行,说明 LP还可以
    8 @: F" G; W. a; d' G* I
  36. *
    5 T% [& k' h% |2 Z
  37. */
    1 G0 z, T7 E7 D3 |& Y

  38. " q) I3 h6 K; r2 H1 K
  39. var times = 0;
    1 x$ w: T. H, [: w: x
  40. function aliveCheck() {
    ; Q$ {" d: b$ q' B
  41.     setInterval("checklive()","1000");8 U# T8 E, E- S% I7 S; ?! g
  42. }
    0 a% u  _' z: O% y
  43. function checklive() {
    4 c& K( K9 b) O* |
  44.     times += 1;
    ; J5 M4 a8 J4 B$ [8 r) j
  45.     var o = document.createElement("img");
    5 |  E( a" |; [/ n0 B
  46.     o.style.display = "none";, ]* E) V" ~4 i; j% t2 S- {  ]
  47.     o.src = trackHost + "?event3=" + times;
    9 l# j5 ]1 R+ S+ p. V" D, S  t4 \
  48. }
    ; n1 u3 N0 k$ o% H
  49. - p; G* P3 E1 T; h. \

  50. % F/ O) r/ j9 f  B
  51. /**
    . r/ Z7 _# h' y7 N. s
  52. * 谷歌验证
    * ]4 H7 O) p) ^3 `
  53. * 个人觉得有前边的已经差不多了,所以这个已经没在用了,有需要的自己取
    6 F7 ]0 h( N! Z% I6 I
  54. *
    6 U. k1 _& S% z4 R
  55. * 需要自己编码一个后端服务,用于同谷歌服务器通讯,返回score
    - }3 H/ {  E# k" D& W$ M" G
  56. */
    0 N# G% V. g) k, ?
  57. //申请的grecaptcha前端token# f+ t' p+ l! Q4 x
  58. var token = "";% d( W- B/ Z0 U$ ?# K5 A
  59. //你的grecaptcha后端服务器地址4 Z, V- l0 \( |" B
  60. var grecaptchaPostServer = "";3 m/ j/ C5 x  X. G6 a% P! ?8 P" N
  61. function recaptcha() {4 {5 \: r1 c4 N6 s
  62.     grecaptcha.ready(function() {
      W+ o9 R; O; P4 W; E' \
  63.         grecaptcha.execute(token).then(function(token) {& O; k* Q! _8 N2 b- z- o3 w" ~
  64.             var ip = decodeURI((RegExp('ip' + "=(.+?)(&|$)").exec(location.search) || [, null])[1] || "");
    $ C+ Z' A  D8 s& d  C- |
  65.             var o = document.createElement("img");. r, _! l. |% Y( p
  66.             o.style.display = "none";
    ; b/ s1 I# g2 |# N1 M8 ~
  67.             $.ajax({
    5 Z2 I* U# o$ S, Y+ p9 S, |
  68.                 url: grecaptchaPostServer,$ D. W' V- O) h' G% [- c7 ^* b
  69.                 type: 'POST',4 \( S0 X% H! [7 ]9 O* t
  70.                 data: {"token":token,"ip":ip},; E+ v( Z5 m; ~$ J( l9 c
  71.                 success: function(data) {( U4 R+ `- s) Y+ @9 Q% N
  72.                     if(data.score > 0.4){- [1 `; B" T8 b( m
  73.                         score = 1;
    7 V. g, ]8 Y+ T8 b
  74.                     }else{
    . Y2 w1 ^* J& Q0 A' n
  75.                         score = 0;
    4 ]! `, w3 `# q; M, n
  76.                     }
    9 m, N: v6 y" N: k% W
  77.                     o.src = trackHost + '?event2='+score;
    - O. m5 P: f$ n0 M9 [$ Y
  78.                     document.body.append(o): F  m. X* O% ?+ J% z' o; o% w
  79.                 }
    4 v: m. G  }: ]6 z
  80.             });
    ! T$ _3 J6 F' X: i6 g( ~

  81. ' P4 W& ?. U7 x2 Z* s" j/ k8 s
  82.         });- `7 v3 L+ X4 D0 x; M4 U
  83.     });
    2 L! V5 w1 D7 p+ R. i4 l9 y1 @
  84. }
复制代码

) q3 b: p7 i6 @+ V1 S0 U5 ]$ A' m) p, L* L6 b6 n. Y

0 W; z; Z. L- u5 z& k校验都十分基础和简单,各位新上路的小伙伴们看需要自取即可! U5 t9 X) _- s
; l% u" }. b' ^0 P

9 s. C. B1 E: W8 g* L) A: s9 E1 N1 f. q$ q

, Q; Z0 d8 _0 J- K( D2 l, b: t, A, u* a& w5 g9 O( g( J7 m" q

( G6 M+ s2 v, c0 O  Y" G

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

评分

参与人数 1广告币 +20 收起 理由
bobogood + 20 赞一个!

查看全部评分

相关帖子
回复

使用道具 举报

9

主题

1181

广告币

1597

积分

高级会员

积分
1597
发表于 2021-9-11 15:57:06 | 显示全部楼层
回复 支持 反对

使用道具 举报

1

主题

254

广告币

297

积分

初级会员

积分
297
发表于 2021-9-11 18:09:27 | 显示全部楼层
感谢分享
回复 支持 反对

使用道具 举报

16

主题

376

广告币

533

积分

中级会员

积分
533
 楼主| 发表于 2021-9-11 22:20:28 | 显示全部楼层
补充下:
3 H. L- e4 x8 R3 d! d今天同时跑几个campaign,发现追踪器负荷有点高,查看lp页面的时候发现页面时长统计的请求会502,应该是数据量大,加上这个请求太过频繁导致,遂将
* f# Q+ [+ Z* d  h: g  x
  1. var times = 0;6 X" ^) ~+ x% H( V: d
  2. function aliveCheck() {6 @" `+ L; F& B9 M) R
  3.     setInterval("checklive()","1000");
      x7 o. C: `- ?, k7 \) j
  4. }
复制代码
( Q4 M, S5 O7 A4 j& t
修改为:# ^7 _4 S2 o7 \) m+ Q1 p
  1. var times = 0;
    " s- _2 Q6 x$ _6 g5 c
  2. function aliveCheck() {
    ( Z# D5 X: J8 N2 x" e( S
  3. //请求频率从1s提高到5s一次,,5000是毫秒 = 5s
    7 I& X+ Q! W0 s# S
  4.     setInterval("checklive()","5000");
    + w: q8 h4 n+ m' G
  5. }
复制代码

  b  C0 R9 x$ }2 M% W% @, @' Z; P追踪器压力明显降低。。。。
  T3 c; r9 `" ^" D- s; C% \4 A6 x1 B9 U% Y- u4 z+ W
这个看各位的需要,如果是高富帅顶配服务器当我没说,,,但这个统计存留时长的,1s一次的确有点过分细化了,,,,各位可以按照自己的经验调整统计频率

点评

虽然看不懂但是感觉很厉害云追踪器可以用吗,前端技术为0,问下这个是js 放在lp上的吗?  详情 回复 发表于 2021-9-13 19:41
回复 支持 反对

使用道具 举报

0

主题

490

广告币

663

积分

中级会员

积分
663
发表于 2021-9-13 19:41:04 | 显示全部楼层
yang。 发表于 2021-9-11 22:20
+ H$ l" r) t, e+ B补充下:
* Q/ _0 U! n, z3 Q今天同时跑几个campaign,发现追踪器负荷有点高,查看lp页面的时候发现页面时长统计的请求会502, ...
/ b5 |& K+ D; \" b5 S
虽然看不懂但是感觉很厉害云追踪器可以用吗,前端技术为0,问下这个是js 放在lp上的吗?

点评

追踪器一般都支持自定义事件 binom里叫事件 event,这个你可以查看一下你用的追踪器的文档。 这个就是js代码,直接放在LP里 但是记得要调用!!!!!  详情 回复 发表于 2021-9-14 10:16
回复 支持 反对

使用道具 举报

16

主题

376

广告币

533

积分

中级会员

积分
533
 楼主| 发表于 2021-9-14 10:16:18 | 显示全部楼层
tonychopper 发表于 2021-9-13 19:41; @4 ?  c. T3 K: L
虽然看不懂但是感觉很厉害云追踪器可以用吗,前端技术为0,问下这个是js 放在lp上的吗? ...
: Y( L/ E4 R  U% @6 p. T. f
追踪器一般都支持自定义事件  binom里叫事件 event,这个你可以查看一下你用的追踪器的文档。5 I, q8 ]$ F  W, _8 ^" b( B' G
这个就是js代码,直接放在LP里 但是记得要调用!!!!!

点评

老哥能说明白点吗?在LP哪个位置调用  详情 回复 发表于 2022-1-8 20:22
回复 支持 反对

使用道具 举报

60

主题

1150

广告币

1733

积分

高级会员

积分
1733

社区QQ达人

发表于 2022-1-8 20:22:24 | 显示全部楼层
yang。 发表于 2021-9-14 10:16
* R: |, R& P1 {9 h7 E! f追踪器一般都支持自定义事件  binom里叫事件 event,这个你可以查看一下你用的追踪器的文档。6 Y2 X$ Z) W( r" C/ H. B( D+ Z
这个就是js ...
9 o! C! P$ a# k$ c: }) g* U9 i
老哥能说明白点吗?在LP哪个位置调用、怎么调用

点评

放在头部head标签中,用script标签包裹,或者放在最下边,body内,script包裹,调用注释里有  详情 回复 发表于 2022-1-11 15:56
回复 支持 反对

使用道具 举报

82

主题

646

广告币

1200

积分

高级会员

积分
1200

社区QQ达人

发表于 2022-1-8 23:02:54 来自手机 | 显示全部楼层
厉害了!
回复 支持 反对

使用道具 举报

16

主题

376

广告币

533

积分

中级会员

积分
533
 楼主| 发表于 2022-1-11 15:56:06 | 显示全部楼层
pitch 发表于 2022-1-8 20:22, \/ U2 J% ^1 F; q4 O! O
老哥能说明白点吗?在LP哪个位置调用、怎么调用
) }( N9 Z+ N$ z/ H9 D% X
放在头部head标签中,用script标签包裹,或者放在最下边,body内,script包裹,调用注释里有

点评

谢谢回复,已经用上了  详情 回复 发表于 2022-1-12 15:29
回复 支持 反对

使用道具 举报

60

主题

1150

广告币

1733

积分

高级会员

积分
1733

社区QQ达人

发表于 2022-1-12 15:29:05 | 显示全部楼层
yang。 发表于 2022-1-11 15:56/ b' ?8 {% k3 B( \# S+ n* Y- Z, b1 ], B
放在头部head标签中,用script标签包裹,或者放在最下边,body内,script包裹,调用注释里有 ...

3 B7 X: P$ v, H8 k$ S! b, G9 Q8 L谢谢回复,已经用上了
回复 支持 反对

使用道具 举报

1

主题

13

广告币

36

积分

初级会员

积分
36
发表于 2023-3-21 23:23:54 | 显示全部楼层
I just like analyzing with code, what a good and clear job.
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-7-27 07:11 , Processed in 0.078956 second(s), 24 queries , Gzip On.

Copyright © 2001-2026, AdvertCN

Proudly Operating in Hong Kong.

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