xdotool模拟击键和鼠标移动
2015-11-07 14:49
393 查看
最近双十一抢红包的活动比较火,我也就去玩了一下,在一个小活动里,需要不停的点击左箭头和右箭头,让红包不停的跑,但自己点的比较慢,老是出现下面的图片
看到提示还有n多公里才跑完,感觉极度不爽,一怒之下,决定一定要跑过这个公里数,点的没那么快,就找个软件模拟去点击,于是就发现了 xdotool。
先看下最终的成果,直接超过了40000公里~~(然并卵,还是没有中红包)
下面来介绍以下xdotool
我用的是ubuntu,安装只需要只想如下命令:
虽然xdotool是那样的直观,但它仍然是个脚本程序。因此,为了要正确地使用它,你还是得了解它的语法。不过敬请放心,相对于程序的功能而言,语法还是比较简单易学的。
首先,模拟击键是很容易的。你可以从终端敲入下面的命令:
如果你想要连接两个键,可以在它们之间使用 “+” 操作符。它看起来像这样:
这两个组合键可以为你切换窗口。
要想让 xdotool 帮你输入,可以使用以下命令:
这些对于基本的击键而言已经足够了。但是,xdotool 的众多长处之一,就是它可以获取特定窗口的焦点。它可以获取右边的窗口,然后在里面输入,所有你记录下的按键都不会人间蒸发,而是老老实实的如你所愿的出现在那里。要获得该功能,一个简单的命令可以搞定:
该命令将在打开的窗口中搜索对应名称的窗口,并聚焦于该窗口,然后模拟击键。
来点更高级的,但很有用哦,xdotool 可以模拟鼠标移动和点击,看这命令:
你可以将光标定位到屏幕坐标(x,y)(像素)。你也可以使用 “click” 参数来组合:
这会让鼠标移动到(x,y),然后点击鼠标左键。“1”代表鼠标左键,“2”则是滚轮,“3”则是右键。
最后,一旦你这些命令根植于你脑海,你也许想要实际转储于文件来编辑并试着玩玩。鉴于此,就会有超过一个语句以上的内容了。你需要的就是写一个bash脚本了:
或者你可以使用:
这里你将命令写入到一个独立的文件中,然后通过将文件名作为 xdotool 命令的参数。
项目地址:http://www.semicomplete.com/projects/xdotool/
文档地址:http://www.semicomplete.com/projects/xdotool/xdotool.xhtml
关于之前小游戏模拟点击左右箭头的代码如下:
非常之简陋,只是拿来玩下,虽然 xdotool 能够模拟很多抢红包游戏的点击,但希望大家还是谨慎一点~~O(∩_∩)O哈哈~~
参考摘录:http://www.linuxidc.com/Linux/2014-08/105996.htm
看到提示还有n多公里才跑完,感觉极度不爽,一怒之下,决定一定要跑过这个公里数,点的没那么快,就找个软件模拟去点击,于是就发现了 xdotool。
先看下最终的成果,直接超过了40000公里~~(然并卵,还是没有中红包)
下面来介绍以下xdotool
我用的是ubuntu,安装只需要只想如下命令:
sudo apt-get install xdotool
虽然xdotool是那样的直观,但它仍然是个脚本程序。因此,为了要正确地使用它,你还是得了解它的语法。不过敬请放心,相对于程序的功能而言,语法还是比较简单易学的。
首先,模拟击键是很容易的。你可以从终端敲入下面的命令:
xdotool key [name of the key]
如果你想要连接两个键,可以在它们之间使用 “+” 操作符。它看起来像这样:
xdotool key alt+Tab
这两个组合键可以为你切换窗口。
要想让 xdotool 帮你输入,可以使用以下命令:
xdotool type ''
这些对于基本的击键而言已经足够了。但是,xdotool 的众多长处之一,就是它可以获取特定窗口的焦点。它可以获取右边的窗口,然后在里面输入,所有你记录下的按键都不会人间蒸发,而是老老实实的如你所愿的出现在那里。要获得该功能,一个简单的命令可以搞定:
xdotool search --name [name of the window] key [keys to press]
该命令将在打开的窗口中搜索对应名称的窗口,并聚焦于该窗口,然后模拟击键。
来点更高级的,但很有用哦,xdotool 可以模拟鼠标移动和点击,看这命令:
xdotool mousemove x y
你可以将光标定位到屏幕坐标(x,y)(像素)。你也可以使用 “click” 参数来组合:
xdotool mousemove x y click 1
这会让鼠标移动到(x,y),然后点击鼠标左键。“1”代表鼠标左键,“2”则是滚轮,“3”则是右键。
最后,一旦你这些命令根植于你脑海,你也许想要实际转储于文件来编辑并试着玩玩。鉴于此,就会有超过一个语句以上的内容了。你需要的就是写一个bash脚本了:
#!/bin/bash xdotool [command 1] xdotool [command 2] etc
或者你可以使用:
xdotool [filename]
这里你将命令写入到一个独立的文件中,然后通过将文件名作为 xdotool 命令的参数。
项目地址:http://www.semicomplete.com/projects/xdotool/
文档地址:http://www.semicomplete.com/projects/xdotool/xdotool.xhtml
关于之前小游戏模拟点击左右箭头的代码如下:
for i in {1..1000} do xdotool key Left xdotool key Right done
非常之简陋,只是拿来玩下,虽然 xdotool 能够模拟很多抢红包游戏的点击,但希望大家还是谨慎一点~~O(∩_∩)O哈哈~~
参考摘录:http://www.linuxidc.com/Linux/2014-08/105996.htm
相关文章推荐
- iptables操作过程详解与实例分析
- 适合移动应用的日期时间拾取器
- APP中文名字
- 3、继承、初始化⽅法、便利构造器
- Android 切换jdk on Mac OS
- 警告: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server did not find a matching property.
- 浅谈c++ Closure与tr1::function区别
- 安卓开发底层,应用,测试必看
- 深入理解C++中的mutable关键字
- java基础2
- winXP下安装opensshd服务
- hdu1251 统计难题(字典树)
- ZOj 3471 Most Powerful 状态压缩DP
- iOS多线程编程之NSThread的使用
- java基础
- V210调整根分区大小
- Swift - 自动优化照片,改善图像质量
- Best Meeting Point 解答
- 单例模式
- 国嵌嵌入式学习笔记之刷机