双11,自动领取优惠券 js 代码
http://www.zhihu.com/question/36426051/answer/67690322
本来我不熟悉 js,正好研究一下
1 (function(window, document) { 2 var interval = 800; 3 var closeDelay = 200; 4 var index = 0; 5 var couponLinks; 6 var getCoupon = function() { 7 if (index >= couponLinks.length) { 8 console.log("领取完毕"); 9 return; 10 } 11 var coponLink = couponLinks[index]; 12 coponLink.click(); 13 index++; 14 console.log("领取 第" + index + " 张"); 15 setTimeout(getCoupon, interval); 16 setTimeout(function() { 17 var close = document.querySelector('.mui-dialog-close'); 18 if (close != null) close.click(); 19 }, closeDelay); 20 } 21 22 var _scrollTop = 0; 23 var _scrollStep = document.documentElement.clientHeight; 24 var _maxScrollTop = document.body.clientHeight - _scrollStep; 25 26 var autoScrollDown = setInterval(function() { 27 _scrollTop += _scrollStep; 28 if (_scrollTop <= _maxScrollTop) { 29 document.body.scrollTop = _scrollTop; 30 return; 31 } 32 clearInterval(autoScrollDown); 33 34 couponLinks = document.querySelectorAll('.mui-act-item-yhqbtn'); 35 console.log("总共:" + couponLinks.length + "条张优惠券待领取…"); 36 getCoupon(); 37 }, 500); 38 }) (window, document);
搜一下关键的几个函数和变量,就很容易理解了。
document.querySelector
document.querySelectorAll
document.documentElement.clientHeight
document.body.clientHeight
document.body.scrollTop
setInterval
setTimeout
搞明白了这几含义,写个自动领券的代码还不是分分钟~
+V why_null 请备注:from博客园
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通