AdvertCN - 广告中国

 找回密码
 立即注册

QQ登录

只需一步,快速开始

Binom
 谷歌+Bing+TT+MSN官方代理 
⚡️按条S5代理⚡️静态⚡️独享⚡️5G⚡️最干净<Wifi住宅+5G移动>IP代理指纹浏览器,就用AdsPower
Mediabuy⚡️玩家开户首选【鲁班跨境通-自助充值转账】FB/GG/TT❤️官方免费开户Affiliate 全媒体流量资源⚡️
Taboola/Outbrain /Bing⚡️一级代理开户投流-7*24h❤️人工在线【官方】❤️搜索套利广告开户独立站⚡️开户投放
DuoPlus专注打造跨境电商云手机E.PN 虚拟卡BINOM TRACKER 60% OFF!比Adplexity还好用的Spy工具
MediaGo+Taboola+Ob开户百度国际MediaGo⚡️让产品狂奔全球百度国际,高点击转化,快速放量百度国际MediaGo,独家原生流量
ADPLEXITY + ADVERTCN7200W全球动态不重复住宅IP代理虚拟信用卡+独立站收款全球虚拟卡, 支持U充值
Facebook 批量上广告尤里改 - FB 稳定投放免费黑五教程(持续更新、欢迎交流)FB 三不限源头 - 自助下户充值转款
各种主页、账单户、BM户(优势)⚡️个人户,bm户不限额,账单户一手BM分享户不限额9Proxy ⚡️ $0.04/IP, 无限带宽
FB二三解0.1元一个虚拟卡|PTM星际卡FB专用虚拟卡Google、Bing官方总代  联盟流量开户
FB账号资源/稳定靠谱/运行5年啦FB开户代投/三不限/白名单fb耐用号0.01一个fb账号官方合作商
广告位出租   
查看: 12534|回复: 10

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

[复制链接]

16

主题

376

广告币

533

积分

中级会员

Rank: 3Rank: 3

积分
533
发表于 2021-9-11 14:09:26 | 显示全部楼层 |阅读模式
本帖最后由 yang。 于 2021-9-14 10:27 编辑 0 h0 o+ ]5 d0 _0 o* X. w
8 D; C3 w+ t8 r* H
开个头-------------持续亏钱ing。。。。/ i2 }$ _1 J. t/ t8 P. H: }; }
- h: r" d  a- t' z
" j% ?. L) [) J5 \& ?. T& w) N( K
这两日有小伙伴觉得我加的一些前端验证有点用,遂求分享代码,这里也整理了一下发出来。
0 N% ^% X9 O' z1 j
) G9 Y' e3 U& ~/ k) o  W6 v4 b基本效果么 可以查看这篇帖子, _! o  E6 j0 b  h$ D
https://www.advertcn.com/thread-99669-1-1.html
+ Z: A7 S" j+ a3 U
0 E6 M- p. Q" P& V' N1 ~) L' d- K9 D- \% {$ ?
但是要强调下:脚本永远只能作为参考和辅助," K& J# ~) z# i' j. D

0 L5 |6 v  b$ a% J! `# V
  1. //your track host
    0 j- G" A7 Q5 `' k  ?" V* g+ _# C
  2. var trackHost = "";
    " b8 k/ c/ y4 O# I
  3. : i8 E+ ]) o; J' o# N% M
  4. /**0 J$ j7 f+ k! F6 s  }3 g# c
  5. * 1.校验浏览器是否支持js,可以作为垃圾爬虫得基础校验方式之一
    4 ]6 m" _8 u9 T( A+ Y
  6. * 使用方式  直接调用jsSuportCheck()/ y3 e1 G; u- w6 w5 T! X
  7. *      1.trackHost 指向你的追踪器,
    1 k0 g" N+ V2 G5 u( `; `1 |
  8. *      2.修改 event1 为你自己的event, _3 M: b4 y8 P# I- _
  9. *      3.追踪器上  click-event1 = 不支持js浏览器数量(个人认为是刷子爬虫之类的)9 F: p; U2 E+ k
  10. *      4.追踪器上  event1 = 支持js浏览器数量, p! H1 h' G8 [! a7 L9 A
  11. */' [% |0 F" E+ n1 ~! L
  12. function jsSuportCheck() {/ [: w7 q  L; K  {3 a% k! y$ _4 Y6 {
  13.     var o = document.createElement("img");
    5 ]$ z* D" _& Y0 a
  14.     o.style.display = "none";$ H6 @* e% d* B1 S' P; I% _
  15.     o.src= trackHost + '?event1=1';( N! l8 l/ T7 T. u/ \( N4 l( b" L
  16.     document.body.appendChild(o). B. m0 L; q7 k/ S$ j
  17. }
    & P. y2 Y7 [% m
  18. 0 ]8 V' Q4 o  m5 p7 M+ {8 ^
  19. / o/ E2 ?! k8 Y/ P. K$ y7 `
  20. /**, Y0 q7 W# f; w9 m
  21. * 2.页面存活时间
    7 R, o) d- m5 T: {& o7 p
  22. * 使用方式 直接调用 aliveCheck()
    6 `$ e6 T5 t) H2 q) L
  23. *      每隔1s向你的追踪器发送一条数据:更新你的event
    / r7 s8 w6 d; }2 ?  Y8 E% q! j4 p: t
  24. *      1.trackHost 指向你的追踪器,
    6 }1 ?8 D2 e3 o( P: m
  25. *      2.修改 event3 为你自己的event9 O- G( f5 Z( w, x
  26. *      4.追踪器上 event3 = 页面存活时间
    * b. G7 d- u; N/ C8 i
  27. *
    3 h9 ~  J0 I) ]- ]* a
  28. * 数据说明:
    / S* c1 B' a" [$ J. j3 Z
  29. *  1.时间为0( F0 |' g7 ]0 m& o! I
  30. *         1.jsSuportCheck = 支持的 说明用户在1s呢关闭了页面,疑似高级爬虫(支持js的爬虫 如PhantomJS、NightmareJS 等无头)  ~. o" t* H  C2 d  b$ F3 N
  31. *         2.jsSuportCheck = 不支持的 参考jsSuportCheck
    ) Y) ?4 D9 u) x/ F7 K
  32. *  2.时间不为0
    9 L( X5 m& n2 v& A+ Y
  33. *         1.时间很长的:页面打开了,没人管,,这个不好说,我觉得不正常6 Y6 e7 I) _# x
  34. *         2.时间长短不一的,人类操作概率较大,若普遍存活时间短的,可以考虑LP有问题/ V- K& z: E* _3 c& {7 ^5 o8 N: N
  35. *         3.存活时间还行,LP ctr也还行,说明 LP还可以
    % @% d+ v* L# }; o( i
  36. *9 V6 g% F: M/ W& O
  37. */
    ) h$ V+ [6 _& J$ o
  38. , Q* H" D- _# ^0 x1 K. [
  39. var times = 0;  R. w) t/ E4 E% H7 \
  40. function aliveCheck() {
    7 o8 @) O/ q& W3 r6 M* V" Y: I
  41.     setInterval("checklive()","1000");
    : h3 b. O8 i' C2 W$ }
  42. }
    9 t/ c+ {/ s0 W. [/ _
  43. function checklive() {
    ; Y. I; J* U2 y; j( w: [! l" x
  44.     times += 1;: [1 u6 R3 [7 g! M' ?# Y# i- d7 m) @
  45.     var o = document.createElement("img");' ^$ J$ e: E, ]. s& T( x/ H
  46.     o.style.display = "none";. N- |3 R  ^1 H( {( c% k
  47.     o.src = trackHost + "?event3=" + times;7 g# e# p: L2 {5 p4 R& L0 |  L' N! H
  48. }+ x- [8 r6 F- T+ ?9 l
  49. * K0 e6 f5 N7 q6 w& f9 g; A
  50. ! M' y" T( ?: S( F' b0 O
  51. /**4 P8 X5 `4 r% j  o* }2 p4 O! f
  52. * 谷歌验证( @" O6 i! H. D
  53. * 个人觉得有前边的已经差不多了,所以这个已经没在用了,有需要的自己取# s/ u6 N, t  G$ F; f3 `  Z+ U
  54. * 8 Q: i2 O  ?9 ~  h8 ], G+ a6 v; }
  55. * 需要自己编码一个后端服务,用于同谷歌服务器通讯,返回score
    3 E  B) I6 j; j) k7 \6 R
  56. */
      a! }1 D; v3 y# S1 q5 u# h& ^
  57. //申请的grecaptcha前端token
    . s$ Q* [9 R2 H1 \, b/ v  o2 n
  58. var token = "";
    2 g( |* ^# a$ i% Z' T
  59. //你的grecaptcha后端服务器地址2 I7 g3 _+ A9 I$ s$ M# }
  60. var grecaptchaPostServer = "";
    ( d+ y0 Z) q/ W7 \
  61. function recaptcha() {! Y& ?) h; d/ y! r- T: v; O! t
  62.     grecaptcha.ready(function() {% x3 W& z  O! D! ^0 Q2 \- ^( I+ P
  63.         grecaptcha.execute(token).then(function(token) {, d) X; X) H3 ~) |8 c/ g( Y
  64.             var ip = decodeURI((RegExp('ip' + "=(.+?)(&|$)").exec(location.search) || [, null])[1] || "");
    4 e- }, q8 `9 S  a3 L# X
  65.             var o = document.createElement("img");
    % R1 ]0 l. B5 x1 c" T9 V, \
  66.             o.style.display = "none";9 _% k5 R5 N0 Q  x) w
  67.             $.ajax({
    - k2 D" h+ v8 \7 H% ]
  68.                 url: grecaptchaPostServer,* s' ~" O, O" W4 w1 Q* u8 h5 k, r9 d6 K
  69.                 type: 'POST',
    ! o5 M- s& Q" }& e7 ^( d7 u; @
  70.                 data: {"token":token,"ip":ip},
    9 H, L: {1 ]$ `6 U2 @
  71.                 success: function(data) {# x5 Y$ i. ~& F' [6 |
  72.                     if(data.score > 0.4){$ ?  i( [0 Y0 Q' @8 C6 p
  73.                         score = 1;& m! t% `4 {) E, u; \6 }5 F$ o
  74.                     }else{
    7 Y: o4 v7 {- \  m* d8 h$ a/ [
  75.                         score = 0;
    . U  S) V0 r5 D: z3 J' d# x
  76.                     }
    / k2 H* S+ s- ?. z9 n2 k
  77.                     o.src = trackHost + '?event2='+score;
    % p, n2 p  W+ V
  78.                     document.body.append(o)2 H2 w! w% e) k0 y
  79.                 }! `  I9 p$ M0 @  w# }: X
  80.             });' E! t8 @7 Y0 a! Y2 h% d

  81. - j- P( U8 j! j( o8 q; Z0 F9 H( }& X
  82.         });
    3 _# B2 t) Y. p( b
  83.     });
    ! Q$ Z/ [6 ?9 R2 |
  84. }
复制代码

3 D" d8 N7 W7 D  T) s  q4 {0 O! h- V& i8 G3 s. z) ^: x( R
6 {! ^( C3 s6 v7 Y* B0 B0 R! U
校验都十分基础和简单,各位新上路的小伙伴们看需要自取即可7 ]6 b4 H! M' ?  O
9 |: S/ o; U7 \( V" T' l" l

7 b& c( X  Z, l, W0 b
( [! T% m1 g& E" z' u  {: n
+ O& ~' C9 r0 V6 @( G+ X0 K4 @: v
  q* R0 [- i5 S3 z
5 \6 p' n3 S, O: y* D

本帖子中包含更多资源

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

x

评分

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

查看全部评分

相关帖子
回复

使用道具 举报

9

主题

693

广告币

1055

积分

中级会员

Rank: 3Rank: 3

积分
1055
发表于 2021-9-11 15:57:06 | 显示全部楼层
回复 支持 反对

使用道具 举报

1

主题

252

广告币

295

积分

初级会员

Rank: 2

积分
295
发表于 2021-9-11 18:09:27 | 显示全部楼层
感谢分享
回复 支持 反对

使用道具 举报

16

主题

376

广告币

533

积分

中级会员

Rank: 3Rank: 3

积分
533
 楼主| 发表于 2021-9-11 22:20:28 | 显示全部楼层
补充下:% Q0 l$ f/ }& M& V
今天同时跑几个campaign,发现追踪器负荷有点高,查看lp页面的时候发现页面时长统计的请求会502,应该是数据量大,加上这个请求太过频繁导致,遂将
" V+ N5 B) w! z% E3 F# d- j
  1. var times = 0;" b7 L3 U; }& @
  2. function aliveCheck() {
    % q% o$ s% B+ u" T' I4 C
  3.     setInterval("checklive()","1000");' f. K9 Z* V) P% w. P8 m
  4. }
复制代码

& ?- r  y( _/ t8 i! f9 |修改为:/ R2 t0 l. \' c6 D' V
  1. var times = 0;& X6 U! h3 g8 U$ U. W7 {
  2. function aliveCheck() {
    ; G) \; Q: K0 J: a
  3. //请求频率从1s提高到5s一次,,5000是毫秒 = 5s$ x. C! f* r+ i5 w& _
  4.     setInterval("checklive()","5000");4 L3 I7 b9 {/ j2 z7 \7 G
  5. }
复制代码

+ Y, l3 X4 V) c$ S追踪器压力明显降低。。。。
4 k2 n$ m. O! }
+ e3 d/ R) h, i; {: Z; }8 m这个看各位的需要,如果是高富帅顶配服务器当我没说,,,但这个统计存留时长的,1s一次的确有点过分细化了,,,,各位可以按照自己的经验调整统计频率

点评

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

使用道具 举报

0

主题

434

广告币

606

积分

中级会员

Rank: 3Rank: 3

积分
606
发表于 2021-9-13 19:41:04 | 显示全部楼层
yang。 发表于 2021-9-11 22:20
) p/ X$ w5 F( K& ?% t* E补充下:; U- t1 e* j  k
今天同时跑几个campaign,发现追踪器负荷有点高,查看lp页面的时候发现页面时长统计的请求会502, ...
5 M& N( D. C: U; F2 _; K  |, }" x4 s
虽然看不懂但是感觉很厉害云追踪器可以用吗,前端技术为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
/ D3 p, @; a( o/ J虽然看不懂但是感觉很厉害云追踪器可以用吗,前端技术为0,问下这个是js 放在lp上的吗? ...
& w) U+ t, O! w% j8 K' z
追踪器一般都支持自定义事件  binom里叫事件 event,这个你可以查看一下你用的追踪器的文档。9 a( ^/ ~+ ]$ }. [
这个就是js代码,直接放在LP里 但是记得要调用!!!!!

点评

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

使用道具 举报

60

主题

1118

广告币

1702

积分

高级会员

Rank: 4

积分
1702

社区QQ达人

发表于 2022-1-8 20:22:24 | 显示全部楼层
yang。 发表于 2021-9-14 10:16, o4 p! z( G8 ]& B
追踪器一般都支持自定义事件  binom里叫事件 event,这个你可以查看一下你用的追踪器的文档。
/ p5 D* J$ X  r这个就是js ...
& X5 A  G$ E' ]. {( j3 L
老哥能说明白点吗?在LP哪个位置调用、怎么调用

点评

放在头部head标签中,用script标签包裹,或者放在最下边,body内,script包裹,调用注释里有  详情 回复 发表于 2022-1-11 15:56
回复 支持 反对

使用道具 举报

82

主题

631

广告币

1184

积分

中级会员

Rank: 3Rank: 3

积分
1184

社区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:226 [2 @, f% V# `" E( [0 D
老哥能说明白点吗?在LP哪个位置调用、怎么调用
' w# I7 r( c$ S( ?& s2 o  Y
放在头部head标签中,用script标签包裹,或者放在最下边,body内,script包裹,调用注释里有

点评

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

使用道具 举报

60

主题

1118

广告币

1702

积分

高级会员

Rank: 4

积分
1702

社区QQ达人

发表于 2022-1-12 15:29:05 | 显示全部楼层
yang。 发表于 2022-1-11 15:56
- m  Y# j" Q1 p5 z+ D" [( T# z放在头部head标签中,用script标签包裹,或者放在最下边,body内,script包裹,调用注释里有 ...

' t  S% O; F( _! a谢谢回复,已经用上了
回复 支持 反对

使用道具 举报

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, 2024-11-23 05:10 , Processed in 0.050296 second(s), 15 queries , Gzip On, MemCache On.

Copyright © 2001-2023, AdvertCN

Proudly Operating in Hong Kong.

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