继续来熟悉Selenium的使用,这次来玩一个Html5游戏。原网址在这:http://tianmaying.com/app/clicking/#

游戏是这样的,5秒内你能点击这个按钮几次。一般人都只能点30~60下。而Selenium可以很好的对这个游戏作弊。

首先点击一下按钮,它等待3秒后开始,然后就需要拼命点击,Selenium可以很好的做到这点。

//设置浏览器驱动

System.setProperty("webdriver.chrome.driver", "C:\\Program Files (x86)\\Google\\Chrome\\Application\\chromedriver_x64.exe");

//实例化浏览器

WebDriver driver = new ChromeDriver();

//打开网页
driver.get("http://tianmaying.com/app/clicking/#");

//找到这个按钮,并点击它
driver.findElement(By.xpath("//*[@id=\"btn\"]")).click();

//等待2.5秒,反正早点点击也没事
Thread.sleep(2500);

//记录开始时间
long start = System.currentTimeMillis();

//7秒内一直死循环点击,点击久一点也没事
for(;System.currentTimeMillis()-start!=7000;){

driver.findElement(By.xpath("//*[@id=\"btn\"]")).click();

}

最后是这种效果:

只有199下,Selenium效率不怎么高,但比正常人的40下,已经快很多了。

使用Selenium对付一个点击游戏的更多相关文章

  1. [译]终极塔防——运用HTML5从头创建一个塔防游戏

    翻译共享一篇CodeProject的高星力作,原文地址:http://www.codeproject.com/Articles/737238/Ultimate-Tower-Defense 下载演示项目 ...

  2. 如何建立一个完整的游戏AI

    http://blog.friskit.me/2012/04/how-to-build-a-perfect-game-ai/ 人工智能(Artificial Intelligence)在游戏中使用已经 ...

  3. Cocos2d-x-Lua 开发一个简单的游戏(记数字步进白色块状)

    Cocos2d-x-Lua 开发一个简单的游戏(记数字步进白色块状) 本篇博客来给大家介绍怎样使用Lua这门语言来开发一个简单的小游戏-记数字踩白块. 游戏的流程是这种:在界面上生成5个数1~5字并显 ...

  4. 5、使用Libgdx设计一个简单的游戏------雨滴

    (原文:http://www.libgdx.cn/topic/49/5-%E4%BD%BF%E7%94%A8libgdx%E8%AE%BE%E8%AE%A1%E4%B8%80%E4%B8%AA%E7% ...

  5. 使用Cocos2dx-JS开发一个飞行射击游戏

    一.前言 笔者闲来无事,某天github闲逛,看到了游戏引擎的专题,引起了自己的兴趣,于是就自己捣腾了一下Cocos2dx-JS.由于是学习,所谓纸上得来终觉浅,只是看文档看sample看demo,并 ...

  6. unity入门—五分钟制作一个理论上的游戏

    unity入门 前言:这可不是标题党,虽然都是基础的操作,不过含括了基本的流程,比起脑海中的五花八门的画面,入门还是这个现实一点. 这里插两句,unity国外官网下载会推荐你看一个简短的视频,国内官网 ...

  7. 在code.org上自己写一个flappy bird游戏

    博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:在code.org上自己写一个flappy bird游戏.

  8. JavaScript的for循环中嵌套一个点击事件为何点击一次弹出多个相同的值

    先看下面一段代码: for(var i=0; i<10; i++) { $('#ul').bind('click', function() { alert(i) }) } 对于这段代码,当点击I ...

  9. 用Python设计一个经典小游戏

    这是关于Python的第9篇文章,介绍如何用Python设计一个经典小游戏:猜大小. 在这个游戏中,将用到前面我介绍过的所有内容:变量的使用.参数传递.函数设计.条件控制和循环等,做个整体的总结和复习 ...

随机推荐

  1. 一个html+js+ashx+easyui+ado.net权限管理系统

    http://www.cnblogs.com/oppoic/p/html_js_ashx_easyui_authorize.html

  2. Https与SSL介绍

    参考资料: http://www.ruanyifeng.com/blog/2014/02/ssl_tls.html http://www.ruanyifeng.com/blog/2014/09/ill ...

  3. 在C / C ++中清除输入缓冲区

    笔者介绍:姜雪伟,IT公司技术合伙人,IT高级讲师,CSDN社区专家,特邀编辑,畅销书作者,已出版书籍:<手把手教你架构3D游戏引擎>电子工业出版社和<Unity3D实战核心技术详解 ...

  4. js 下获取子元素的方法

    笔记核心: firstElementChild只会获取元素节点对象,从名称就可以看出来,firstChild则可以获取文本节点对象(当然也可以获取元素节点对象),比如空格和换行都被当做文本节点. js ...

  5. Linux 监视文件、文件夹改动

    /******************************************************************** * Linux 监视文件.文件夹改动 * 说明: * 主要是 ...

  6. linux中磁盘分区以及如何将磁盘挂载到系统中

    fdisk 分区 fdisk /dev/sdb -p查看当前分区-t 改分区号-w将分区表写进磁盘-n创建分区 -p主分区 -e拓展分区 partprobe 让内核更新分区信息cat /proc/pa ...

  7. my vim IDE 编辑器的配置

    <h4>1.自定义编辑.vimrc的快捷键</h4><blockquote>"Set mapleaderlet mapleader = ",&q ...

  8. 转载Verilog乘法器

    1. 串行乘法器 两个N位二进制数x.y的乘积用简单的方法计算就是利用移位操作来实现. module multi_CX(clk, x, y, result); input clk; input [7: ...

  9. Redis事件库源码分析

    由于老大在新项目中使用redis的事件库代替了libevent,我也趁着机会读了一遍redis的事件库代码,第一次读到“优美,让人愉快”的代码,加之用xmind制作的类图非常帅,所以留文纪念. Red ...

  10. Servlet表单Get和Post读取

    新建一个maven的war工程,如果没有web.xml新增一个web.xml或者拷贝一个例如: <?xml version="1.0" encoding="UTF- ...