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 虚拟卡⚡️FB BM不限额,短id账单户
BINOM TRACKER 60% OFF!比Adplexity还好用的Spy工具ADPLEXITY + ADVERTCN7200W全球动态不重复住宅IP代理
虚拟信用卡+独立站收款全球虚拟卡, 支持U充值各种主页、账单户、BM户(优势)⚡️TikTok企业户,bm户,账单户
IPCola原生住宅IP⚡️$1.8/条双ISP提供TK企业新户老户、谷歌新户老户PTM虚拟卡[全新卡BIN+高返点]FB虚拟卡⚡️消费越多返现越多
FB稳定代理/住宅IP/ADV50打五折 FB个号1块一个寻找顶级电商?AdsBranded等你!TK老户/国内外端口/预审/加白
SX.ORG 高质量代理⚡235+ 地区GG,FB,TK, 欧美源头, 欢迎合作广告位出租8500万高质量住宅IP,助力各种需求
虚拟卡返佣1%,国内持牌机构   
查看: 13538|回复: 10

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

[复制链接]

16

主题

376

广告币

533

积分

中级会员

Rank: 3Rank: 3

积分
533
发表于 2021-9-11 14:09:26 | 显示全部楼层 |阅读模式
本帖最后由 yang。 于 2021-9-14 10:27 编辑
* E' |3 L  e4 T0 T8 W& F7 a4 ?- _" W1 x. m. o% i! y7 A$ ^
开个头-------------持续亏钱ing。。。。
9 s3 M- c1 q* b0 g/ I5 S% I  ]% `& X) a5 m

" Q- r' \( C3 A; i* U这两日有小伙伴觉得我加的一些前端验证有点用,遂求分享代码,这里也整理了一下发出来。' S0 l! L# E& ^, m  O8 z4 Z$ m& Z; x

( k+ u1 O% g& F3 _' x基本效果么 可以查看这篇帖子/ O& N- W! |# v' a
https://www.advertcn.com/thread-99669-1-1.html
! w* a/ H! F7 X: I1 Q9 O) m% h  m: {  g
2 z) F3 j6 M' D+ f7 [/ z; j' C6 x
但是要强调下:脚本永远只能作为参考和辅助,$ Y- y8 k: w0 Z9 U! E
' b- x/ G. R3 A  m2 f
  1. //your track host
    , J8 @/ P/ m# ^+ j8 Q
  2. var trackHost = "";
    6 ?# ]: G1 N- |1 y9 i, [

  3. ) }! E3 G$ I0 Q9 x+ X9 ]* I
  4. /**
    % M* z0 Q( m; [7 I$ k. |* X8 G
  5. * 1.校验浏览器是否支持js,可以作为垃圾爬虫得基础校验方式之一
    4 N& N. Z  Q, z+ {3 ?4 F* I% j
  6. * 使用方式  直接调用jsSuportCheck()
    7 F- l4 h6 X, z2 G: N0 c; D4 j
  7. *      1.trackHost 指向你的追踪器,
    6 x0 e0 j$ k) D5 D0 U0 b7 g5 M$ l
  8. *      2.修改 event1 为你自己的event* l6 L$ t: X' M" }4 I- l
  9. *      3.追踪器上  click-event1 = 不支持js浏览器数量(个人认为是刷子爬虫之类的)
    / y( M# D9 H) I* J# n6 R
  10. *      4.追踪器上  event1 = 支持js浏览器数量
    1 O1 `6 e  E' Y1 q) p/ i
  11. */
    8 s' q1 Y9 d! y% n+ B# x" d
  12. function jsSuportCheck() {. Y) T4 q$ z: x3 t0 O
  13.     var o = document.createElement("img");
      u  u4 G4 B1 |1 Q% y; I
  14.     o.style.display = "none";
    7 Y, \' {& {( G6 b$ c# Y. ^
  15.     o.src= trackHost + '?event1=1';
    5 z) Z  Z1 }% x/ f( M" U* d
  16.     document.body.appendChild(o)
    8 ^6 L) j  h1 E' P+ s
  17. }( r2 k( b" r1 }

  18. ( Z2 d) e+ b' q3 {9 V- A

  19. 9 R0 }9 U( T* T+ Q: |' ~& B
  20. /**
    ( i  t' B- I$ ]7 `/ @% I$ V7 J9 I2 T
  21. * 2.页面存活时间
    9 F9 |6 P0 Q6 f
  22. * 使用方式 直接调用 aliveCheck()4 H1 ~# f: y# R
  23. *      每隔1s向你的追踪器发送一条数据:更新你的event4 U# S. `$ }8 t. x( K" C! P
  24. *      1.trackHost 指向你的追踪器,6 K! d5 ^8 Z. m
  25. *      2.修改 event3 为你自己的event) m2 _/ I  X+ G: G+ Y
  26. *      4.追踪器上 event3 = 页面存活时间
    4 o6 o# ~, H1 m& o$ v
  27. *; b- d, n3 J7 W7 z
  28. * 数据说明:
    : R* c! h" V2 K% Y
  29. *  1.时间为0
    / o. P4 M7 a: s' n& ^
  30. *         1.jsSuportCheck = 支持的 说明用户在1s呢关闭了页面,疑似高级爬虫(支持js的爬虫 如PhantomJS、NightmareJS 等无头)
    * o. `6 \$ m  O
  31. *         2.jsSuportCheck = 不支持的 参考jsSuportCheck: f# n8 N+ L, k4 _
  32. *  2.时间不为0
    9 M2 j  S6 G0 d5 ~& l
  33. *         1.时间很长的:页面打开了,没人管,,这个不好说,我觉得不正常/ B5 b. E3 f, x7 @, f
  34. *         2.时间长短不一的,人类操作概率较大,若普遍存活时间短的,可以考虑LP有问题% K& k" {; b3 h2 s8 {  S1 ?9 N
  35. *         3.存活时间还行,LP ctr也还行,说明 LP还可以
    4 \! c* n/ N" Y! T. l- V% Q
  36. *
    2 b) _* X: w# H
  37. */
    5 Q0 N2 Y- {; o$ X; V4 N1 A

  38. & n# e5 O' n9 b: h
  39. var times = 0;
    7 Z+ N: q8 m) E7 f, o7 I
  40. function aliveCheck() {
    , D1 I# ~# C, s" i- f
  41.     setInterval("checklive()","1000");, W5 k" C; I4 a
  42. }- Y! Z% f6 G+ s: M' A5 z5 S
  43. function checklive() {
    0 H: M; I% i3 V3 E: q8 d. l' i- `
  44.     times += 1;
    8 D# v$ Z" t3 e# ]3 O
  45.     var o = document.createElement("img");
    * O3 i5 R, ?1 j  W$ E" g. N) |- V
  46.     o.style.display = "none";
    4 ~! T  f: x/ t- W
  47.     o.src = trackHost + "?event3=" + times;  Q1 a% u1 p# D* x3 q1 h5 n
  48. }6 }  D' `# c$ r* F2 I) C& H( R
  49. - _' g6 O6 M. }( m6 q$ b- Q' [

  50. 4 X* m6 D" b. q
  51. /**2 x( c7 [' e4 |0 }. n% B% Y; }
  52. * 谷歌验证
    9 |1 L7 @" z6 b2 A2 ]: y- {( Y$ B$ X
  53. * 个人觉得有前边的已经差不多了,所以这个已经没在用了,有需要的自己取# a; d: X. P, ?; R- V' G4 i
  54. *
    ' F* }) @& c3 m: S
  55. * 需要自己编码一个后端服务,用于同谷歌服务器通讯,返回score; D; v' k. T: i# e4 [" t
  56. */
    / i4 i7 d6 Y- t, O/ @7 {' r
  57. //申请的grecaptcha前端token1 Y/ [7 o6 K4 `' N1 ~
  58. var token = "";; ]" a/ \1 p% W8 D
  59. //你的grecaptcha后端服务器地址2 d- v7 K& D1 `3 G  i. J
  60. var grecaptchaPostServer = "";. a/ S' o7 U9 f
  61. function recaptcha() {4 F9 B% k) K; f. W
  62.     grecaptcha.ready(function() {
    2 y, s) n) P/ f0 g4 H. |# P
  63.         grecaptcha.execute(token).then(function(token) {
    1 m5 _2 m; `  g* h1 U3 Q1 u- c
  64.             var ip = decodeURI((RegExp('ip' + "=(.+?)(&|$)").exec(location.search) || [, null])[1] || "");, v2 Q% Q: n  I% k% V
  65.             var o = document.createElement("img");
    4 x$ z# m& P+ H  N
  66.             o.style.display = "none";9 {# G& m$ \% m
  67.             $.ajax({
    & r+ p+ |# Z( n- j
  68.                 url: grecaptchaPostServer,9 [' C/ i5 ]# J7 f6 N( }$ f' j
  69.                 type: 'POST',
    : A% j4 `. Z7 B) j; [
  70.                 data: {"token":token,"ip":ip},
    ( Q- x' `2 Y8 T
  71.                 success: function(data) {
    2 N; e- X) _% ^" d
  72.                     if(data.score > 0.4){
    . H6 ~3 H) C5 C/ }6 P9 Z
  73.                         score = 1;; m: G/ ~0 I; F
  74.                     }else{+ u) @5 @$ b8 E2 m  b4 q4 z; U9 m
  75.                         score = 0;
    * G% W6 ]1 o1 t
  76.                     }
    * U- q8 a3 a" z# v5 q
  77.                     o.src = trackHost + '?event2='+score;
    : x. p' Y% T) `; S+ i; i1 \6 U
  78.                     document.body.append(o)# e! K, Y2 C( e
  79.                 }& Z5 d3 F  g. X& L" q3 ?
  80.             });+ d4 G% [1 B2 v8 t* ?) l: Y& h1 [

  81.   t0 q  s, I  a4 Z; r% B. \' a
  82.         });0 K; X* m4 e7 f
  83.     });
    1 {8 ^8 I( j" t& o
  84. }
复制代码
; N! ^: I/ y$ l

! U& r' a2 W3 G7 [. B" R$ P9 [: G! M5 H% [, Z& N; l, ~
校验都十分基础和简单,各位新上路的小伙伴们看需要自取即可4 w" Y& ~" B& c: d

8 ]' K. F* u$ f. C# c) Q4 s! z! ]
( v. F$ Q6 M, @6 b& K! f3 f8 k/ r
% V3 J3 ]) M6 \- k
: m& Y# |6 u5 P' Q3 A

0 m; G6 A- k" ]/ Q7 s" A9 E: N% ~

本帖子中包含更多资源

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

x

评分

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

查看全部评分

相关帖子
回复

使用道具 举报

9

主题

1020

广告币

1427

积分

高级会员

Rank: 4

积分
1427
发表于 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 | 显示全部楼层
补充下:: d6 S, X1 R+ O! s- F
今天同时跑几个campaign,发现追踪器负荷有点高,查看lp页面的时候发现页面时长统计的请求会502,应该是数据量大,加上这个请求太过频繁导致,遂将; s6 q2 M7 }5 d# h- H  y2 ~8 z
  1. var times = 0;
    ( A0 n; N5 c  O6 L, `7 [
  2. function aliveCheck() {$ V: P, [: \/ y. \
  3.     setInterval("checklive()","1000");% J0 S' b6 Y# I. i2 Z& u
  4. }
复制代码

. N& Y8 e; z0 O修改为:
9 b: ^: z( _  H6 r& Z+ Q
  1. var times = 0;6 U0 D4 L" v5 k9 `' E  Q  G$ {
  2. function aliveCheck() {+ Y9 u7 }6 \6 _8 X
  3. //请求频率从1s提高到5s一次,,5000是毫秒 = 5s. J/ v6 F% k5 O& E5 f
  4.     setInterval("checklive()","5000");
    - y) |" d* i* D8 ]
  5. }
复制代码

3 O  w" B3 s# D0 K/ _* ?0 n追踪器压力明显降低。。。。
3 G  b0 L( X# _8 c/ G6 Q
1 b) H8 V8 i/ O# m4 M0 N4 B这个看各位的需要,如果是高富帅顶配服务器当我没说,,,但这个统计存留时长的,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:20
1 d8 T& O1 b' v0 s补充下:
" {7 s( y+ k) J" r今天同时跑几个campaign,发现追踪器负荷有点高,查看lp页面的时候发现页面时长统计的请求会502, ...

9 }# z+ f- t6 f3 J4 j  e; r* b虽然看不懂但是感觉很厉害云追踪器可以用吗,前端技术为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
% g6 `" o# O$ R! n3 k* j虽然看不懂但是感觉很厉害云追踪器可以用吗,前端技术为0,问下这个是js 放在lp上的吗? ...

# y4 w* A- {, o4 D9 W& `追踪器一般都支持自定义事件  binom里叫事件 event,这个你可以查看一下你用的追踪器的文档。
1 B7 U" y) t* d' o/ X( Z这个就是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/ m& f/ g. r% i# q$ T' t4 G
追踪器一般都支持自定义事件  binom里叫事件 event,这个你可以查看一下你用的追踪器的文档。8 }' J& [* x% K# k4 E3 D
这个就是js ...

) o4 ?, Z& Q7 S+ g1 I0 D" j" W3 b老哥能说明白点吗?在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:221 N0 |0 `' t& I, T8 m+ o) I
老哥能说明白点吗?在LP哪个位置调用、怎么调用
( z' B3 K4 z. M/ Y) q3 U
放在头部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
  \5 L7 U- ^+ Z% `" f放在头部head标签中,用script标签包裹,或者放在最下边,body内,script包裹,调用注释里有 ...

7 M" b( f. A5 z谢谢回复,已经用上了
回复 支持 反对

使用道具 举报

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-2-1 21:41 , Processed in 0.055331 second(s), 15 queries , Gzip On, MemCache On.

Copyright © 2001-2023, AdvertCN

Proudly Operating in Hong Kong.

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