在Ubuntu中模拟鼠标移动

问题

我正在寻找自动移动鼠标光标,并使用外部脚本从命令行模拟鼠标button点击。 我不是在看:

  • logging鼠标移动和回放(例如xnee,xmacro)
  • 即时将鼠标从一个位置移动到另一个位置(例如,xdotool,Python的warp_pointer)

理想解决scheme

我想要做的是以下几点:

  1. 编辑一个简单的脚本文件(例如, mouse-script.txt )。
  2. 添加坐标列表,移动速度,延迟和button点击。 例如:
     (x,y,rate)=(500,500,50)
    睡眠= 5
    点击=左边
    
  3. 运行脚本: xsim < mouse-script.txt

如何使鼠标移动自动化,以便以特定的速度从当前位置转换到屏幕上的另一个位置? 例如:

 xdotool mousemove 500 500 --rate 50 

--rate 50不存在于xdotool

  1. 下载Python的xaut
  2. 按照README说明进行操作
  3. 跑:
     sudo apt-get install swig x11proto-xext-dev libx11-dev libxtst-dev
     cd / usr / local / src
     tar zxf xaut-0.2.0.tar.gz
     。/配置
    
  4. 编辑src/Makefile
  5. 更改CFLAGS行如下所示:
     CFLAGS = -Wall -fPIC -fno-stack-protector 
  6. 跑:
    使
    
  7. 复制/usr/local/src/xaut-0.2.0/python/build/lib/*到一个新的目录。
  8. 更改为新的目录。
  9. 将以下脚本复制并粘贴到mm.py
    导入xaut
     mouse = xaut.mouse()
    延迟mouse.move_delay(100)
     mouse.move(500,500)
    
  10. 运行脚本:
    蟒蛇mm.py 

在较新版本的Ubuntu(14.04+)上,您可以使用Autopilot (一种用于Ubuntu的UI测试工具)。 它用于创建和运行用户界面测试,但也可以用于基本的GUI自动化任务。

安装:

 $ sudo apt-get install python3-autopilot 

示例脚本(Python3)来自动化鼠标移动 :

 #!/usr/bin/env python3 from autopilot.input import Mouse mouse = Mouse.create() mouse.move(100, 50) mouse.click() 

你可以像运行其他Python3脚本一样运行它。 看着你的鼠标指针移动!