漫画:如何用脚本抢月饼?
来源:互联网 发布:prezi mac 怎么改时间 编辑:程序博客网 时间:2024/05/17 03:05
中秋节前夕,公司为内部员工提供了在线抢月饼的活动……
公司里,恰好有一位调皮的程序员……
随后,这位调皮的员工埋头研究了一下下……
很快就到了抢月饼活动开始的时间,脚本的效果出人意料的好……
可是,事情已经没那么简单了。很快,员工被叫去约谈……
这位调皮员工的经历被传到网上,引起了很多人的关注。小灰和同学之间也在饶有兴致地谈论这件事……
首先,让我们来模拟一下当时的内部员工抢月饼活动页面。当然,真正的活动页面肯定不会这么简单,在此只是做个简化的示例:
页面的HTML代码如下:
如何每隔一段时间让抢购按钮自动被点击呢?很简单,原生Javascript当中有一个定时器函数 setInterval,该函数有两个参数,第一个参数是想要执行的回调函数(在这里就是触发按钮点击事件的语句),第二个参数是触发执行的间隔时间(单位毫秒)。
因此,抢月饼脚本简单的实现如下:
如何在页面中嵌入自己写的Javascript脚本呢?下面分别介绍一下在Chrome和Firefox两种浏览器上的操作步骤:
Chrome:
1. 打开chrome扩展程序页 – chrome://extensions
2. 将刚才的自定义脚本保存为以user.js为后缀的 .js文件,例如test.user.js,拖入扩展程序页。
3. 重启浏览器。
4. 进入月饼抢购活动页面。此时脚本已自动执行。
FireFox:
1. 下载并安装用户脚本管理插件 greasemonkey (中文翻译成“油猴子”)。
2. 重启浏览器。
3. 将刚才的自定义脚本保存为 .js文件,例如test.user.js,拖入页面空白处。
4. 进入月饼抢购活动页面。此时脚本已自动执行。
关于验证码:
在一般的网页中,为了防刷,都会在提交请求之前让用户输入动态的验证码:
动态验证码有效防止了绝大多数JS脚本的自动提交行为。如果它的干扰线和扭曲效果实现得足够好,即使用OCR图像文字识别技术也很难破解。动态验证码的生成和验证流程如下:
由于每次看到的抢购页面里的验证码都不相同,所以很难用自动化脚本攻克。可是,如果抢购页面的开发人员偷懒,只是在抢购页面里引用了固定不变的验证码图片,那么请求和验证流程就变成了下面的样子:
这样一来,只要知道静态的验证码是什么,脚本就可以轻松填写正确的验证码。
- 漫画:如何用脚本抢月饼?
- 编程黑科技-如何用脚本实现抢月饼
- 阿里抢月饼js脚本
- 如何用C#运行PowerShell脚本
- 如何用ANT脚本安装weblogic
- 如何用shell脚本实现自动telnet
- 如何用脚本离线备份Domino系统
- 如何用Shell脚本修改crontab
- 如何用命令行执行loadrunner的脚本
- [脚本] Unity3d 如何用GL画线
- 如何用ERwin7生产sql脚本
- 如何用shell脚本实现自动telnet
- 如何用vbs脚本获取登录信息?
- 如何用Java后台执行SHELL脚本?
- 如何用shell脚本读取配置文件
- Oracle如何用内置脚本查堵塞
- 如何用shell脚本编译java工程
- 如何用Python脚本自动SVN Update
- 基于Huffman树的CBOW模型的理解
- BGP多线
- 为什么许多公司不要培训机构出来的程序员?
- Log4j 编写代码实现日志
- openvswitch2.8.1 centos7.4 源码编译安装
- 漫画:如何用脚本抢月饼?
- 修改配置文件中的某一个字段
- 熟悉JAVA反射后,来偷懒做些事情字符串处理的事情
- 网盘搜索工具整理2017
- linux新环境下无法启动tomcat
- sublime 搭建nodejs环境
- Java Web中的Action、Dao、Service、Model学习笔记
- opencv 分类器训练 Assertion failed (elements_read == 1) in icvGetHaarTraininDataFrom
- web网页引入自定义字体设置