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海外户、GG老户、TK加白老户
海外CL企业户源头FB虚拟卡⚡️消费越多返现越多最大欧洲Nutra网盟BA找量 FB个号1块一个
TikTok2审户/老户/国内外端口/加白GG,FB,TK, 欧美源头, 欢迎合作❤️Proxy4Free独家住宅IP池❤️免费测试联盟收款/海外资金下发/服贸结汇
域名防红⚠斗篷工具/可试用3天广告位出租8500万高质量住宅IP,助力各种需求虚拟卡返佣1%,国内持牌机构
查看: 13875|回复: 10

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

[复制链接]

16

主题

376

广告币

533

积分

中级会员

Rank: 3Rank: 3

积分
533
发表于 2021-9-11 14:09:26 | 显示全部楼层 |阅读模式
PTMLink
本帖最后由 yang。 于 2021-9-14 10:27 编辑 0 U* P( _0 z" w2 y. ]8 I, M

/ x4 X( h& ^! E* e8 ~, J开个头-------------持续亏钱ing。。。。
- s$ {! P' g. _# M8 r
) T' P+ {$ j' q" _0 \3 c5 B1 ^# Z
这两日有小伙伴觉得我加的一些前端验证有点用,遂求分享代码,这里也整理了一下发出来。
* p9 u8 ^4 R0 R! P
* d# q5 {" H+ y3 K% M5 o9 v基本效果么 可以查看这篇帖子
% \  k* y$ `2 K; @* B9 Lhttps://www.advertcn.com/thread-99669-1-1.html& F$ Y( z# D( z* O  _

" p  r/ v$ G. ]$ N4 h, T5 w
6 K4 L  c# f" C0 K+ n9 D但是要强调下:脚本永远只能作为参考和辅助,
4 V% u) J3 j' i* R% I: o+ [( P( z# x' h2 N3 C, ?3 S9 v% F
  1. //your track host3 U' x! L) G* h1 Z3 I# k3 q
  2. var trackHost = "";
    , O0 r1 k. E" R, @) w% w

  3. 6 w$ H4 Y1 {9 `, p
  4. /**# Z) [' }7 ~! P( ~2 Q
  5. * 1.校验浏览器是否支持js,可以作为垃圾爬虫得基础校验方式之一. f9 t. h2 Z) K8 U
  6. * 使用方式  直接调用jsSuportCheck()
    - D6 [/ P2 K5 i, }1 `
  7. *      1.trackHost 指向你的追踪器,7 Y& s3 o; T" k1 z  E, }9 K
  8. *      2.修改 event1 为你自己的event1 k) b. t8 E3 A: ?2 H; ^
  9. *      3.追踪器上  click-event1 = 不支持js浏览器数量(个人认为是刷子爬虫之类的)
    3 R/ H7 B2 [8 y1 Z( m
  10. *      4.追踪器上  event1 = 支持js浏览器数量
    ; O# P; q) Q9 a  U; |0 p8 m
  11. */; C% `$ L# k: y, h2 Z0 c0 s5 I
  12. function jsSuportCheck() {& J, B# j/ h: _. o/ l3 v
  13.     var o = document.createElement("img");0 L; T( B: D" R1 d# \* r
  14.     o.style.display = "none";
    7 k& _3 Q  X; T
  15.     o.src= trackHost + '?event1=1';: [3 b( n' K  ?% Y
  16.     document.body.appendChild(o)
    " j, h1 g: g5 |2 l% o
  17. }3 _/ c0 z3 T+ T, E! y6 \
  18. 6 j# U& W9 ^2 G  b& q: u
  19. / [; n. W! _( v4 C" l" R; Z& l
  20. /**
    4 J% A5 I+ m- _+ K6 P. s2 l7 E
  21. * 2.页面存活时间
    3 b0 Y. k) s/ x0 B% }
  22. * 使用方式 直接调用 aliveCheck()8 A) ^  k4 L# Y
  23. *      每隔1s向你的追踪器发送一条数据:更新你的event
    8 b* M7 S. \/ L# a3 X* p& E. U1 t
  24. *      1.trackHost 指向你的追踪器,6 h( ^& b& u% K/ }
  25. *      2.修改 event3 为你自己的event
    5 @, o- S; r* b0 X+ w
  26. *      4.追踪器上 event3 = 页面存活时间
    . J& N' H/ y, Y6 r. }0 L( R
  27. *
    & G  C4 U7 M$ c8 |9 B
  28. * 数据说明:" O, w0 q" x% w
  29. *  1.时间为0; X8 F7 o0 P$ r. q, C. T) a
  30. *         1.jsSuportCheck = 支持的 说明用户在1s呢关闭了页面,疑似高级爬虫(支持js的爬虫 如PhantomJS、NightmareJS 等无头)
    - @' R6 J9 |! |8 W- l
  31. *         2.jsSuportCheck = 不支持的 参考jsSuportCheck
    ) \7 }! S/ |3 Q/ T
  32. *  2.时间不为0
    , q- c8 W" \  ~+ f8 j2 o5 Z
  33. *         1.时间很长的:页面打开了,没人管,,这个不好说,我觉得不正常5 a5 ?' l7 ~' m& c' S8 T2 a
  34. *         2.时间长短不一的,人类操作概率较大,若普遍存活时间短的,可以考虑LP有问题4 N  ]- s/ \" i, x
  35. *         3.存活时间还行,LP ctr也还行,说明 LP还可以
    2 I4 Y5 j5 d6 ^
  36. *
      a' K) v6 N; ^6 c& |1 [
  37. */* W% V" R" ?5 X" v( V' z% S

  38. 8 E6 [' \2 A% x% W) j' T
  39. var times = 0;6 T0 @; l. H. Q
  40. function aliveCheck() {# z% h  h1 {) B
  41.     setInterval("checklive()","1000");
    . Y8 W0 t% h6 y% o( l2 ?( b
  42. }
    7 u# p% U+ ~$ x( O6 n. i8 M, S& w
  43. function checklive() {
    / j% V. z7 \9 x! @9 {/ w9 y
  44.     times += 1;
    ) P, `- v2 ?1 y5 t0 n  J9 j# p" z+ }
  45.     var o = document.createElement("img");" I2 c: V. N$ p. u: V# p
  46.     o.style.display = "none";, J; m1 b/ N( E4 f: d
  47.     o.src = trackHost + "?event3=" + times;- O8 P, G" h0 t% D
  48. }
    0 r, A* r; F  E7 \
  49. - i- s2 X5 |( F+ s3 t

  50. 3 i5 I4 F8 A6 i# ~
  51. /**
    - C/ Y0 w3 X9 G7 C" h' R3 P* L
  52. * 谷歌验证
    3 Y7 W9 n& }: e
  53. * 个人觉得有前边的已经差不多了,所以这个已经没在用了,有需要的自己取
    & b4 c  {; C0 I5 M0 [
  54. * " H  [- V$ L, u, c
  55. * 需要自己编码一个后端服务,用于同谷歌服务器通讯,返回score; H( E/ m) ~$ ]; S- Y
  56. */" V* [( D  C+ z3 T
  57. //申请的grecaptcha前端token) n& ?& M2 D4 I0 P5 @5 H6 z2 h
  58. var token = "";
    5 Z0 H5 }# b9 l% k: N! D0 o" o
  59. //你的grecaptcha后端服务器地址
    - w; E* `# t7 w! Q
  60. var grecaptchaPostServer = "";+ D0 ]3 h/ i" |1 k! f* y
  61. function recaptcha() {
    - Y! C, Y) _* K# Y2 p7 _2 `6 C
  62.     grecaptcha.ready(function() {' C  @$ @2 T: l6 ]; T4 c& E4 o
  63.         grecaptcha.execute(token).then(function(token) {
    & F8 l8 z" u& |* J
  64.             var ip = decodeURI((RegExp('ip' + "=(.+?)(&|$)").exec(location.search) || [, null])[1] || "");
    " V' z1 Y- ~5 ~  x9 a9 O
  65.             var o = document.createElement("img");. m% \* ?2 D8 |5 h
  66.             o.style.display = "none";
    9 K1 M. g3 F8 ^+ R
  67.             $.ajax({  r% \3 F9 y+ N9 E7 o" I
  68.                 url: grecaptchaPostServer,9 A4 E6 M1 e" F1 }/ S/ R+ L" ?0 K
  69.                 type: 'POST',
    % }9 d$ |0 M1 ~% P; Q# J5 |2 Z
  70.                 data: {"token":token,"ip":ip},! u$ m( k: n2 @
  71.                 success: function(data) {4 r; t" q2 K2 i' ]( l1 r
  72.                     if(data.score > 0.4){
    ' z# c1 K9 t/ {5 m' m) I" p
  73.                         score = 1;( O/ }" z+ ^+ z2 z, t
  74.                     }else{2 m1 q- b, ~' f
  75.                         score = 0;* a( `$ ^; H9 x. I' k; `9 `6 `
  76.                     }
    4 v0 f" M7 B9 b% a
  77.                     o.src = trackHost + '?event2='+score;
    4 t+ k. G- M) w  p6 i2 S8 w
  78.                     document.body.append(o)
    ! W# f( h- r4 n, l3 Y$ Y
  79.                 }+ d. @* p7 m' [+ x3 O6 c
  80.             });5 {) r$ ]: p' i% [/ Q4 G

  81. ; j1 {: Q% N# _6 j" |
  82.         });7 _( v! q$ S+ P6 y$ `  H
  83.     });$ T# r* I) v* N0 D/ z# X; z' e( N
  84. }
复制代码
& C2 l9 K$ D( k+ v

& o1 P! b% E, F# c5 F$ O* \( V9 G2 \
校验都十分基础和简单,各位新上路的小伙伴们看需要自取即可
* E# R6 R! x" o0 Y
- e9 \$ w2 S7 n' T
- P  V6 u% d) _5 P  r; s0 w8 v8 K$ X; U3 Z4 {  }1 \
! V% J8 c. L; `7 L* \# `% J
- I! q3 b1 Y( x+ z7 ?
' P# A3 B9 x( u; _4 d8 D

本帖子中包含更多资源

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

x

评分

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

查看全部评分

相关帖子
回复

使用道具 举报

9

主题

1108

广告币

1519

积分

高级会员

Rank: 4

积分
1519
发表于 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 | 显示全部楼层
补充下:
/ g9 [" i6 g! {8 g! F" T今天同时跑几个campaign,发现追踪器负荷有点高,查看lp页面的时候发现页面时长统计的请求会502,应该是数据量大,加上这个请求太过频繁导致,遂将! K3 R/ b* j! N! A: Z
  1. var times = 0;
    5 t% z3 Q# P$ L0 e5 j7 L, ^; @. X
  2. function aliveCheck() {  i) \% f1 J& Y( s6 ]7 _" I; E
  3.     setInterval("checklive()","1000");0 t! C( ~# g' x7 s; g* ^
  4. }
复制代码
0 O7 \6 S. i- h
修改为:
# z1 c( U; q" k8 h1 G
  1. var times = 0;' l% D- e' Z  M$ k
  2. function aliveCheck() {
    ( e2 b& |5 K9 S
  3. //请求频率从1s提高到5s一次,,5000是毫秒 = 5s
    : c5 }1 B* Q/ B8 v" t
  4.     setInterval("checklive()","5000");8 z2 H3 j. c8 z' V# ^# b/ T
  5. }
复制代码

- R* U9 o) }5 I" v追踪器压力明显降低。。。。7 ?! q# }, w% H) q, D6 i& N

+ H+ N. m, \5 c* Y6 g# H  u这个看各位的需要,如果是高富帅顶配服务器当我没说,,,但这个统计存留时长的,1s一次的确有点过分细化了,,,,各位可以按照自己的经验调整统计频率

点评

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

使用道具 举报

0

主题

490

广告币

663

积分

中级会员

Rank: 3Rank: 3

积分
663
发表于 2021-9-13 19:41:04 | 显示全部楼层
yang。 发表于 2021-9-11 22:20
- _- g+ {/ ^0 i  v8 X补充下:
; c" d6 R, q# u今天同时跑几个campaign,发现追踪器负荷有点高,查看lp页面的时候发现页面时长统计的请求会502, ...

! U% }/ m8 k; y! M虽然看不懂但是感觉很厉害云追踪器可以用吗,前端技术为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:419 H9 m) T" s0 a$ c6 ]! |1 O& C3 s
虽然看不懂但是感觉很厉害云追踪器可以用吗,前端技术为0,问下这个是js 放在lp上的吗? ...
6 j( T) H9 `. e% u- y4 K2 f) d7 `2 s
追踪器一般都支持自定义事件  binom里叫事件 event,这个你可以查看一下你用的追踪器的文档。
$ Z: o3 @. m' {6 E  ]+ Z# b3 ]2 o+ U这个就是js代码,直接放在LP里 但是记得要调用!!!!!

点评

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

使用道具 举报

60

主题

1148

广告币

1731

积分

高级会员

Rank: 4

积分
1731

社区QQ达人

发表于 2022-1-8 20:22:24 | 显示全部楼层
yang。 发表于 2021-9-14 10:16( y& m# i  Y: o" f$ [9 v
追踪器一般都支持自定义事件  binom里叫事件 event,这个你可以查看一下你用的追踪器的文档。: F" A; r$ D4 R" h' r
这个就是js ...
5 H* _: U5 Z& k5 _: }
老哥能说明白点吗?在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:22; Q0 [1 d  ?/ d7 S  b+ `
老哥能说明白点吗?在LP哪个位置调用、怎么调用

" E3 P! t1 Z4 r1 u8 B放在头部head标签中,用script标签包裹,或者放在最下边,body内,script包裹,调用注释里有

点评

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

使用道具 举报

60

主题

1148

广告币

1731

积分

高级会员

Rank: 4

积分
1731

社区QQ达人

发表于 2022-1-12 15:29:05 | 显示全部楼层
yang。 发表于 2022-1-11 15:56, W2 b+ |4 I) L$ O6 v
放在头部head标签中,用script标签包裹,或者放在最下边,body内,script包裹,调用注释里有 ...
! }8 u) i+ t9 f6 u% p0 `8 j
谢谢回复,已经用上了
回复 支持 反对

使用道具 举报

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-5-11 03:07 , Processed in 0.053975 second(s), 15 queries , Gzip On, MemCache On.

Copyright © 2001-2023, AdvertCN

Proudly Operating in Hong Kong.

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