最近双十一抢红包的活动比较火,我也就去玩了一下,在一个小活动里,需要不停的点击左箭头和右箭头,让红包不停的跑,但自己点的比较慢,老是出现下面的图片

看到提示还有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}
doxdotool key Leftxdotool key Right
done

非常之简陋,只是拿来玩下,虽然 xdotool 能够模拟很多抢红包游戏的点击,但希望大家还是谨慎一点~~O(∩_∩)O哈哈~~

参考摘录:http://www.linuxidc.com/Linux/2014-08/105996.htm

转载于:https://www.cnblogs.com/CraryPrimitiveMan/p/4944982.html

xdotool模拟击键和鼠标移动相关推荐

  1. 在Linux中模拟击键和鼠标移动

    `你是否曾经拥有一个梦--你的计算机可以自动为你干活?或许,并非因为你刚看了终结者.然而,除此之外脚本和任务自动化是每个高级用户追寻的梦如果今天有许多的解决方案可以满足这个目标那么有时候就难以从那众多 ...

  2. 有谁用过sendinput摸拟一个鼠标击键?

    我想用,但定义了MOUSEINPUT和INPUT结构,编译是时出现这个错误:  E:\My document\VC++programs\13\13.cpp(152) : error C2065: 'M ...

  3. MFC中由左键单击模拟左键双击引起的问题

    项目需要根据左键单击计时的手段来模拟左键双击的效果. msdn对于WM_LBUTTONDBLCLK中有一句: Only windows that have the CS_DBLCLKS style c ...

  4. 模拟鼠标键盘html,模拟按键操作神器(鼠标键盘模拟操作助手)V2.0.2.1 正式版

    模拟按键操作神器(鼠标键盘模拟操作助手)是一款很优秀好用的由网友自制的模拟按键操作的辅助工具.如果你需要一款好用的键盘模拟软件,小编带来的这款模拟按键操作神器是很不错的选择,功能强大全面,使用后可以帮 ...

  5. php左键点改成左键点,window_win10怎么将鼠标左键设置为主键?win10鼠标左右键互换的技巧,当我们的鼠标使用一段时间之 - phpStudy...

    win10怎么将鼠标左键设置为主键?win10鼠标左右键互换的技巧 当我们的鼠标使用一段时间之后,会由于左键经常按压而导致老化或者损坏,而对于突然间的损坏,又没有其他可以替代的鼠标时候,就需要对鼠标左 ...

  6. JQuery模拟网页中自定义鼠标右键菜单

    题外话.......最近在开发一个网站项目的时候,需要用到网页自定义右键菜单,在网上看了各路前辈大神的操作,头晕目眩,为了达到目的,突然灵机一动,于是便有了这篇文章. 先放个效果图(沾沾自喜,大神勿喷 ...

  7. 【Android】模拟返回键、菜单键、Home键

    Android 如何模拟返回键.菜单键.主页键? 如果有一个悬浮窗,运行所有程序的时候都能够看到,我希望点击悬浮窗就模拟返回键的功能,不管我现在运行的是什么程序,这个如何实现? 方法一: Runtim ...

  8. 掌握正确的指法---击键要领、雨儿五笔打字视频

    掌握正确的指法---击键要领.雨儿五笔打字(片长:1分钟9秒).雨儿指法实录-带耳机(片长:1分钟19秒) 十指分工,包键到指,能者多劳,各司其职         我们知道,要让电脑听您使唤,必须给电 ...

  9. 计算机的击键方法教学教案,2.2 敲击键盘 教案

    2.2 敲击键盘 教案 ==================资料简介====================== <第2节 敲击键盘>教学设计 教科书选材: 四川教育出版社 三年级上册 教 ...

最新文章

  1. 前后端分离的接口规范是什么?
  2. 15、url反向解析和别名及命名空间
  3. android studio放置在函数上面看_Android中用Kotlin协程和Retrofit进行网络请求和取消请求...
  4. spring中bean的细节之三种创建Bean对象的方式
  5. hivesql优化的深入解析
  6. freecodecamp_如何对freeCodeCamp文章提供反馈
  7. mysql初始化脚本建表_mysql新建表修改表sql脚本
  8. hdu3652(数位dp)
  9. css 矩形两边挖半圆
  10. Codeforces 739B Alyona and a tree (树上路径倍增及差分)
  11. Apache/Tomcat/JBOSS/Neginx/lighttpd/Jetty 的区别
  12. Android点击通知栏信息后返回正在运行的程序,而不是一个新Activity
  13. matlab 将路径靠左,latex 图片位置靠左
  14. java 视频断点播放,实现无卡顿
  15. Windows10开机进不了BIOS的解决办法
  16. 如何获取OpenAI API Key
  17. 【输入法】不显示中文
  18. 贝加莱工控机维修主板维修5PC600.SX01-00常见故障排查
  19. 这可能是2021年GDPR的最大罚单
  20. android http 网关,安卓平台上实现基于HTTP协议数据网关的方法

热门文章

  1. SaaSBase:最受欢迎的HR人力资源软件有哪些(下篇)
  2. JavaWeb:JSP 和 JSTL
  3. latex中同一处引用多篇文献
  4. PDF怎么转换为CAD?这里有个好用的方法
  5. 【前端】HTML锚点跳转实现
  6. HTML基础-06-表格(表<table> ,行 <tr>,列 <tb>,表头 <th>,跨列colspan,跨行rowspan,单元格边距 cellpadding,单元格间距cellspacing)
  7. UWPWP8.1图片照片添加水印
  8. vue-element-admin项目采用keep-alive全缓存,删除标签移除指定的缓存
  9. GPS定位信息的接收
  10. 面试阿里测试开发,面试结束后,还被面试官在朋友圈吐槽“什么阿猫阿狗都敢来面试大厂了吗?”