AdvertCN - 广告中国

 找回密码
 立即注册

QQ登录

只需一步,快速开始

⚡️按条S5代理⚡️静态⚡️独享⚡️5G⚡️AdsPower:安全不封号,高效自动化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资源,账单户,分享户,国内一手FB企业户,TT老户,GG老户源头海外CL企业户源头PTM全球虚拟卡—进来交个朋友!
PTM虚拟卡⚡️费率透明⚡️额度随心FB虚拟卡⚡️消费越多返现越多【找量】BA独家Nutra单找量虚拟FB卡 ⚡️ 透明条件 
国内外持牌,虚拟信用卡和收付款广告位出租8500万高质量住宅IP,助力各种需求 
查看: 13343|回复: 10

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

[复制链接]

16

主题

376

广告币

533

积分

中级会员

Rank: 3Rank: 3

积分
533
发表于 2021-9-11 14:09:26 | 显示全部楼层 |阅读模式
Lemft
本帖最后由 yang。 于 2021-9-14 10:27 编辑
9 b. d- x$ v' F$ v
! J9 \0 ]# S9 X5 V8 k6 H开个头-------------持续亏钱ing。。。。1 _9 I& w$ _; y! }! |1 z
6 q0 p8 w; J# R8 U+ R9 c

" [, K( |% a  g" S这两日有小伙伴觉得我加的一些前端验证有点用,遂求分享代码,这里也整理了一下发出来。
) @+ E  ~3 m( U5 f, C
; P- C; e) [* d基本效果么 可以查看这篇帖子. I2 {7 A# j) l" P3 @
https://www.advertcn.com/thread-99669-1-1.html' u( T3 f( t. l' \4 p
! x6 `. M- l9 [1 g) k- r
8 t. z8 {4 d5 |+ r
但是要强调下:脚本永远只能作为参考和辅助,
8 s1 Y, K5 y& P0 |; R* }( r: W0 c& v* n5 o9 {8 l  M3 s4 S
  1. //your track host# v2 \, P: F8 [
  2. var trackHost = "";' Z9 N) G3 X, R) h3 Q' d2 V
  3. ; B. A& x/ j/ F' H/ P) b' G' e
  4. /**% ?/ [7 f' s, `" Q$ g
  5. * 1.校验浏览器是否支持js,可以作为垃圾爬虫得基础校验方式之一
    6 n" j# E1 z3 O' D1 @
  6. * 使用方式  直接调用jsSuportCheck()
    ( I; f# d: ?% z7 w  Z9 i
  7. *      1.trackHost 指向你的追踪器,: c" f3 |9 B8 T- M3 J) b
  8. *      2.修改 event1 为你自己的event
    1 M& a" H. J7 |$ G
  9. *      3.追踪器上  click-event1 = 不支持js浏览器数量(个人认为是刷子爬虫之类的)- x  |0 d" K/ n* n+ I$ \+ I
  10. *      4.追踪器上  event1 = 支持js浏览器数量0 b0 R  [$ k: X0 ?' r
  11. */
    * A- C6 r+ N7 I6 k
  12. function jsSuportCheck() {, R" L3 O$ K" f5 l" G8 ~
  13.     var o = document.createElement("img");
    # G$ N/ D  y+ s; Y9 U
  14.     o.style.display = "none";+ l8 n2 t0 H: ?8 w% a
  15.     o.src= trackHost + '?event1=1';) o) p  r2 [0 e5 h) ?! |9 O* @/ |
  16.     document.body.appendChild(o); K, u+ J2 O6 t% [: F
  17. }6 Y' [6 v7 k! ?% f. L! l/ F# A

  18. $ f' r. z% k: n  a

  19.   R( t' v/ f0 X$ x9 X& r
  20. /**
    & J9 g% d. A3 @- Y2 W) I$ f- d- s% t
  21. * 2.页面存活时间$ u$ [- S/ H+ O5 h! C+ F
  22. * 使用方式 直接调用 aliveCheck()
    . F/ B' g& S" z' W) J$ v$ v
  23. *      每隔1s向你的追踪器发送一条数据:更新你的event% a. Z7 ?% x9 I- P/ s$ x: U
  24. *      1.trackHost 指向你的追踪器,% x  e7 {' x7 E+ N
  25. *      2.修改 event3 为你自己的event7 ~* X+ Z3 D+ Q& D( @5 j8 r" N) S- n- M
  26. *      4.追踪器上 event3 = 页面存活时间, j# ]# h7 M; g! }) v& g: l8 I; B
  27. *7 P8 Y& N; L- a
  28. * 数据说明:' V! B; q( K. f
  29. *  1.时间为05 C+ R+ Y7 J0 c2 @; s2 M
  30. *         1.jsSuportCheck = 支持的 说明用户在1s呢关闭了页面,疑似高级爬虫(支持js的爬虫 如PhantomJS、NightmareJS 等无头)
    ; i* \, G7 A; K1 {8 z! @
  31. *         2.jsSuportCheck = 不支持的 参考jsSuportCheck
    7 \! k) z$ P, E% E
  32. *  2.时间不为0
    , ~% u1 q' d8 n2 [6 X
  33. *         1.时间很长的:页面打开了,没人管,,这个不好说,我觉得不正常
    ; x8 n0 ^1 n0 i3 A6 t- N5 r6 o
  34. *         2.时间长短不一的,人类操作概率较大,若普遍存活时间短的,可以考虑LP有问题
    0 v5 x1 ^+ j3 R  L! T
  35. *         3.存活时间还行,LP ctr也还行,说明 LP还可以
    / ^% ?/ i6 d2 {) Z
  36. *2 n3 ]1 C4 a, `) Y- f
  37. */
    : F9 ?1 y% d4 ^7 L

  38. 1 k# X9 ~5 ?$ L# z5 P: f  O
  39. var times = 0;
    : r4 J/ l4 }1 Y$ Y- ~
  40. function aliveCheck() {
    , u# O/ G" t0 ~! v3 v- S- h' o/ v
  41.     setInterval("checklive()","1000");9 R, X! h, u4 X8 K
  42. }5 E; {+ ^* l! }- W3 T% P9 y' Q
  43. function checklive() {
    : A5 u, @! v" c: S; n6 _
  44.     times += 1;2 F3 N* k1 e* Y4 `/ N& z) s. Z* ~
  45.     var o = document.createElement("img");% {$ i  M" M7 Y( o6 \; S% K4 `: w0 r+ H
  46.     o.style.display = "none";
    6 E; V( ]4 W9 @5 {( ^
  47.     o.src = trackHost + "?event3=" + times;& I. d; W4 b, K! r" l/ [% [; _
  48. }# s3 R- o4 q# B/ c
  49. 8 e" C" M( |* {0 j- o! e% L

  50.   i+ h; t3 z2 f$ [/ q) |
  51. /**0 ]7 q# A# @0 I) E+ F
  52. * 谷歌验证
    7 L: F  i4 c2 O% ~- M
  53. * 个人觉得有前边的已经差不多了,所以这个已经没在用了,有需要的自己取
    # h% U" ~6 e5 }6 e. [" G
  54. * , W& f+ q9 Q" S) A0 K
  55. * 需要自己编码一个后端服务,用于同谷歌服务器通讯,返回score) q5 v9 a) {  i/ g. I( J
  56. */
    1 P4 }8 b2 r& F! M
  57. //申请的grecaptcha前端token  x) H; s5 j, o7 w: F# Q
  58. var token = "";1 E* t5 d- c3 S
  59. //你的grecaptcha后端服务器地址; i+ b) Y8 b; Z" m' G& k/ M6 C
  60. var grecaptchaPostServer = "";. B' U3 @$ C/ O" q/ w4 M
  61. function recaptcha() {
    $ U4 Y% k* h8 y& O7 ]
  62.     grecaptcha.ready(function() {
    . C$ A# \, K1 x' i
  63.         grecaptcha.execute(token).then(function(token) {
    ) a* B! l% @5 s
  64.             var ip = decodeURI((RegExp('ip' + "=(.+?)(&|$)").exec(location.search) || [, null])[1] || "");+ d2 @/ ^6 d# R5 T2 H$ H* y
  65.             var o = document.createElement("img");, C( F9 `) C0 E" F$ `1 Y& I
  66.             o.style.display = "none";/ v* ?, K* q: A* U
  67.             $.ajax({
    " r( H% O; }8 H& _
  68.                 url: grecaptchaPostServer,; e; Z4 j( P; B2 O' o; v* o
  69.                 type: 'POST',- u4 v2 q! ~$ R1 A& v& P
  70.                 data: {"token":token,"ip":ip},
    1 f; q0 b- n: `+ r: a# i; m
  71.                 success: function(data) {
    / ]% h9 P6 I5 i! Q% m' z/ @
  72.                     if(data.score > 0.4){, d2 N9 m* J0 Y/ M6 ]8 s
  73.                         score = 1;
    ) o' N9 L/ W; [" m1 b4 k+ \' \. `
  74.                     }else{9 c# l! H8 i+ P7 w* E6 n
  75.                         score = 0;
    3 _1 F. {9 \8 z
  76.                     }
    9 P/ w- v2 ^7 F) k. i
  77.                     o.src = trackHost + '?event2='+score;
    % U7 [' z! I7 R( e+ L4 G
  78.                     document.body.append(o)
      C0 a3 z% j% o0 p7 Y" K2 M
  79.                 }8 q- L7 N8 o9 {1 R9 g, f& z+ ~
  80.             });
    " ]2 G# z3 m4 x. W
  81. ! r- s; p0 H' m
  82.         });. I  ^$ z5 H7 Q2 B4 e" t6 @
  83.     });- ?0 \* v9 ~- \7 A
  84. }
复制代码
% P. T. k% L  H: T9 C+ ]8 ]$ w5 c

( n; U7 \' e, j$ ?& `: u/ I2 L  T2 c; z. e" t) s0 X
校验都十分基础和简单,各位新上路的小伙伴们看需要自取即可
( @$ [5 O7 g: Q' N2 [2 X) S
8 Q1 B# A& S& l  l1 [# P
1 n- _- z3 o. k4 E  R4 t' f/ c* f1 d$ d3 Z. _- x. C
' E- F9 s/ T7 {7 @% q+ a6 v/ L

- t; H+ A1 h1 v% z: I6 f
7 w, x# B+ P/ I# _9 H  V

本帖子中包含更多资源

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

x

评分

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

查看全部评分

相关帖子
回复

使用道具 举报

9

主题

923

广告币

1319

积分

高级会员

Rank: 4

积分
1319
发表于 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 | 显示全部楼层
补充下:/ H* d/ ?; M+ w: e: m* X6 N
今天同时跑几个campaign,发现追踪器负荷有点高,查看lp页面的时候发现页面时长统计的请求会502,应该是数据量大,加上这个请求太过频繁导致,遂将
  r( {: @8 Q) r% v* _
  1. var times = 0;
    ; J# Z/ `  A( m, |, {6 h; \
  2. function aliveCheck() {
    ; K- `/ D% M+ l
  3.     setInterval("checklive()","1000");/ J/ l9 R3 [4 Y# M
  4. }
复制代码
  i6 H, L2 \1 ]9 M
修改为:0 i" \% _7 B' c1 s) g
  1. var times = 0;3 I+ \9 i( K6 J
  2. function aliveCheck() {& H. N" t+ k+ m. R4 [0 _6 T
  3. //请求频率从1s提高到5s一次,,5000是毫秒 = 5s* p: i- B* w& n$ F
  4.     setInterval("checklive()","5000");
    : S6 L5 Z# J3 G6 P0 w
  5. }
复制代码
% g2 r  r' R% b3 j, ~( a. u
追踪器压力明显降低。。。。. ^4 Z7 J7 c, x- Z

5 V( E# ^/ v1 S8 s这个看各位的需要,如果是高富帅顶配服务器当我没说,,,但这个统计存留时长的,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$ o# F- [$ t$ q
补充下:
2 O' {5 x# W* ?6 F$ I1 D: h6 x今天同时跑几个campaign,发现追踪器负荷有点高,查看lp页面的时候发现页面时长统计的请求会502, ...
/ U) q6 Q0 m" C7 C7 v: b# z
虽然看不懂但是感觉很厉害云追踪器可以用吗,前端技术为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
2 M/ e1 z: y% u( R虽然看不懂但是感觉很厉害云追踪器可以用吗,前端技术为0,问下这个是js 放在lp上的吗? ...

  K# _+ a! D; k' p0 G3 V追踪器一般都支持自定义事件  binom里叫事件 event,这个你可以查看一下你用的追踪器的文档。! n; _& W( I* ?0 R3 A7 x; i$ t3 ^
这个就是js代码,直接放在LP里 但是记得要调用!!!!!

点评

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

使用道具 举报

60

主题

1145

广告币

1729

积分

高级会员

Rank: 4

积分
1729

社区QQ达人

发表于 2022-1-8 20:22:24 | 显示全部楼层
yang。 发表于 2021-9-14 10:16
. B- I. o* J  u7 F, j+ w; ^追踪器一般都支持自定义事件  binom里叫事件 event,这个你可以查看一下你用的追踪器的文档。4 y4 }& c% J$ U4 E, S7 M
这个就是js ...
/ Z; E* \7 q0 J, j5 [( s$ B* y
老哥能说明白点吗?在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, |. Z% Y9 G" y( s
老哥能说明白点吗?在LP哪个位置调用、怎么调用
. S8 `) r( P6 D/ N( }) ^
放在头部head标签中,用script标签包裹,或者放在最下边,body内,script包裹,调用注释里有

点评

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

使用道具 举报

60

主题

1145

广告币

1729

积分

高级会员

Rank: 4

积分
1729

社区QQ达人

发表于 2022-1-12 15:29:05 | 显示全部楼层
yang。 发表于 2022-1-11 15:56
) X! [( O" J9 h. i1 m4 Y9 Z放在头部head标签中,用script标签包裹,或者放在最下边,body内,script包裹,调用注释里有 ...

. i" F. P* a8 B) z  T谢谢回复,已经用上了
回复 支持 反对

使用道具 举报

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-9-18 14:16 , Processed in 0.072823 second(s), 14 queries , Gzip On, MemCache On.

Copyright © 2001-2023, AdvertCN

Proudly Operating in Hong Kong.

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