Имитация движения мыши в Ubuntu - PullRequest
11 голосов
/ 07 июня 2010

Задача

Я хочу автоматически перемещать курсор мыши и имитировать щелчки кнопок мыши из командной строки, используя внешний скрипт. Не ищу:

  • Запись движения и воспроизведения мыши (например, xnee, xmacro)
  • Мгновенное перемещение мыши из одного места в другое (например, xdotool, указатель warp_pointer в Python)

Идеальное решение

Я хотел бы сделать следующее:

  1. Редактировать файл простого скрипта (например, mouse-script.txt).
  2. Добавить список координат, скорости движения, задержек и нажатий кнопок. Например:
    (x, y, rate) = (500, 500, 50)
    sleep = 5
    click = left
    
  3. Запустите скрипт: xsim < mouse-script.txt.

Вопрос

Как автоматизировать движение мыши, чтобы она перемещалась из своего текущего местоположения в другое место на экране с определенной скоростью? Например:

xdotool mousemove 500 500 --rate 50

--rate 50 не существует с xdotool.

Ответы [ 2 ]

14 голосов
/ 07 июня 2010
  1. Скачать xaut для Python
  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
    ./configure
    
  4. Редактировать src/Makefile
  5. Измените строку CFLAGS следующим образом:
    CFLAGS = -Wall -fPIC -fno-stack-protector
  6. Пробег:
    make
    
  7. Скопируйте /usr/local/src/xaut-0.2.0/python/build/lib/* в новый каталог.
  8. Перейдите в этот новый каталог.
  9. Скопируйте и вставьте следующий скрипт в mm.py:
    import xaut
    mouse = xaut.mouse()
    delay mouse.move_delay( 100 )
    mouse.move( 500, 500 )
    
  10. Запустить скрипт:
    python mm.py
7 голосов
/ 16 декабря 2014

в более новых версиях Ubuntu (14.04+) вы можете использовать Autopilot , инструмент тестирования пользовательского интерфейса для Ubuntu. Он предназначен для создания и запуска тестов пользовательского интерфейса, но также может использоваться для основных задач автоматизации графического интерфейса.

для установки:

$ 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. Следите за движением указателя мыши!

...