AdvertCN - 广告中国

 找回密码
 立即注册

QQ登录

只需一步,快速开始

PropellerAds
Google-Bing-Mediago-Criteo开户
⚡️按条S5代理⚡️静态⚡️独享⚡️5G广告专用虚拟卡/U充值/高返点皇家代理IP⚡️#1性价比⚡️
Mediabuy⚡️玩家开户首选【鲁班跨境通-自助充值转账】FB/GG/TT❤️官方免费开户Affiliate 全媒体流量资源⚡️
Taboola/Outbrain /Bing⚡️一级代理开户投流-7*24h❤️人工在线【官方】❤️搜索套利买量投流开户独立站⚡️开户投放
⚡️AdsPower:安全不封号,高效自动化⚡️E.PN 虚拟卡⚡️FB BM不限额,短id账单户BINOM TRACKER 60% OFF!
比Adplexity还好用的Spy工具ADPLEXITY + ADVERTCN7200W全球动态不重复住宅IP代理虚拟信用卡+独立站收款
全球虚拟卡, 支持U充值Facebook 批量上广告尤里改 - FB 稳定投放免费黑五教程(持续更新、欢迎交流)
FB 三不限源头 - 自助下户充值转款各种主页、账单户、BM户(优势)⚡️TikTok企业户,bm户,账单户提供TK企业新户老户、谷歌新户老户
PTM虚拟卡[全新卡BIN+高返点]FB虚拟卡⚡️消费越多返现越多最大欧洲Nutra网盟BA找量优质住宅/移动代理/高匿名/高性能
TK白名单老户|兼职广告可投⚡比特指纹浏览器+云手机, 4.5折起T3NZU:定义应用网盟新时代 FB个号3块一个
寻找顶级电商?AdsBranded等你!TK老户/国内外端口/预审/加白广告位出租8500万高质量住宅IP,助力各种需求
虚拟卡返佣1%,国内持牌机构   
查看: 13490|回复: 10

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

[复制链接]

16

主题

376

广告币

533

积分

中级会员

Rank: 3Rank: 3

积分
533
发表于 2021-9-11 14:09:26 | 显示全部楼层 |阅读模式
HuiTong虚拟卡
本帖最后由 yang。 于 2021-9-14 10:27 编辑
4 X: W" q! A% t' O" A  H; ~% B
0 g  B1 A2 \# K  z. |开个头-------------持续亏钱ing。。。。* G# F$ w  X% X# r  q3 w+ L. O
& c. p9 h0 |" ~3 g

1 a0 ~/ y- a, W) v% z$ }这两日有小伙伴觉得我加的一些前端验证有点用,遂求分享代码,这里也整理了一下发出来。  |! r& q" U) V  i. o1 N" U/ D
% z! w2 \4 _' h. v6 i' N
基本效果么 可以查看这篇帖子! B9 D) P" I. O3 d. ^
https://www.advertcn.com/thread-99669-1-1.html
6 K% p" I: e7 i* o+ k% x+ Q+ E0 \, b- m0 f# ^( F) E& |/ E
* M- f) X0 _! Z2 B. q4 ?
但是要强调下:脚本永远只能作为参考和辅助,
2 @, U6 {; u( O3 J$ Q1 G
% y( H1 T. y' P9 L3 ~
  1. //your track host
    & g- ?1 }& Q5 q1 {9 e
  2. var trackHost = "";
    1 ~) s6 e& {( x9 D  S. q
  3. $ B* R* w' ^: T' S' _6 f% F5 e
  4. /**
    ! R  a" }# Y5 j5 O# m! o4 t
  5. * 1.校验浏览器是否支持js,可以作为垃圾爬虫得基础校验方式之一& x7 m' O+ `& c6 j. ~9 `
  6. * 使用方式  直接调用jsSuportCheck()
    0 x. H- J" a; ]. x1 a4 Y
  7. *      1.trackHost 指向你的追踪器,/ K$ J# c: R" V4 E- |1 J# Z
  8. *      2.修改 event1 为你自己的event5 U+ Q+ }7 I- c
  9. *      3.追踪器上  click-event1 = 不支持js浏览器数量(个人认为是刷子爬虫之类的)% Z8 F0 B: `4 J) @
  10. *      4.追踪器上  event1 = 支持js浏览器数量; m* Q$ F* Y$ ?  A
  11. */
      e- W+ r# I0 J3 ]% \) p- ?
  12. function jsSuportCheck() {0 z4 k  C# d! Q
  13.     var o = document.createElement("img");- d* J8 `7 X5 J' s
  14.     o.style.display = "none";
    - S" W  m( j" G) T4 {% N5 M4 J
  15.     o.src= trackHost + '?event1=1';+ Q! l% s6 _; G* h( O2 I* m
  16.     document.body.appendChild(o)
    1 ]& p0 ?3 n* T5 ^! w0 N9 y
  17. }2 ~1 {7 V, ~; V  r% l0 q

  18. ) ~+ ~1 x- L& T# a2 D5 I
  19. ( D; ^9 U: K; p$ R3 w- ?/ c) \( w
  20. /**
    9 I. H9 I/ i8 [4 @1 d
  21. * 2.页面存活时间2 m/ _6 [/ H* c. C
  22. * 使用方式 直接调用 aliveCheck()) i9 H1 n& G# h1 c
  23. *      每隔1s向你的追踪器发送一条数据:更新你的event3 H) E& x: c. c4 L
  24. *      1.trackHost 指向你的追踪器,
    & H/ @2 l& Q9 E) \" M% u
  25. *      2.修改 event3 为你自己的event1 ^" S, E& A+ `# V/ ]8 @0 V: p
  26. *      4.追踪器上 event3 = 页面存活时间
    - R+ E0 A3 d: x4 r# c8 y' X
  27. *- W* O5 q. g4 V" o8 F4 z6 u# q! B
  28. * 数据说明:
    - a( X1 B' s% ~. V6 E# R6 `; O
  29. *  1.时间为0% s  j& z" E/ f. c! k5 X
  30. *         1.jsSuportCheck = 支持的 说明用户在1s呢关闭了页面,疑似高级爬虫(支持js的爬虫 如PhantomJS、NightmareJS 等无头)8 w# n( d* l  o5 H) z6 t
  31. *         2.jsSuportCheck = 不支持的 参考jsSuportCheck
    4 ]8 ~5 M, d, ^
  32. *  2.时间不为09 t8 L; j0 P! v
  33. *         1.时间很长的:页面打开了,没人管,,这个不好说,我觉得不正常! D1 p% l, P+ g" F9 [& c# M: V! [: m
  34. *         2.时间长短不一的,人类操作概率较大,若普遍存活时间短的,可以考虑LP有问题
    $ s, k6 n% {/ G/ z1 O/ ]
  35. *         3.存活时间还行,LP ctr也还行,说明 LP还可以9 u/ l9 w' F* {& _! J
  36. */ U( Q2 M7 f/ k  U; B
  37. */& H6 |7 Q3 `% h; r: J5 d
  38. 6 p8 l  Y0 u6 C2 B6 J
  39. var times = 0;
    6 ~2 o2 c: O: e$ ]
  40. function aliveCheck() {, o' ?5 H/ @7 B6 _0 N' t
  41.     setInterval("checklive()","1000");7 a1 C3 K% U$ u( z
  42. }! `, o. _, s/ h* O: ^) W+ f3 w' z" m
  43. function checklive() {
    1 R7 {: T" o/ o# W" u5 m
  44.     times += 1;- m* W$ a7 @, A9 w5 E( p# l' d
  45.     var o = document.createElement("img");
    0 G6 h3 @9 b/ A' R' m9 T- c  Z
  46.     o.style.display = "none";5 A9 m0 r4 k+ q$ N& M- \1 c
  47.     o.src = trackHost + "?event3=" + times;' f- Q2 E/ v% B8 {
  48. }
    8 a# ]! l4 e- |8 ]8 a' o: z
  49. 2 W2 i+ i# ]$ h# l4 C+ {$ z

  50. ! N0 T0 h# D: ~  J, u( P
  51. /**
    # |% e$ k2 D3 i# t) |
  52. * 谷歌验证
    ) ?5 F# N! K7 M$ o. x- \7 S1 n7 P7 @
  53. * 个人觉得有前边的已经差不多了,所以这个已经没在用了,有需要的自己取. K) \5 B% R) A# l  v
  54. * . ]% d, Y, t/ k: ~' s( F
  55. * 需要自己编码一个后端服务,用于同谷歌服务器通讯,返回score( L) F0 p9 s- k9 Z7 x
  56. */, ]) T' ?+ A) ?1 T2 V
  57. //申请的grecaptcha前端token
    # b/ G! _4 Y/ ^$ w! y: y
  58. var token = "";2 Z: {2 X- d! q( p5 ~3 q3 H+ z9 D2 j8 F
  59. //你的grecaptcha后端服务器地址
    # D- v0 d4 S5 N; t$ O5 s
  60. var grecaptchaPostServer = "";
    # F$ T( x! i: t3 a8 V& v% p$ N0 x
  61. function recaptcha() {. M- R4 A* _0 z) \
  62.     grecaptcha.ready(function() {
    7 M- O. T! z5 F- X6 l3 Q; H
  63.         grecaptcha.execute(token).then(function(token) {
    9 q2 ?# T+ X  A, Q) B
  64.             var ip = decodeURI((RegExp('ip' + "=(.+?)(&|$)").exec(location.search) || [, null])[1] || "");
    ' r' C( `8 z4 k1 r" N
  65.             var o = document.createElement("img");
    2 G5 f( A- i( [) j8 M  J
  66.             o.style.display = "none";! v/ ^/ J: w: O8 M+ e
  67.             $.ajax({
    + U7 ?! ?/ ^, x9 ~
  68.                 url: grecaptchaPostServer,7 k: I  Y! @* Q5 w2 ]' `
  69.                 type: 'POST',  O+ H9 y( b7 M- `% w' y' }4 t! f6 |
  70.                 data: {"token":token,"ip":ip},+ v; x' K- k9 V0 _
  71.                 success: function(data) {3 y; f# M1 t0 q
  72.                     if(data.score > 0.4){
    5 ~5 b# K. k4 |1 ?/ a( f1 f
  73.                         score = 1;
    ) d3 t5 |/ [- {' `3 x, s
  74.                     }else{& L& c' m6 S! C7 s+ y2 {5 N6 j
  75.                         score = 0;5 z  X4 _% |- t/ E& b: P
  76.                     }* p7 I0 ?- J, k4 L" x
  77.                     o.src = trackHost + '?event2='+score;
    7 @% W4 g6 [( Y* _
  78.                     document.body.append(o)7 ?9 k" f! q+ `2 `, I6 d
  79.                 }
    ( b; p/ S) V/ u7 O3 D, @+ j
  80.             });( C' H. ~( K2 J) u2 ?4 m5 \

  81. 4 O5 Q0 j) X; _' J7 a0 c
  82.         });0 Q. w: x2 X% Q  c* }2 [
  83.     });& e" q; \4 ]- k8 l1 S
  84. }
复制代码
% E! h- D6 G  S% ~# O

- n6 b; p# Y. S/ y6 {& [! [8 }- K/ P7 O3 N: W+ Q6 k
校验都十分基础和简单,各位新上路的小伙伴们看需要自取即可
6 O, E6 A# d3 Q1 P  g/ W; ~' [4 Y) ~
% m, U5 i' A2 M
. F. E0 t2 m3 [% F4 ~6 P
$ x! O& H' Q2 X! ?; O% l% O( m2 x& r9 c& u
2 x( l$ Y2 e8 O
+ _) e8 F* d. V& ~- S9 `, R

本帖子中包含更多资源

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

x

评分

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

查看全部评分

相关帖子
回复

使用道具 举报

9

主题

1005

广告币

1403

积分

高级会员

Rank: 4

积分
1403
发表于 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 | 显示全部楼层
补充下:
" B: B: J+ \# v& i- ]今天同时跑几个campaign,发现追踪器负荷有点高,查看lp页面的时候发现页面时长统计的请求会502,应该是数据量大,加上这个请求太过频繁导致,遂将
9 f  ?- w, }* v3 f$ v# k
  1. var times = 0;
    * {" k7 A* p( t& J  r! w
  2. function aliveCheck() {8 y/ k; i: M0 O" Y+ x# {
  3.     setInterval("checklive()","1000");
      D, Q  q& O* D) d) d9 D
  4. }
复制代码
! y8 s" M4 O2 k' s
修改为:0 p4 v4 H* C' A. x2 O
  1. var times = 0;
    $ N2 f; \! k/ \" P( E- v- D
  2. function aliveCheck() {
    : Q$ l4 s9 y3 F
  3. //请求频率从1s提高到5s一次,,5000是毫秒 = 5s/ Z- D, Y7 r+ `2 ^
  4.     setInterval("checklive()","5000");
    : O/ H( T) u& j& T8 n
  5. }
复制代码
$ v" _$ i' p/ W  V/ S5 r
追踪器压力明显降低。。。。
+ r% N# v1 c& z/ y, l6 `, f. ^+ S1 w/ W8 T+ p5 j2 [
这个看各位的需要,如果是高富帅顶配服务器当我没说,,,但这个统计存留时长的,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 G; a: K1 A- g! E! s  e9 x
补充下:
" h; n, {+ @1 Q6 E- `今天同时跑几个campaign,发现追踪器负荷有点高,查看lp页面的时候发现页面时长统计的请求会502, ...
3 h$ D% a) B' Q* D: X
虽然看不懂但是感觉很厉害云追踪器可以用吗,前端技术为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" M6 j# L3 b( F8 h& l
虽然看不懂但是感觉很厉害云追踪器可以用吗,前端技术为0,问下这个是js 放在lp上的吗? ...

' c  |" f  B& m追踪器一般都支持自定义事件  binom里叫事件 event,这个你可以查看一下你用的追踪器的文档。
: |. Y& [1 r. B& C! j这个就是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
! U$ o! ]; ~( A, a& R( n追踪器一般都支持自定义事件  binom里叫事件 event,这个你可以查看一下你用的追踪器的文档。
0 b3 `9 B, k# Q/ {这个就是js ...

% v" W6 [* F, a# T% g; j( Q老哥能说明白点吗?在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
: b% D6 e& D# u2 a* X' W# t9 P, _老哥能说明白点吗?在LP哪个位置调用、怎么调用
" H6 r3 P4 ^8 w5 m2 T& e$ a5 \
放在头部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+ k- V: Z9 J( d) P+ H
放在头部head标签中,用script标签包裹,或者放在最下边,body内,script包裹,调用注释里有 ...

8 k. Z' `  q( g- f1 o8 W9 x$ e谢谢回复,已经用上了
回复 支持 反对

使用道具 举报

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, 2025-12-24 10:49 , Processed in 0.069884 second(s), 23 queries , Gzip On, MemCache On.

Copyright © 2001-2023, AdvertCN

Proudly Operating in Hong Kong.

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