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/条双ISPFB海外户、GG老户、TK加白老户
PTM虚拟卡[全新卡BIN+高返点]FB虚拟卡⚡️消费越多返现越多高品质·稳定高速纯净IP FB个号1块一个
TikTok2审户/老户/国内外端口/加白SX.ORG 高质量代理⚡235+ 地区跨境债务催收/风险代理高权重Google老户[卖户+筛户等级] 
海外斗篷・智能广告过审率高达 99%DataImpulse⚡️纯净住宅代理仅 $1广告位出租8500万高质量住宅IP,助力各种需求
虚拟卡返佣1%,国内持牌机构   
查看: 13748|回复: 10

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

[复制链接]

16

主题

376

广告币

533

积分

中级会员

Rank: 3Rank: 3

积分
533
发表于 2021-9-11 14:09:26 | 显示全部楼层 |阅读模式
HuiTong虚拟卡
本帖最后由 yang。 于 2021-9-14 10:27 编辑 $ I7 u0 D  v8 `2 @8 F

( ?. _( ?0 D2 @& `) A  t7 v7 R开个头-------------持续亏钱ing。。。。1 n8 A1 X8 s# f7 L8 o/ e' v, I% u

+ N* m9 }" [  z% N! X) q: L1 q" z7 \" V9 h' D
这两日有小伙伴觉得我加的一些前端验证有点用,遂求分享代码,这里也整理了一下发出来。: t( H# Q- N% R. a$ v5 p
3 ]4 C$ h. [) a
基本效果么 可以查看这篇帖子
* r4 b; |! w* Q1 i' Q5 ]1 yhttps://www.advertcn.com/thread-99669-1-1.html9 R4 F# ^) R& [% Q8 e4 r
6 H: z2 o/ w& M; J
3 o. s5 O0 `# Y) K' @( q2 F
但是要强调下:脚本永远只能作为参考和辅助,4 C# i4 T: x9 u+ j6 j

' q1 y$ f3 P5 U$ S- \
  1. //your track host
    / F. ?4 T, K' L
  2. var trackHost = "";6 z5 q, I( i0 b: D9 B

  3. ! Z9 w- p( |8 {$ F; N
  4. /**
      k7 p1 A: a/ N0 e6 [+ k
  5. * 1.校验浏览器是否支持js,可以作为垃圾爬虫得基础校验方式之一. W% R  Y* R" }9 `5 V2 B
  6. * 使用方式  直接调用jsSuportCheck()2 N! _- Z7 S% H7 Z* u0 v' q) k
  7. *      1.trackHost 指向你的追踪器,6 D1 k# o: v3 m1 `
  8. *      2.修改 event1 为你自己的event
    ( b0 V& J4 D/ F. m# `" w/ I1 O
  9. *      3.追踪器上  click-event1 = 不支持js浏览器数量(个人认为是刷子爬虫之类的)9 S, |1 f% }$ ~; A0 X2 p& _, C
  10. *      4.追踪器上  event1 = 支持js浏览器数量
    : n1 [; z- q9 t7 V' a& t
  11. */
    ) e( F& A: X2 h* v$ ~5 W8 Z: W5 j
  12. function jsSuportCheck() {( U+ E5 ?0 Y( c
  13.     var o = document.createElement("img");; v* O: h- e: ]4 o% U
  14.     o.style.display = "none";
    / R! O7 z( a2 x$ g
  15.     o.src= trackHost + '?event1=1';
    2 \& a- }0 t$ i) o+ y% ^% l+ H
  16.     document.body.appendChild(o)
    * l; r- Q8 N1 r/ a7 T) M/ e
  17. }
    / x. A9 z4 R, g2 q) k
  18. 8 i/ h6 M5 O- F

  19. * d1 ]+ \( W5 G$ x( `) J) |
  20. /**, r" ~' S6 l2 \: e4 @' ^% J8 L
  21. * 2.页面存活时间% E2 M) b, }) X
  22. * 使用方式 直接调用 aliveCheck()9 C/ }& d) ?  D1 Q. p
  23. *      每隔1s向你的追踪器发送一条数据:更新你的event, b8 H: k) n6 @& l# D  W, _
  24. *      1.trackHost 指向你的追踪器,
    5 P! O5 X- M* |9 ?% T4 v
  25. *      2.修改 event3 为你自己的event
    2 s7 s; U) `* s
  26. *      4.追踪器上 event3 = 页面存活时间* H- X2 @/ K0 J( J+ A% E
  27. *
    & g5 ^% ~2 P2 z. P& [5 g( r
  28. * 数据说明:! a& `/ `  p2 O
  29. *  1.时间为0
    4 {2 V9 S: V9 q/ E. @, N9 R
  30. *         1.jsSuportCheck = 支持的 说明用户在1s呢关闭了页面,疑似高级爬虫(支持js的爬虫 如PhantomJS、NightmareJS 等无头)
    / M) ?: E2 G  E: r
  31. *         2.jsSuportCheck = 不支持的 参考jsSuportCheck
    6 U# _( G$ L4 C  h
  32. *  2.时间不为0
    ' @9 O* x8 s3 a# C
  33. *         1.时间很长的:页面打开了,没人管,,这个不好说,我觉得不正常
    & G. s8 f; ~" r; W  v1 ~
  34. *         2.时间长短不一的,人类操作概率较大,若普遍存活时间短的,可以考虑LP有问题5 _' N, o- d; A6 N. w
  35. *         3.存活时间还行,LP ctr也还行,说明 LP还可以
    & ?* S9 ]8 r0 e% V$ y9 |
  36. *
    8 N- E( ]$ P1 i3 a( t
  37. */
    7 k3 [6 v0 {* t- J# K4 C6 G8 p6 Z9 p
  38. ' S: T+ Y0 T5 c# r. @
  39. var times = 0;  a# S% A+ c* [" w, C  k) j; ~
  40. function aliveCheck() {- J* N7 G. D  N# t% u
  41.     setInterval("checklive()","1000");7 ]6 F% m7 R- C5 a* I
  42. }
    2 p$ M% u' G7 b
  43. function checklive() {, I! B5 Y# ?) t, l0 N, G
  44.     times += 1;' F3 r$ e5 m' w7 w  A) O- m
  45.     var o = document.createElement("img");4 S' ^: S1 o/ v
  46.     o.style.display = "none";
    & |: S0 }) T# b! S: m
  47.     o.src = trackHost + "?event3=" + times;. b1 W* p4 u4 i" f3 N" r
  48. }
    ( f2 ?: v: P, w( t9 }2 U7 H% J

  49. ' H# b4 K( h2 O

  50. 9 _; [- U! w" v4 G* J) o2 s. M1 y
  51. /**
    6 M/ z% G8 ~2 D& M. P% R
  52. * 谷歌验证" ~0 G; G. z7 C; {0 I4 v0 I+ k
  53. * 个人觉得有前边的已经差不多了,所以这个已经没在用了,有需要的自己取5 m& u7 D* m& A1 j* D& u0 y
  54. *   U" D6 x% T& P# [7 Z: O) w" J
  55. * 需要自己编码一个后端服务,用于同谷歌服务器通讯,返回score3 q. ?0 u. f. D/ E
  56. */8 W& K& ]  K7 M( N% J
  57. //申请的grecaptcha前端token; M$ R) x& Z) h/ w* u+ L0 l6 d& x' W* M
  58. var token = "";0 l' U/ ?8 B; K8 y, t9 n. L
  59. //你的grecaptcha后端服务器地址
    5 h1 N9 _" @. g. q
  60. var grecaptchaPostServer = "";+ s$ `# M% o* R- P) p& A7 |) P
  61. function recaptcha() {
    5 F& b7 m2 e% J1 d3 N5 ^1 N
  62.     grecaptcha.ready(function() {
    0 S) Y3 m* S6 U
  63.         grecaptcha.execute(token).then(function(token) {
    3 t! a, p1 g2 g! [/ g0 ?8 |
  64.             var ip = decodeURI((RegExp('ip' + "=(.+?)(&|$)").exec(location.search) || [, null])[1] || "");# k% z5 ]& F8 c% o5 }
  65.             var o = document.createElement("img");! K. g4 M5 W2 ]/ j' c  x& N& \
  66.             o.style.display = "none";* e& f+ s8 J4 P  K. j) o) R+ U
  67.             $.ajax({4 s% D( a) S6 j. A' G0 C- B
  68.                 url: grecaptchaPostServer,3 K; p3 C+ _8 b+ w$ p
  69.                 type: 'POST',* Y- i* l7 d0 f0 e, O9 w3 w
  70.                 data: {"token":token,"ip":ip},% [6 t+ {# |- s$ }
  71.                 success: function(data) {
    6 t; ?9 M5 C3 m8 P4 j
  72.                     if(data.score > 0.4){
    9 ~- K" c( y# B3 j
  73.                         score = 1;
    5 x9 Y/ F" ^# B# \; v1 h. h
  74.                     }else{' B% l8 _3 n9 _# g3 A
  75.                         score = 0;
    ' |7 E* T9 j6 {) B' v& \
  76.                     }
    ) M& R6 v: d. u% `0 ^! a' l
  77.                     o.src = trackHost + '?event2='+score;: {) f' U* `# U1 B
  78.                     document.body.append(o)" L- V$ F: ~4 [" ]  t/ j1 j
  79.                 }6 `4 \" n, z; \3 r2 v
  80.             });
    / y6 N8 L' X0 M

  81. ' E' g  m9 F5 m% ^
  82.         });
    ! l- S2 |8 a9 B
  83.     });
    , U& E/ ~7 G6 T( A
  84. }
复制代码
( C$ S! ]3 S) |; k

. E* U. W9 P+ t* p8 @" n, r4 A( [
* m5 d3 F6 q8 t校验都十分基础和简单,各位新上路的小伙伴们看需要自取即可! L/ k( c$ Y/ g

; w1 H2 [) \- Z2 g) d0 i+ f; B/ I  [9 v! f
' Z+ p. J+ K+ \; ]$ n4 p

5 @& J# n2 P" C. v  D/ r- }, s% C5 d! L" H+ E0 r- @
7 \, S% {& |* t- E" K/ k7 r! S

本帖子中包含更多资源

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

x

评分

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

查看全部评分

相关帖子
回复

使用道具 举报

9

主题

1061

广告币

1469

积分

高级会员

Rank: 4

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

使用道具 举报

1

主题

253

广告币

296

积分

初级会员

Rank: 2

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

使用道具 举报

16

主题

376

广告币

533

积分

中级会员

Rank: 3Rank: 3

积分
533
 楼主| 发表于 2021-9-11 22:20:28 | 显示全部楼层
补充下:3 i) v% p4 u1 G/ |3 L/ A. @
今天同时跑几个campaign,发现追踪器负荷有点高,查看lp页面的时候发现页面时长统计的请求会502,应该是数据量大,加上这个请求太过频繁导致,遂将
  B$ c2 @7 Y/ `% D$ a* x: _5 _
  1. var times = 0;
    7 U* }" x& t8 @, k4 M
  2. function aliveCheck() {
    ! Q: |: n/ K" r6 |3 @) @  r
  3.     setInterval("checklive()","1000");
    4 [# S" _7 F6 E% x0 J* z
  4. }
复制代码
- |; Q) _9 C4 u
修改为:
9 W; R: C5 W% s% [: U5 q. e
  1. var times = 0;$ h+ K' {$ n1 C; q9 Z; k
  2. function aliveCheck() {
    : u2 H% I. [8 G* H3 f; r. ?
  3. //请求频率从1s提高到5s一次,,5000是毫秒 = 5s! h8 Q2 O; V" e, m9 D
  4.     setInterval("checklive()","5000");
    # N' [" e8 T. u
  5. }
复制代码
" K. \. [, z! p1 m; @
追踪器压力明显降低。。。。; t0 _5 a+ r8 S3 J* y" p% e
* u9 u3 U" z2 i3 l1 d
这个看各位的需要,如果是高富帅顶配服务器当我没说,,,但这个统计存留时长的,1s一次的确有点过分细化了,,,,各位可以按照自己的经验调整统计频率

点评

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

使用道具 举报

0

主题

485

广告币

657

积分

中级会员

Rank: 3Rank: 3

积分
657
发表于 2021-9-13 19:41:04 | 显示全部楼层
yang。 发表于 2021-9-11 22:200 X% a0 \( d) F0 ?- k
补充下:3 _4 b6 E0 [$ L; h
今天同时跑几个campaign,发现追踪器负荷有点高,查看lp页面的时候发现页面时长统计的请求会502, ...

7 d6 [- z( ~2 T3 u! s: F+ a" t3 s! u虽然看不懂但是感觉很厉害云追踪器可以用吗,前端技术为0,问下这个是js 放在lp上的吗?

点评

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

使用道具 举报

16

主题

376

广告币

533

积分

中级会员

Rank: 3Rank: 3

积分
533
 楼主| 发表于 2021-9-14 10:16:18 | 显示全部楼层
tonychopper 发表于 2021-9-13 19:41
/ q. W* h* X2 j; D9 I) j虽然看不懂但是感觉很厉害云追踪器可以用吗,前端技术为0,问下这个是js 放在lp上的吗? ...
# W' w: b$ c4 ^- Y/ R4 A% B) G
追踪器一般都支持自定义事件  binom里叫事件 event,这个你可以查看一下你用的追踪器的文档。
% e# m7 X0 @9 M$ ]. t这个就是js代码,直接放在LP里 但是记得要调用!!!!!

点评

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

使用道具 举报

60

主题

1147

广告币

1730

积分

高级会员

Rank: 4

积分
1730

社区QQ达人

发表于 2022-1-8 20:22:24 | 显示全部楼层
yang。 发表于 2021-9-14 10:16
( X9 A# D  C) i追踪器一般都支持自定义事件  binom里叫事件 event,这个你可以查看一下你用的追踪器的文档。, g9 m7 J* j  j6 [
这个就是js ...

) q) k3 ?+ [" h8 o: ^老哥能说明白点吗?在LP哪个位置调用、怎么调用

点评

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

使用道具 举报

82

主题

646

广告币

1200

积分

高级会员

Rank: 4

积分
1200

社区QQ达人

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

使用道具 举报

16

主题

376

广告币

533

积分

中级会员

Rank: 3Rank: 3

积分
533
 楼主| 发表于 2022-1-11 15:56:06 | 显示全部楼层
pitch 发表于 2022-1-8 20:225 g. d0 H8 G* x# ]* c
老哥能说明白点吗?在LP哪个位置调用、怎么调用
8 j3 p& `" U3 Q2 a2 V. L
放在头部head标签中,用script标签包裹,或者放在最下边,body内,script包裹,调用注释里有

点评

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

使用道具 举报

60

主题

1147

广告币

1730

积分

高级会员

Rank: 4

积分
1730

社区QQ达人

发表于 2022-1-12 15:29:05 | 显示全部楼层
yang。 发表于 2022-1-11 15:56
9 ~# n  c8 l+ T  r放在头部head标签中,用script标签包裹,或者放在最下边,body内,script包裹,调用注释里有 ...
5 D* e* \9 G4 E" [, m% e6 Y
谢谢回复,已经用上了
回复 支持 反对

使用道具 举报

1

主题

13

广告币

36

积分

初级会员

Rank: 2

积分
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-3-22 23:48 , Processed in 0.056025 second(s), 15 queries , Gzip On, MemCache On.

Copyright © 2001-2023, AdvertCN

Proudly Operating in Hong Kong.

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