3

Я хочу автоматизировать задачу, мне нужно прокрутить интерфейс карты, похожий на Google, что я обычно делаю:

  1. Нажмите на место
  2. Удерживайте нажатие
  3. Переместите мышь на 100 пикселей влево
  4. Хватит держать
  5. Подождите немного, вернитесь к 1

Тем не менее, я попытался $ xdotool click 1 mousemove_relative 0 100 но это не помогло, кажется, это не держит. Что я могу сделать, чтобы достичь этого?

2 ответа2

3

Чистая версия xdotool

Допустим, ваше место 500 500

xdotool mousemove 500 500
xdotool keydown Pointer_Button1
xdotool mousemove_relative 0 100
xdotool keyup Pointer_Button1
sleep 1

Вы также можете сжать его до одной строки, если хотите:

xdotool mousemove 500 500 keydown Pointer_Button1 mousemove_relative 0 100 keyup Pointer_Button1 sleep 1
1

Вы можете использовать xnee для записи действий мыши и воспроизведения их позже, когда это необходимо.

Для этого есть графический интерфейс, называемый gnee . В прошлый раз у меня не было очень хороших результатов, но это было давно, с тех пор все могло измениться.

Вот что я использовал для записи:

$ sleep 2 ; xmessage ready ; sleep 1 ; cnee --record --mouse --keyboard -o cnee.data

Это позволяет вам передвигаться и готовить вещи перед началом. Нажмите ok когда будете готовы, подождите 1 с и выполните свои действия. Ctrl-c, когда вы закончите.

Затем вы можете воспроизвести его с помощью:

$cnee --replay -f cnee.data -v -e /dev/null -ns

Вы даже можете воспроизвести его быстрее, чем оригинал (!)

$cnee --replay --speed-percent 40  -f cnee.data -v -e /dev/null -ns

Возможно, вам придется отредактировать конец cnee.data чтобы избавиться от того, что вы сделали между вашим действием и Ctrl-c.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .