AdvertCN - 广告中国

 找回密码
 立即注册

QQ登录

只需一步,快速开始

PropellerAds
⚡️按条S5代理⚡️静态⚡️独享⚡️5G⚡️AdsPower:安全不封号,高效自动化广告专用虚拟卡/U充值/高返点皇家代理IP⚡️#1性价比⚡️
Mediabuy⚡️玩家开户首选【鲁班跨境通-自助充值转账】FB/GG/TT❤️官方免费开户Affiliate 全媒体流量资源⚡️
Taboola/Outbrain /Bing⚡️一级代理开户投流-7*24h❤️人工在线【官方】❤️搜索套利买量投流开户独立站⚡️开户投放
FB BM不限额,短id账单户E.PN 虚拟卡BINOM TRACKER 60% OFF!比Adplexity还好用的Spy工具
ADPLEXITY + ADVERTCN7200W全球动态不重复住宅IP代理虚拟信用卡+独立站收款全球虚拟卡, 支持U充值
Facebook 批量上广告尤里改 - FB 稳定投放免费黑五教程(持续更新、欢迎交流)FB 三不限源头 - 自助下户充值转款
各种主页、账单户、BM户(优势)⚡️个人户,bm户不限额,账单户FB企业户,TT老户,GG老户源头PTM虚拟卡[全新卡BIN+高返点]
PTM虚拟卡[OPENAI+全场景通用]FB虚拟卡⚡️消费越多返现越多->Tyver SPY汇聚海量广告创意广告位出租
8500万高质量住宅IP,助力各种需求   
查看: 13402|回复: 10

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

[复制链接]

16

主题

376

广告币

533

积分

中级会员

Rank: 3Rank: 3

积分
533
发表于 2021-9-11 14:09:26 | 显示全部楼层 |阅读模式
本帖最后由 yang。 于 2021-9-14 10:27 编辑 ! }+ a4 \+ q. A( [

/ Q* l( d* H' f) [: w. e开个头-------------持续亏钱ing。。。。
. ^/ \$ @/ @- D+ W, ?8 S& S! s: k" o
: r+ ^- Q1 F+ A4 i& A$ Z
这两日有小伙伴觉得我加的一些前端验证有点用,遂求分享代码,这里也整理了一下发出来。
: F- R) F4 \' E, c; _8 H' E# y" R7 @& t8 |
基本效果么 可以查看这篇帖子
% I" w# l: ^4 |+ @) Ahttps://www.advertcn.com/thread-99669-1-1.html
) L9 P! H/ ^3 }, i% ]  d8 ^
. k/ `8 @; C9 m% w2 Q$ `
+ w1 n6 j. Z4 X. D7 b) J: ?但是要强调下:脚本永远只能作为参考和辅助,
! C6 E9 X; @1 H6 v3 o) I  s/ m* o
4 L6 B% y( K4 C9 h3 k
  1. //your track host
    * Y" G" P; J" J
  2. var trackHost = "";
    ; }) K0 S3 e0 C
  3. , D+ w1 G0 p! N, _
  4. /**
    # k$ j7 M( g, Z! p1 w) Y" \, y2 v
  5. * 1.校验浏览器是否支持js,可以作为垃圾爬虫得基础校验方式之一
    / B, v0 I0 v) ?9 Y
  6. * 使用方式  直接调用jsSuportCheck()
    6 H  W- m/ [$ k5 ~! Z# P! K' v
  7. *      1.trackHost 指向你的追踪器,6 v! z1 y) P$ C4 V0 M
  8. *      2.修改 event1 为你自己的event6 ?, Y: x# t3 a( H, k
  9. *      3.追踪器上  click-event1 = 不支持js浏览器数量(个人认为是刷子爬虫之类的)
    0 j' z; K2 ]' @# }2 D: H4 G5 v
  10. *      4.追踪器上  event1 = 支持js浏览器数量
    " Q6 y4 t3 x+ t: n6 O% K) l
  11. */& M: w7 r) V) C$ O/ Z! \/ i
  12. function jsSuportCheck() {
    5 y( m+ X& x9 P3 z; Z! s/ D
  13.     var o = document.createElement("img");
    , |1 h+ b9 \2 g4 H/ G  Y
  14.     o.style.display = "none";
    % Y# I( h/ x9 l% N7 ^+ b
  15.     o.src= trackHost + '?event1=1';
    7 ]: @4 p8 H8 ^( ?) y( l9 V
  16.     document.body.appendChild(o)
    5 K+ O% m  l/ \6 k/ u8 e
  17. }
    + z: M* {/ Y, V& \

  18.   C" m$ N+ ]# n8 ^# X
  19. ( {6 }' x0 t/ O
  20. /**
    ( b( s8 b1 c0 z" z' H9 F
  21. * 2.页面存活时间0 ~: u6 m& x8 t, A
  22. * 使用方式 直接调用 aliveCheck()- I- |6 Q! K% m) j" ~7 }
  23. *      每隔1s向你的追踪器发送一条数据:更新你的event
    $ S( Z! T+ w; \. F1 O
  24. *      1.trackHost 指向你的追踪器,
    , }/ R/ {7 R) v6 |( C
  25. *      2.修改 event3 为你自己的event
    ! f3 q$ Y( l; \8 S$ N, r' V$ Q( M; ~
  26. *      4.追踪器上 event3 = 页面存活时间0 Z4 r' G) L" J2 x; r" `6 a
  27. *
    7 J7 Y- M0 p+ F! l# H+ E3 T
  28. * 数据说明:
    1 ]$ c- R4 }- G7 F& b. V
  29. *  1.时间为0; V* z. N+ K- Z- F
  30. *         1.jsSuportCheck = 支持的 说明用户在1s呢关闭了页面,疑似高级爬虫(支持js的爬虫 如PhantomJS、NightmareJS 等无头)" r9 e$ K% T# E6 I" T5 J
  31. *         2.jsSuportCheck = 不支持的 参考jsSuportCheck5 W# V0 U+ Y* M- _" `6 u
  32. *  2.时间不为0
    5 ~. w' E! o/ {
  33. *         1.时间很长的:页面打开了,没人管,,这个不好说,我觉得不正常- @0 h0 ]0 v) C$ ~9 b
  34. *         2.时间长短不一的,人类操作概率较大,若普遍存活时间短的,可以考虑LP有问题
    " B) m6 O+ P. N/ n
  35. *         3.存活时间还行,LP ctr也还行,说明 LP还可以
    , \; |; D! F; v
  36. *. U! l1 H0 O7 v# h+ Q( F
  37. */
      k6 V1 O& j. Y0 B" ^: A
  38. 3 q1 X$ |& }( T
  39. var times = 0;8 c" @, i6 `2 \/ j7 u  F
  40. function aliveCheck() {
    0 R6 P! [. d0 r& O; l3 F
  41.     setInterval("checklive()","1000");0 D  F. w6 O0 N
  42. }
    % A' F) _8 N9 U3 P8 k8 u# A
  43. function checklive() {
    , {' K! w! Q0 ?" X4 r
  44.     times += 1;: B! ?2 b# G, U; y6 A
  45.     var o = document.createElement("img");9 w) {7 g/ @$ j1 P2 H$ O/ G. n% J
  46.     o.style.display = "none";. k" |9 d( H9 q6 F
  47.     o.src = trackHost + "?event3=" + times;  h3 Q! x* b& ^
  48. }
    ( C3 R8 I6 j0 ]1 R
  49.   y2 I$ o# N2 L, p9 l1 V2 a

  50. ( N/ H, S1 I$ J
  51. /**4 }( [) {  P, F* {# l' H  \
  52. * 谷歌验证
    ( X% L, ^! {. E1 p; ~. h" c: e
  53. * 个人觉得有前边的已经差不多了,所以这个已经没在用了,有需要的自己取
    2 o; B3 A+ ~8 [  {
  54. * : }8 F; f% X$ ^9 U7 C
  55. * 需要自己编码一个后端服务,用于同谷歌服务器通讯,返回score
    " n2 k* c/ ~. `, Q2 t; e
  56. */8 ?9 t7 D# A% D+ Y9 I- q! J2 G
  57. //申请的grecaptcha前端token# M4 J# m0 u, U: t
  58. var token = "";
    & M( l" W8 j. W: K( o4 x1 ^
  59. //你的grecaptcha后端服务器地址* ^# A* ^% I' [' i' c. m
  60. var grecaptchaPostServer = "";& g/ B1 {7 x) d  y7 k# l- ?
  61. function recaptcha() {
    4 C9 }/ }0 H) F0 F2 d. H0 G+ ^; C
  62.     grecaptcha.ready(function() {
    ' m# C' D/ J" ^
  63.         grecaptcha.execute(token).then(function(token) {8 c5 Q2 |" n) Y* b) C+ x0 K: m: n' e
  64.             var ip = decodeURI((RegExp('ip' + "=(.+?)(&|$)").exec(location.search) || [, null])[1] || "");
    0 f" K0 Z% w5 [+ H
  65.             var o = document.createElement("img");1 Y: A1 c8 E4 G- V% t  b& v8 h( `) h4 ~
  66.             o.style.display = "none";
    9 h  J+ H" V! _5 T/ S* X
  67.             $.ajax({
    - {% w1 Q7 [2 Q
  68.                 url: grecaptchaPostServer,
    0 l" r( V, V( O: Z( _# _/ U7 P
  69.                 type: 'POST',# Y3 ^) @4 t6 R! R- m- q
  70.                 data: {"token":token,"ip":ip},
    : k" _4 u1 i6 {6 l
  71.                 success: function(data) {
    % b% r; ?4 W! l
  72.                     if(data.score > 0.4){% k4 _* N. _5 i; I% i' @
  73.                         score = 1;
    $ E* @1 L5 i' Z/ r" p
  74.                     }else{7 m  f8 b( g6 S  K" m
  75.                         score = 0;' s8 V( O$ `4 D- e9 `
  76.                     }4 R/ {# Z: r5 S% T, H* N5 [- b4 Q
  77.                     o.src = trackHost + '?event2='+score;! Z# y" a2 s7 \" ~/ i! G  p
  78.                     document.body.append(o)8 w% Y) l9 _2 H5 j
  79.                 }1 f" I- l% I7 h/ y5 l
  80.             });2 y! A* Z7 C. t% z! A

  81. * {! h/ P& I! y, C4 v9 v
  82.         });/ s6 e, A8 J' q3 H1 ~/ H
  83.     });
    6 ^( s: Y- S: a7 B# c# z/ P
  84. }
复制代码
! L: D1 ?. ^; ~$ \& [4 S

% V' P) u* l% Q$ U7 i
  A1 ^6 t) }9 s5 l) R. U校验都十分基础和简单,各位新上路的小伙伴们看需要自取即可
- k+ e7 K: |# T; |1 f' s7 d, _9 r' f
% u1 a7 Q; p& V5 O. |
/ [9 C$ F8 J# d2 J
) |2 F: u% _9 a5 Z7 z8 Q$ ]. l) s) y/ f2 [4 [4 E5 O+ @: c
6 s, W: z* g; U- X! A- A3 _. K
% W$ T1 O* f8 J6 y$ m' L

本帖子中包含更多资源

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

x

评分

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

查看全部评分

相关帖子
回复

使用道具 举报

9

主题

957

广告币

1354

积分

高级会员

Rank: 4

积分
1354
发表于 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 | 显示全部楼层
补充下:
1 F' m  z' a' v6 F1 T9 K) B. [今天同时跑几个campaign,发现追踪器负荷有点高,查看lp页面的时候发现页面时长统计的请求会502,应该是数据量大,加上这个请求太过频繁导致,遂将
' G' P" e% s8 l
  1. var times = 0;6 W& W1 o/ L* V. O* F% y( \
  2. function aliveCheck() {
    - \* J7 r, g4 u  J" ^; q3 P- p
  3.     setInterval("checklive()","1000");8 h+ \! X6 Y% w+ I0 I) ^" W4 C0 }
  4. }
复制代码

" r. [3 `7 k. H修改为:
5 ?5 F2 s! t3 l& J5 V2 ~1 G
  1. var times = 0;
    ! ?( l' W' H, ]
  2. function aliveCheck() {
    8 d6 P1 b) T* L
  3. //请求频率从1s提高到5s一次,,5000是毫秒 = 5s
    # F4 w5 z) @5 z1 w7 c$ R/ ]) o
  4.     setInterval("checklive()","5000");% K: R. `) M. m( F1 W5 c/ {
  5. }
复制代码

6 @' X5 R9 y! W! a0 g追踪器压力明显降低。。。。
' C! E3 d6 B* K& H7 ?# X
2 s: x+ T$ @& O# V* O# b/ h这个看各位的需要,如果是高富帅顶配服务器当我没说,,,但这个统计存留时长的,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:208 p: H( v- |. _* m/ B
补充下:
5 o; I/ Q- C8 Z+ Q* R今天同时跑几个campaign,发现追踪器负荷有点高,查看lp页面的时候发现页面时长统计的请求会502, ...

* u; D9 G" ^# @/ ~3 k6 \虽然看不懂但是感觉很厉害云追踪器可以用吗,前端技术为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
. y' B: b) B/ t虽然看不懂但是感觉很厉害云追踪器可以用吗,前端技术为0,问下这个是js 放在lp上的吗? ...
3 E* w+ o2 D5 v5 P( r' D
追踪器一般都支持自定义事件  binom里叫事件 event,这个你可以查看一下你用的追踪器的文档。* J0 V6 H. p$ ^" q. E6 R( k
这个就是js代码,直接放在LP里 但是记得要调用!!!!!

点评

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

使用道具 举报

60

主题

1146

广告币

1730

积分

高级会员

Rank: 4

积分
1730

社区QQ达人

发表于 2022-1-8 20:22:24 | 显示全部楼层
yang。 发表于 2021-9-14 10:16
$ K' e% W0 C* B: t+ ?追踪器一般都支持自定义事件  binom里叫事件 event,这个你可以查看一下你用的追踪器的文档。
- m$ |' f! q3 _- G这个就是js ...

, B$ x6 u4 |" J& c9 a( {* `老哥能说明白点吗?在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
) p' m! d% R6 Z# I& y4 h% J' f老哥能说明白点吗?在LP哪个位置调用、怎么调用

: t" e: u- r% v7 o放在头部head标签中,用script标签包裹,或者放在最下边,body内,script包裹,调用注释里有

点评

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

使用道具 举报

60

主题

1146

广告币

1730

积分

高级会员

Rank: 4

积分
1730

社区QQ达人

发表于 2022-1-12 15:29:05 | 显示全部楼层
yang。 发表于 2022-1-11 15:56
8 n2 h# a- ]1 O' L) C. _放在头部head标签中,用script标签包裹,或者放在最下边,body内,script包裹,调用注释里有 ...

' p6 ]7 p1 z6 p, x. }9 B& s谢谢回复,已经用上了
回复 支持 反对

使用道具 举报

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-10-22 22:57 , Processed in 0.053992 second(s), 15 queries , Gzip On, MemCache On.

Copyright © 2001-2023, AdvertCN

Proudly Operating in Hong Kong.

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