中秋节已经过去不短的时间了,但是今年的中秋节在某大型公司十分的特别
内部有一个抢购月饼的活动,有一位调皮的程序员灵光一闪我既然是程序员,那我就写个程序来抢月饼玩啊。很快到了抢购月饼的时候发现在购物车里抢购太多了,就联系行政的人退掉。毕竟人家是在某大型公司,事情发生了没有那么容易解决。被上头以作弊的的名义上升到了三观的程度让这位前辈不用再来这里了。
–个人表示很同情这位前辈的
我们还是来聊聊技术吧
那么这位前辈到底是怎么实现让抢购页面自动抢购的呢?
我们先来简单模拟下抢购页面
html:12345678910111213<body> <h1>抢月饼</h1> <div class="button"> <button id="buy">点击抢购</button> </div></body><script type="text/javascript"> var buy; buy = document.getElementById("buy"); buy.onclick=function(){ console.info("抢购成功"); };</script>
页面效果:
那么问题来了我们怎么实现让按钮自动点击呢?
我们写一个原生js用定时器来实现:1234setInterval(function(){ var buy=document.getElementById("buy"); buy.click();},1000)
嗯,确实如果放到js中的话只要调用这个定时器就能让他不断的点击抢购了,但是怎么才能放到线上的抢购页面呢,毕竟那个不是在自己的本地啊?
在chrome下:
- 首先,把刚才我们写好的原生js保存为.user.js比如clicktool.user.js
- 打开chrome浏览器输入chrome://extensions,来打开chrome的扩展程序
- 把我们保存的clicktool.user.js拖进来安装。
- 重新打开我们的抢购页面就开始自动抢购啦。
在FireFox下:
- 下载安装greasemonkey(“油猴子”)。
- 重新启动浏览器
- 打开greasemokey拖入我们刚才的clicktool.user.js
- 重新进入抢购页面就可以啦
恩恩,学到了,原来自己写的脚本只要这样就能用在页面上了,涨姿势了!瞬间慢慢的成就感,这很geek。