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账号官方合作商
广告位出租   
查看: 12509|回复: 10

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

[复制链接]

16

主题

376

广告币

533

积分

中级会员

Rank: 3Rank: 3

积分
533
发表于 2021-9-11 14:09:26 | 显示全部楼层 |阅读模式
本帖最后由 yang。 于 2021-9-14 10:27 编辑 5 W: J+ g/ n4 V- G4 i! K* R4 r* D

, h' t6 |, f- V; B* ~9 M开个头-------------持续亏钱ing。。。。
/ H9 [2 ], w, O6 \" x0 X8 W0 K$ b) G8 H: `0 m% Q: `, p

! ~# w- e6 l+ d这两日有小伙伴觉得我加的一些前端验证有点用,遂求分享代码,这里也整理了一下发出来。
1 C; b3 d9 L. V& c4 d6 |
# G' a0 k8 g' ]1 k7 f% B基本效果么 可以查看这篇帖子
1 F" a% L+ [0 @! P7 y9 B8 Chttps://www.advertcn.com/thread-99669-1-1.html
6 C: V4 b5 A, O0 E  Q* v9 W4 G3 I$ c# k. n

/ }9 k3 y' @4 |! ^1 G( A7 l但是要强调下:脚本永远只能作为参考和辅助,
0 d" V* K. B9 U  a: I
9 V7 n; S5 i# g+ b. Z3 I* n
  1. //your track host# \* `0 r( Z' T) ]/ A+ G9 x
  2. var trackHost = "";8 d: f3 \1 L$ A0 }: ~

  3. 4 a" K) K" l# g* t4 |' M
  4. /**0 g4 X5 [4 T$ c6 _
  5. * 1.校验浏览器是否支持js,可以作为垃圾爬虫得基础校验方式之一6 ]. A$ K) K+ W
  6. * 使用方式  直接调用jsSuportCheck()" @- a! S) E8 I. `' T+ q1 h
  7. *      1.trackHost 指向你的追踪器,
    - W; R0 h7 h, b4 P0 a9 G1 ~1 o2 z
  8. *      2.修改 event1 为你自己的event+ w4 p+ D% h8 A8 r% t' n9 u6 o
  9. *      3.追踪器上  click-event1 = 不支持js浏览器数量(个人认为是刷子爬虫之类的)
    & E# x2 ~9 @! c7 P- R! j5 ~) [
  10. *      4.追踪器上  event1 = 支持js浏览器数量* P4 h  H: v( T+ }% [
  11. */
    ' y$ `" h0 r$ n# A' X( F6 W6 i
  12. function jsSuportCheck() {
    4 @7 T5 A2 J7 W
  13.     var o = document.createElement("img");
    $ g# [/ a7 H2 X8 `1 }
  14.     o.style.display = "none";2 Q) ], l; Z; {% G
  15.     o.src= trackHost + '?event1=1';, j% i  h% N( `1 r" J: G
  16.     document.body.appendChild(o)
    ( T! J; u  T$ }! n2 A, w# n
  17. }
    " R0 W" v& c0 |* `% B

  18. . ~; R" b* f7 S+ a- @9 `
  19. 1 o" a. a  B& k$ ?% O1 N0 N
  20. /**
    4 L* ~, v) f! l( M9 u
  21. * 2.页面存活时间
    6 _1 N: {: B5 W! i  k" E& X
  22. * 使用方式 直接调用 aliveCheck()5 C4 E7 P, A7 @2 t6 g/ d
  23. *      每隔1s向你的追踪器发送一条数据:更新你的event& X% u* ^0 B6 N& R4 r- g. w$ n% f
  24. *      1.trackHost 指向你的追踪器,
    ' ~4 N, F, U1 W% o# t
  25. *      2.修改 event3 为你自己的event
    " p/ |2 L  g' ?! ?( N8 t$ f
  26. *      4.追踪器上 event3 = 页面存活时间# r7 k2 S/ Z8 L0 b2 J/ j
  27. *
    ) @, c4 h& n: O2 ^% Q. l! [
  28. * 数据说明:
    3 S8 |* \/ W6 o/ ]
  29. *  1.时间为0! U0 X: d& _  U6 H
  30. *         1.jsSuportCheck = 支持的 说明用户在1s呢关闭了页面,疑似高级爬虫(支持js的爬虫 如PhantomJS、NightmareJS 等无头); n) G4 J5 d) i  j8 y/ ]
  31. *         2.jsSuportCheck = 不支持的 参考jsSuportCheck) n$ h! V; L. Y  K) \6 @. w) O
  32. *  2.时间不为00 B% X1 K& P3 J  W4 a4 `& c
  33. *         1.时间很长的:页面打开了,没人管,,这个不好说,我觉得不正常
    7 g, A; z- A! p: j' f
  34. *         2.时间长短不一的,人类操作概率较大,若普遍存活时间短的,可以考虑LP有问题5 X; k; d, d5 f- W
  35. *         3.存活时间还行,LP ctr也还行,说明 LP还可以7 u/ J8 p/ R. n% ]6 `, K
  36. *
    6 y. b' k' Y( c+ k2 Q
  37. */5 t3 m7 i( K7 n7 a. D1 S; X3 S$ k: k0 H

  38. 9 L$ I9 O* U% f8 S; f( ~8 y
  39. var times = 0;; t$ Z( z$ K1 Q
  40. function aliveCheck() {
    ) o2 P4 o" i) G5 R/ |" @" h
  41.     setInterval("checklive()","1000");
    4 F5 [5 T; u3 s$ S
  42. }
    1 i! C( D4 i8 v
  43. function checklive() {
    8 y+ B" |2 Z3 b. e
  44.     times += 1;
    1 ?/ R+ E. U) ^* N# f
  45.     var o = document.createElement("img");
    - G9 E, j' ]: e: ]4 R4 o
  46.     o.style.display = "none";
    + K( x  B1 w" o( r- G
  47.     o.src = trackHost + "?event3=" + times;
    1 c( w; ^; _+ Z4 \; R9 I1 G
  48. }5 u0 X: h% S0 w

  49. % A: |# m" [+ g; d/ @& X

  50. 9 d: U. ~$ Y% {, w
  51. /**$ {: V" s+ b# ]  H. N& {
  52. * 谷歌验证3 J1 ~9 L3 M( O$ S, i0 ^3 x8 g7 T
  53. * 个人觉得有前边的已经差不多了,所以这个已经没在用了,有需要的自己取3 d3 s( u, k9 {5 Z1 u8 s% Q
  54. * 5 j: b( S% J% a
  55. * 需要自己编码一个后端服务,用于同谷歌服务器通讯,返回score
    4 {3 C8 Y6 U6 G) z- E
  56. */
    7 `1 |9 X( o5 H- @, q' C
  57. //申请的grecaptcha前端token
    2 x$ s3 }6 H" k
  58. var token = "";
    8 G6 z7 r+ ~2 j9 B) B
  59. //你的grecaptcha后端服务器地址
    3 i5 M7 ~, X# o3 _
  60. var grecaptchaPostServer = "";: C# i" T" w8 `7 x% ~
  61. function recaptcha() {
    ( m; I8 U5 `. t8 O& \' U, z  N% a7 k
  62.     grecaptcha.ready(function() {) x2 ?; R" Y. e# Y5 l
  63.         grecaptcha.execute(token).then(function(token) {
    & n- p* o& \; i2 t  U
  64.             var ip = decodeURI((RegExp('ip' + "=(.+?)(&|$)").exec(location.search) || [, null])[1] || "");
    ) B' u3 {8 _9 T, \! E$ J% k
  65.             var o = document.createElement("img");! }' y* R( P. N, |
  66.             o.style.display = "none";6 J( ~) L- A9 H6 _
  67.             $.ajax({
    9 \- t7 H* V- O! y& U
  68.                 url: grecaptchaPostServer,; T6 r! ?2 q- c1 |' j
  69.                 type: 'POST',
    $ |4 w. @# u5 m1 m7 |) ~
  70.                 data: {"token":token,"ip":ip},
    * d9 w1 `* {% Q( x6 L9 j! M2 B1 s
  71.                 success: function(data) {
    % e: X4 P7 Y" m& U3 m  |8 I
  72.                     if(data.score > 0.4){1 I/ |9 J; Y( |2 R
  73.                         score = 1;3 Q  ^; |9 r. g+ O
  74.                     }else{
    / e- I+ p; Q( e) s  b
  75.                         score = 0;7 R% p5 U6 n7 B! r0 ^
  76.                     }
    + a- c" y& s' x4 ^; _% G) X  o
  77.                     o.src = trackHost + '?event2='+score;  E" v! N% @% e* N  m4 @
  78.                     document.body.append(o)3 c/ d3 t! [& _
  79.                 }% e) G6 b! a3 n! |2 d8 n( O
  80.             });
    " f% b$ y7 c4 l: l
  81. ( k, ~9 m8 Q: C! z6 a6 s
  82.         });  h  S. _+ o% i, G  b: q
  83.     });2 H) |7 K0 M6 |; W) f
  84. }
复制代码

. r/ h3 y5 q4 x" Z! f
* ~* T3 K6 \9 S( n3 \0 t, a5 q2 B$ X2 n
校验都十分基础和简单,各位新上路的小伙伴们看需要自取即可
' M  z/ I1 B" h5 _/ O
+ D0 t) \: x* C2 j) P0 f3 d% l' d( A$ \: R% K
+ e/ _7 x. n* A

9 o& V- L% X4 _* d: ]# D* ^6 E
: m$ ~2 |- L' B
# b. l9 g/ T1 s) C% W6 E1 S

本帖子中包含更多资源

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

x

评分

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

查看全部评分

相关帖子
回复

使用道具 举报

9

主题

692

广告币

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 | 显示全部楼层
补充下:9 a/ t. @: [8 I7 o5 o7 B
今天同时跑几个campaign,发现追踪器负荷有点高,查看lp页面的时候发现页面时长统计的请求会502,应该是数据量大,加上这个请求太过频繁导致,遂将
5 z& V+ W. {! h) s
  1. var times = 0;
    % F1 ~2 d, V0 p: B! r9 g
  2. function aliveCheck() {
    4 z9 e' [% D( d$ C( [* ?
  3.     setInterval("checklive()","1000");. }6 S4 B0 I( s! p. }
  4. }
复制代码
: S. [$ g  m. J9 s3 @* C
修改为:1 L) X; k6 c5 K3 |
  1. var times = 0;" ~6 v' r4 e" ]
  2. function aliveCheck() {
    - F* B1 l2 U% R" u* h! Y
  3. //请求频率从1s提高到5s一次,,5000是毫秒 = 5s& E3 K9 i# E7 d
  4.     setInterval("checklive()","5000");, W- W% y9 W/ V) {2 R; D6 K5 r( A0 M
  5. }
复制代码
7 a1 f* e& z6 ?$ Z% Z- r, o
追踪器压力明显降低。。。。
7 b7 Q1 H# g; `
$ j' k5 |/ m* k; G这个看各位的需要,如果是高富帅顶配服务器当我没说,,,但这个统计存留时长的,1s一次的确有点过分细化了,,,,各位可以按照自己的经验调整统计频率

点评

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

使用道具 举报

0

主题

433

广告币

605

积分

中级会员

Rank: 3Rank: 3

积分
605
发表于 2021-9-13 19:41:04 | 显示全部楼层
yang。 发表于 2021-9-11 22:202 L# Z" I* E2 g
补充下:5 H, y+ D! I* |
今天同时跑几个campaign,发现追踪器负荷有点高,查看lp页面的时候发现页面时长统计的请求会502, ...

8 r! ^0 [+ f: A2 D% V. S; o虽然看不懂但是感觉很厉害云追踪器可以用吗,前端技术为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/ f3 p, o* W- v0 |1 A4 G% u' m
虽然看不懂但是感觉很厉害云追踪器可以用吗,前端技术为0,问下这个是js 放在lp上的吗? ...
9 H9 ^! P$ s) _4 D  H- P
追踪器一般都支持自定义事件  binom里叫事件 event,这个你可以查看一下你用的追踪器的文档。& I4 M% g8 ]. ?3 M
这个就是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
) K  [+ @; F( d0 @3 J追踪器一般都支持自定义事件  binom里叫事件 event,这个你可以查看一下你用的追踪器的文档。
) J; f4 F+ v$ W) G' {! F这个就是js ...

2 }& C4 ~0 e. F老哥能说明白点吗?在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:22" ~& |: l1 n  `2 A9 y
老哥能说明白点吗?在LP哪个位置调用、怎么调用

5 O3 K0 ^. q& T1 y- }  `' I放在头部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
$ R6 H6 o: D4 w5 W1 N- F放在头部head标签中,用script标签包裹,或者放在最下边,body内,script包裹,调用注释里有 ...

  ?: K4 @, I/ T* Y) f/ H8 P谢谢回复,已经用上了
回复 支持 反对

使用道具 举报

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-21 22:39 , Processed in 0.049002 second(s), 14 queries , Gzip On, MemCache On.

Copyright © 2001-2023, AdvertCN

Proudly Operating in Hong Kong.

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