Как я могу автоматически щелкать мышью каждые 5 секунд?

42

Я хочу нажать на что-то часами. Как я могу сделать скрипт или использовать приложение, чтобы мышь автоматически щелкала каждые 5 секунд или меньше?

Jeggy
источник

Ответы:

67

Редактировать: xdotool click --delay 5000 --repeat 200 1

На 200 кликов мышкой


Откройте терминал, установите xdotool

sudo apt-get install xdotool

Кроме того, откройте окно, которое вы хотите щелкнуть рядом с терминалом. Выберите терминал (в качестве активного окна) и наведите курсор мыши на точку, в которой вы хотите щелкнуть . В терминальном типе (старайтесь не двигать мышь)

xdotool getmouselocation

Вам понадобятся x: XXX и y: YYY (внизу). Вы можете переместить мышь отсюда, но пусть окна остаются там, где они есть. Тип

gedit script

Вставьте следующее в gedit (измените XXX и YYY на числа, которые вы получили ранее)

#!/bin/bash
while [ 1 ]; do
  xdotool mousemove XXX YYY click 1 &
  sleep 5
done

Сохраните и закройте его. затем

chmod +x script

Чтобы выполнить это,

./script

Чтобы получить меньше, просто измените 5 после сна на меньшее.

Источник: http://manpages.ubuntu.com/manpages/lucid/man1/xdotool.1.html и http://ubuntuforums.org/showthread.php?t=925217

Александр Кампос
источник
3
while sleep 5; do ...
Олат
1
1 в click 1означает левую кнопку мыши. Из справочной страницы: «Левая мышь - 1, середина - 2, справа - 3, колесо вверх - 4, колесо вниз - 5».
действительно
8
xdotool click --delay 5000 --repeat 100000 1(при условии, что мышь оставлена ​​там, где она должна щелкнуть). И нет необходимости в сценарии для более сложных случаев ... пока циклы работают в командной строке ... (метод @ Олате также намного лучше ...). while sleep 5; do xdotool mousemove XXX YYY click 1; done
Герт ван ден Берг
@GertvandenBerg Пожалуйста, сделайте ваш комментарий ответом!
holocronweaver
(Этот комментарий теперь является ответом)
Герт ван ден Берг
15

Я пошел на эту страницу и скачал, xautoclick_0.20-1~ppa1_amd64.deb (14.3 KiB) и она прекрасно работает: D

введите описание изображения здесь

Спасибо Кэт Амстердам за то, что нашли xautoclick

Jeggy
источник
9
Опасно просто скачать один файл и установить его. Чтобы получать обновления безопасности для пакета и новых функций, рекомендуется установить ppa ::: apt-add-repository ppa: c-korn / ppa
Kat Amsterdam,
6

В Lucid 10.04 LTS

  1. Открытый Ubuntu Software Center
  2. В поле поиска введите автоклик
  3. Скачать xautoclick

    Для Precise 12.04LTS пакет был удален из репозиториев Ubuntu и доступен только через GetDeb.

    Инструкция xautoclick для точной установки

    или через PPA Кристофа Корна (который является членом GetDeb):

    sudo apt-add-repository ppa:c-korn/ppa

  4. Загрузите xautoclick через центр программного обеспечения (или, если вам удобно с терминалом)

    sudo apt update && sudo apt upgrade && sudo apt install xautoclick

  5. Прочитайте инструкцию на xautoclick man xautoclick
  6. Под Программы, Аксессуары выбирают xautoclick
  7. Измените интервал на 5000 (значение равно миллисекундам)
  8. Нажмите Пуск
  9. Наведите курсор на то, что вы хотите нажать
  10. Наслаждайтесь!

    xautoclick

Чтобы включить репозитории GetDeb:

wget -q -O - http://archive.getdeb.net/getdeb-archive.key | sudo apt-key add -
sudo sh -c 'echo "deb http://archive.getdeb.net/ubuntu precise-getdeb apps" >> /etc/apt/sources.list.d/getdeb.list'
Кэт Амстердам
источник
ни один из них не был в софт-центре, и я нашел этот archive.ubuntu.com/ubuntu/pool/universe/k/kautoclick, но после его установки я получаю эту ошибку при попытке открыть ее: kautoclick: ошибка при загрузке общих библиотек : libkdeui.so.4: невозможно открыть общий объектный файл: нет такого файла или каталога
Jeggy
5

С установленным xdotool: ( apt-get install xdotool(как root или с помощью sudo))

Это будет щелкать в текущей позиции мыши каждые 5 секунд в течение 100000 раз (то есть где-то между 5 и 6 днями ...)

xdotool click --delay 5000 --repeat 100000 1 # (assuming the mouse is left where it needs to click).

Чтобы щелкнуть в определенном месте: (В дружественной для командной строки версии для сценария вы, вероятно, хотите лучше отформатировать)

while sleep 5; do xdotool mousemove XXX YYY click 1; done

( --repeatможно использовать и здесь, но это не повторит движение ...)

Герт ван ден Берг
источник
Отличное решение !!!
Эрик Ван
4

Для еще большей автоматизации вы можете использовать sikuli .

Sikuli имеет встроенный инструмент, который позволяет очень просто написать любую форму взаимодействия (щелчок мышью или клавиатуру) путем визуальной обработки того, что находится на экране.

Вы просто выбираете, где вы хотите, чтобы ваш клик происходил, визуально выбирая часть экрана, и она выключается. Логика автоматизации написана на python, но даже если вы не имеете никакого представления о python, вы можете легко понять это, потому что инструмент предоставляет вам все сразу!

Вы можете просто установить его с помощью sudo apt-get install sikuli-ide.

offlinehacker
источник