Каждый, играя, хоть раз думал: «вот бы написать программу, которая играла бы за меня!». Но обычно эта мысль, так мыслью и остается… Постоянно что-то мешает: незнание с чего начать, страх перед неподъемностью задачи, шепоток из-за левого плеча «и зачем это? кому это надо, чтобы программа играла с программой?» и т.д.
В данном цикле статей я собираюсь показать, что, во-первых: «не так страшен черт, как его малюют», а во-вторых: позже собираюсь ответить и на вопрос: «зачем это надо?».
Сейчас начнем с простого. С установления взаимосвязи между игрой и программой-игроком (ботом). В качестве подопытного кролика берется широкоизвестная игра Zuma.
Всякое взаимодействие складывается из двух процессов: отправки данных «им» и получения данных от «них». В Zuma всё управление делается мышой, а обратную связь игра выдает с помощью изображения. Соответственно, перво-наперво необходимо научиться программно эмулировать поведение мыши и получать изображение от игры.
Основная цель этой статьи: получить программу, которая самостоятельно раз за разом заходит в игровой процесс, там что-то делает, а при game over-е начинает всё заново. Далее этот каркас будет развиваться в направлении, чтобы бот всё дальше и всё дольше продержался в игре до game over-а.
Как автоматизировать выполнение действий на компьютере в Clickermann
Решаемые вспомогательные подзадачи: эмуляция мыши, перенаправление мыши на виртуальную машину, захват изображения.
Отступление
При разработке кода для данного цикла статей используется подход: как можно быстрее получить результат за минимум усилий. Такой подход позволяет поддерживать мотивацию на высоком уровне, и не дает опустить руки при виде неподъемности задачи. Из-за этого:
— во-первых, многие малозначимые (с точки зрения текущего результата) моменты будут быстро пробегаться, оставляя в коде «костыли и подпорки». И только на следующих итерациях эти моменты будут отдельно разбираться, и «костыли» будут заменяться на полноценный код.
— во-вторых, стиль кода больше «хакерский», чем классический C#-ный. В коде будет много лямд, анонимных данных, трюков, авторского произвола и полное отсутствие комментариев.
Эмуляция мыши
Windows поддерживает 2 штатных способа эмуляции мыши с помощью 4 различных функций WinApi.
Первый способ : посылка программе своих window-сообщений (WM_MOUSEMOVE , WM_LBUTTONDOWN и т.д.) с помощью функций SendMessage или PostMessage .
Для DirectX-игр (как в нашем случае) такой способ не подходит, потому что такие программы для опроса мыши используют DirectInput, который опрашивает мышь напрямую, игнорируя windows-сообщения.
Второй способ : прямая эмуляция поведения мыши с помощью функций mouse_event или SendInput . Этот способ подходит для любых программ, в том числе и для полноэкранных DirectX-игр. Функция mouse_event попроще, но она считается устаревшей, SendInput — современнее, но более громоздкая. Остановимся на mouse_event.
WinApi-функции из C# вызываются с помощью технологии PInvoke . PInvoke-описание для большинства распространных WinApi-функций можно взять на сайте PInvoke.net . Функция mouse_event не является исключением .
Как Настроить Clickermann Способом 24 На 7?
public static extern void mouse_event(uint dwFlags, int dx, int dy, uint dwData, UIntPtr dwExtraInfo);
Координаты мыши
Функция mouse_event имеет специфическую особенность: координаты мыши задаются в mickey, а не в пикселях. Перерасчет mickey в пиксели (и обратно) зависит от разрешения основного используемого монитора. (0,0) соответствует левому верхнему углу монитора, а (65535, 65535) нижнему правому, что дает формулы для пересчета mickey в пиксели и обратно: mickey_point = pixel_point * (65536, 65536) / screen_size и pixel_point = mickey_point * screen_size / (65536, 65536) .
Основные операции
Суммируя всё вышеперечисленное, получаем следующие операции для управления мышью.
Передвижение курсора мыши в точку (x,y):
mouse_event(MouseEventFlags.MOVE | MouseEventFlags.ABSOLUTE, x * 65536 / screen_width, y * 65536 / screen_height);
Клик левой кнопкой мыши:
mouse_event((MouseEventFlags.LEFTDOWN), 0, 0); System.Threading.Thread.Sleep(100); mouse_event((MouseEventFlags.LEFTUP), 0, 0);
Клик правой кнопкой мыши:
mouse_event((MouseEventFlags.RIGHTDOWN), 0, 0); System.Threading.Thread.Sleep(100); mouse_event((MouseEventFlags.RIGHTUP), 0, 0);
Проблема: эксклюзивность ввода
При эмуляции мыши через функцию mouse_event присутствует серьезное неудобство: mouse_event имитирует мышь для всей ОС сразу, а не для отдельного приложения. Из этого следует, что пока бот запущен и играется, то невозможна другая работа за компом: отладка бота, активный просмотр состояния бота, чтение интернета и т.д. Но есть выход: виртуальная машина!
Перенос игры на виртуальную машину
Перенос игры на виртуалку решает следующие проблемы:
— во-первых, упрощается взаимодействие с играми, которые не поддерживают оконный режим и работают только в полноэкранной режиме,
— во-вторых, ввод мыши подменяется только на виртуалке, а на основной машине продолжает работать в нормальной режиме, позволяя пользователю компьютера заниматься своими делами.
Бота, в отличии от самой игры, удобнее запускать на основной машине. Это позволяет перезапускать бота напрямую из Visual Studio, там же его отлаживать, есть куда выводить внутреннее состояние бота и т.д.
Развертывание виртуальной машины (в данном случае использовалась Oracle VirtualBox), установка гостевой ОС и перенос игры делается штатным образом за исключением одного момента: для бота необходима возможность установки связи по сети между хостовой ОС и гостевой ОС. Это делается множеством способов. Один из способов, прокинуть с помощью VirtualBox конкретный порт из гостевой ОС в хостовую. Другой способ, настроить режим Bridged Adapter, тогда виртуалка для всей сети будет выглядеть как обычный компьютер, и гостевая ОС будет получать свой ip-адрес через dhcp от роутера. По этому адресу и будет происходит доступ из хостовой ОС в гостевую. (автором, в данном случае, использовался вариант с bridged adapter)
Прокси
Для управления мышью на гостевой ОС напишем прокси, представляющий из себя простенький консольный tcp-сервер. Его полный код небольшой и представлен под катом. Для упрощения кода и уменьшения зависимостей прокси написан на голом socket-е без использования remoting-а, wcf и т.д.
Код прокси-сервера
Для работы прокси достаточно его скопировать на виртуальную машину и запустить. Прокси ждет сообщения на порту 7001 и выводит лог своей работы на консоль. Для завершения работы прокси достаточно закрыть консольное окно.
Клиент
Перехват изображения
Изображение проще всего захватывать напрямую с экрана. В.net-е для этого есть готовая функция Graphics.CopyFromScreen . На этом способе и остановимся подробнее.
Во-первых, на выходе хочется получить Bitmap, а не Graphics — это решается с помощью вспомогательной функции:
public static Bitmap GetScreenImage(Rectangle rect) < var bmp = new Bitmap(rect.Width, rect.Height, PixelFormat.Format32bppArgb); using (Graphics graphics = Graphics.FromImage(bmp)) < graphics.CopyFromScreen(rect.Left, rect.Top, 0, 0, rect.Size, CopyPixelOperation.SourceCopy); >return bmp; >
Во-вторых, необходимо знать какую часть экрана надо захватывать. Можно, конечно, захватывать всегда одну и ту же часть экрана, а игру руками располагать в этой части экрана, но это не спортивно не удобно. Тем более автоматизация этого процесса делается минимальными усилиями. В этом нам опять поможет WinApi и PInvoke, а конкретнее две функции: FindWindow и GetWindowRect . FindWindow позволяет по заголовку окна получить handle окна, а GetWindowRect по handle-у возвращает позицию и размер окна на экране.
Pinvoke-описание обеих функций есть на сайте pinvoke.net: FindWindow и GetWindowRect .
public static extern IntPtr FindWindow(string lpClassName, string lpWindowName); public static extern bool GetWindowRect(IntPtr hwnd, out RECT lpRect); public struct RECT < public int Left; public int Top; public int Right; public int Bottom; >
И код захвата изображения окна виртуальной машины получается следующим:
var vm_left = 8; var vm_right = 8; var vm_top = 50; var vm_bottom = 30; var vm_title = «Windows81 — Oracle VM VirtualBox»; var handle = FindWindow(null, vm_title); if (handle == IntPtr.Zero) throw new Exception(«Окно не найдено»); RECT rect; GetWindowRect(handle, out rect); var gameScreenRect = new System.Drawing.Rectangle(rect.Left + vm_left, rect.Top + vm_top, rect.Right — rect.Left — vm_right — vm_left, rect.Bottom — rect.Top — vm_bottom — vm_top); var gameBmp = GetScreenImage(gameScreenRect);
Слабое место
Существенным недостатком данного подхода является то, что захватываемое окно, во-первых: обязано целиком располагаться на экране, а во-вторых: обязано располагаться поверх всех остальных окон. Это неудобство нивелируется с помощью двух (и более) мониторов:), тогда окно виртуальной машины располагается на вспомогательном мониторе, ни кому не мешая, оставаясь поверх остальных окон. Также данная проблема полностью решается с помощью ранее расмотренного способа: переноса функции (захват экрана) внутрь виртуальной машины. Для этого достаточно добавить соответствующую функцию в InputProxy.
Зацикливаем игровой процесс
Резюме
Поставленная цель выполнена: каркас бота написан — игровой процесс зациклен.
Следующие цели: подключить OpenCV, распознать положение и цвет шаров.
Ps
Изображение для привлечение внимания. (Оранжевым показаны области, которые следующая версия бота распознала как шары)
Mouse Recorder — это универсальный сервис, созданный для освобождения пользователя от любого повторяющегося действия при выполнении задач на компьютере. Чтобы автоматизировать процесс следует записать алгоритм действий (макрос) — движения мыши и нажатий клавиш. Запись мыши и клавиатуры выполняется при помощи программы.
Вам не потребуется специальных навыков программирования — процесс происходит легко и просто. Возможности программы позволяют индивидуально настроить любое движение мыши или нажатие клавиши на клавиатуре для быстрого выполнения определённой задачи. Автоматизация действий мыши и клавиатуры упрощает работу за компьютером, что позволяет Вам выполнить один и тот же процесс за меньшее время, увеличивая скорость выполнения проекта. При этом в приложении реализована уникальная возможность использования Ваших записей совместно с отдельным сервисом «PhraseExpress», который добавляет дополнительных возможностей Вашей работе.
Mouse Recorder — доступный сервис для автоматизации работы на Windows
Mouse Recorder — бесплатная программа для записи макросов, воспроизведение которых позволяет существенно упростить и ускорить выполнение некоторых задач: отладку программного обеспечения компьютера, выявление ошибок веб-страниц, имитацию действий пользователя и подобную работу на ПК при помощи автоматизированной работы сервиса. Программа для записи действий мыши и клавиатуры проста в использовании и не требует особой подготовки пользователя.
Записать мышь с клавиатурой и повторить
Чтобы упростить себе монотонную работу над повторяющимися задачами достаточно установить Mouse Recorder, пользоваться которым сможет даже начинающий программист или веб-дизайнер. Автоматизация мыши и клавиатуры происходит в несколько этапов: для начала записываем нужный макрос при помощи кнопки «Запись (Record)», затем, чтобы в дальнейшем повторить записанные действия — надо нажать кнопку «Воспроизвести (Play)» на настраиваемой скорости воспроизведения. Так можно легко запомнить действия мыши и клавиатуры и повторить их в нужный момент. Удобный редактор позволяет настраивать под себя любые движения мыши, действия кнопок на клавиатуре, а также редактировать и добавлять необходимые паузы, клики и нажатия клавиш. Точность записи перемещения мыши и временные интервалы кликов соблюдаются программой в автоматическом режиме.
Имитация мыши и клавиатуры
Все создано для комфортного пользования — запись и автоматизация действий пользователя происходит под непосредственным руководством человека и автоматической системы утилиты. Программа Mouse Recorder обеспечит Вам восстановление позиций окна записанного приложения, если окно по каким-то причинам изменило свое положение на экране. Для многопользовательского использования программы Mouse Recorder можно осуществить синхронизацию с веб-сервисом Dropbox, что позволит получить доступ к записям другим пользователям.
Скриншоты программы Mouse Recorder
Официальный сайт: http://www.mouserecorder.com/
Операционные системы: Windows All
Поддерживаемые языки: Английский
Версия: 1.0.50
Лицензия: fre eware (бесплатная )
Размер файла 2,4 Мб
![]() |
Еще интересные программы.
Move Mouse служит для имитации присутствия пользователя за компьютером за счёт движения курсора мыши и нажатия её кнопок. Кроме того ею можно воспользоваться для запуска каких-то программ, выполнения команд или скриптов PowerShell. Активироваться утилита может вручную или автоматически, при отсутствии активности пользователя и по расписанию, тоже самое касается и прекращения заданных операций.
Для каждой из операций арсенала программы доступны дополнительные опции, позволяющие задать дистанцию и направление движение мыши, выбрать кнопку, нажатие которой будет имитироваться, указать аргументы для команды или скрыть окно консоли. Все действия могут повторяться (с настраиваемой паузой) или выполняться один раз.
Кроме автоостановки и автозапуска, о которых мы уже упоминали, в настройках поведения Move Mouse доступна опция автоматического изменения громкости звука, скрытия окна программы с рабочего стола, кнопки и иконки с панели задач, миниатюры из диалогового окна ALt+Tab и перезаписи заголовка. Последние опции помогут скрыть следы ей присутствия и использования на компьютере, если кому-то это потребуется.
Настроить расписание активации действий можно как при помощи простейшего планировщика, позволяющего выбрать день недели и время запуска или остановки программы, так и более продвинутого, поддерживающего ввод выражений Cron. По расписанию Move Mouse может и приостанавливать свою деятельность, длительность «блэкаута» также изменяется.
Распространяется программа бесплатно, язык интерфейса в текущей версии доступен только один — английский. Воспользоваться Move Mouse можно на компьютерах и планшетах с Windows 10. Судя по всему, после публикации программы в Магазине Windows, от распространения через другие источники разработчик отказался.
Установить из Microsoft Store
Очень часто при работе на компьютере приходится выполнять ряд однотипных действий с мышью, клавиатурой, и т.д. Всё это выматывает и сообразительные программисты (а они всегда сообразительные!),для облегчения работы пользователя написали такие программы, которые называются автокликеры. Рассмотрим, как можно избежать рутинной работы на примере замечательной программы eMouse.
eMouse
Заходим на сайт и её с . Установка — ничего сложного. После установки её запускаем — появляется окно.
Слева кнопка «Rec»(запись) -после нажатия будут записаны ваши действия с мышью и на клавиатуре. «Play» проиграет (повторит записанные действия). А сколько раз можно установить в поле «х» (на картинке установлено 1 раз), при этом ставим галочку в поле «loop Playback»
Внизу слева стоят галочки Record: Keys и Mouse, т.е. если эти галочки стоят, то будут записываться действия мыши и клавиатуры (а если не стоят, то соответственно).
Можно посмотреть (и изменить) настройки. Жмем на ссылку «Edit» и в контекстном меню выбираем «Settings»
Вот и настройки.
Установлены «Горячие клавиши». Для начала записи действий — F5, а для паузы- F11, для воспроизведения- F12.
Записанные действия (скрипт) можно сохранить,т.е. можно написать кучу всяких последовательностей и вызывать их по мере необходимости.
Открываем «File» и выбираем «Save Script as…» (Сохранить скрипт как…) и сохраняем его где нам нужно.
AutoClicker (самый примитивный)
Если нужно делать огромное количество кликом правой или левой кнопкой мыши то эта прога для вас. Отлично использовать Вконтакте в играх PROFIT! Супер Кликер или Кликер.
Программа платная, но её «бесплатный » вариант можно скачать по . Её и запускаем. Интерфейс программы довольно простой.
Как работать с левой кнопкой мыши -написано в левой части, а с правой — в правой(с ползунками разберемся позднее). Используем горячие клавиши.
Запускаем программу, т.е. жмем на клавиатуре ALT+1. Это не значит, что мы нажимаем на клавиатуре клавишу ALT, потом клавишу «+», а потом и клавишу с цифрой «1!. Нет, мы просто одновременно нажимаем клавиши «ALT» и «1».
Заходим Вконтакте, ищем игру где нужно делать кучу кликов, подводим мышь и жмем ALT+1. И пока не нажмем ALT+2 клики будут продолжаться.
Ghost Mouse можно скачать на . Установка -ничего сложного. Запускаем.
Для записи действий нажимаем красную кнопку. Или нажимаем F9, Для воспроизведения действий нажимаем «Ctrl+Q «.
Источник: ntlink.ru
6 лучших рекордеров мыши для записи движений мыши и клавиатуры
Если вам нравится записывать игры, то рекордер мыши — один из инструментов, который вам нужен больше всего. Вы можете использовать этот инструмент для записи каждого шага и действия вашей мыши в игре и сделать полное и прекрасное обучающее видео по игре. Но как найти лучшее среди множества программ? К счастью, в этом посте будут рассмотрены 6 новейших рекордеров мыши с их плюсами, минусами и функциями. Вы можете выбрать один в соответствии с вашими потребностями и предпочтениями!
Часть 1: 6 лучших рекордеров мыши для Windows/Mac
Топ 1: программа записи экрана AnyRec [Windows/Mac]
AnyRec Screen Recorder это профессиональный рекордер экрана, который может записывать все ваши движения мыши с высоким качеством. Этот отличный инструмент может без проблем работать в качестве рекордера мыши для Windows и Mac. Помимо записи действий мыши, он также может записывать любые другие действия на рабочем столе и делать скриншоты с прокруткой.
Поддержка записи действий мыши и щелчков мыши без задержек.
Поддержка использования пользовательских цветов для записи областей мыши.
Записывайте полный экран или любую часть экрана компьютера в формате MP4 для высококачественного воспроизведения.
Настройте горячую клавишу для запуска/остановки/паузы/возобновления записи.
Шаг 1. Бесплатно загрузите AnyRec Screen Recorder с официального сайта. Затем щелкните Видеомагнитофон кнопку на главной странице.
Шаг 2. После этого вы можете выбрать область для записи экрана. Если вы хотите записать весь экран, нажмите кнопку Полный кнопка. Между тем, вы также можете включить микрофон, системный звук и Веб-камера.
Шаг 3. Вы можете нажать на Настройки мыши кнопка со значком мыши, чтобы включить Записать щелчок мышью . И вы можете записать область мыши в пользовательских цветах. Если вы хотите показать мышь и нажатие клавиши, вы должны установить флажок.
Шаг 4. Последний шаг — нажать кнопку Rec кнопку, чтобы начать запись. С помощью этого рекордера мыши вы можете записывать движения мыши с высоким качеством.
Топ 2: средство записи макросов JiBiT [Windows]
Регистратор макросов JiBiT — это программное обеспечение для записи макросов для захвата движений мыши и ввода с клавиатуры в Windows. В дополнение к общей функции записи, этот рекордер мыши также позволяет вам устанавливать горячие клавиши мыши и клавиатуры и запускать их из любого приложения. Этот инструмент также поддерживает преобразование ваших макросов в EXE-файлы, которые запускаются на любом компьютере, совместимом с Windows.
Плюсы Программа записи макросов с мышью имеет простой и понятный пользовательский интерфейс. Поддержка вставки пользовательских команд и операторов в макросы. Минусы Файл записи мыши нельзя экспортировать для воспроизведения на других устройствах. Использование всех функций стоит $99 в год.
Топ 3: ReMouse [Windows]
Если вы хотите записывать все события мыши и клавиатуры без каких-либо знаний в области программирования, вы можете попробовать ReMouse . Этот рекордер мыши имеет простой и удобный интерфейс настройки. Он также обеспечивает уникальную интеллектуальную технологию записи. Вы также можете запустить несколько макросов через диспетчер задач.
Плюсы Обеспечьте удобное и гибкое расположение триггеров. Сохраните запись операции как файл сценария для последующего использования. Минусы Экспорт файлов записи не поддерживается. Невозможно повторить движение мыши.
Топ 4: Mouse Recorder Pro 2 [Windows]
Регистратор мыши Pro 2 это бесплатное приложение для записи мыши, разработанное Nemex для Windows. Это программное обеспечение сочетает в себе множество преимуществ, таких как передовые, простые в использовании, профессиональные, хорошо продуманные, легкие системные ресурсы и эффективность. Вы можете записывать ввод с компьютерной мыши и клавиатуры, что упрощает и ускоряет повторение операций.
Плюсы Используйте календарь, чтобы настроить воспроизведение сценария в определенное время. Используйте редактор для редактирования сценария и предоставления нескольких параметров конфигурации. Минусы Нет специальной 64-битной загрузки.
Топ 5: Призрачная мышь [Windows]
GhostMouse — это микропрограмма, позволяющая записывать и воспроизводить ряд действий мыши, включая операции перетаскивания и щелчок правой кнопкой мыши. Используя простой трехкнопочный интерфейс этого рекордера мыши, вы можете записывать сценарии для воспроизведения набора действий.
Плюсы Нажатие кнопки «Воспроизвести» позволяет создать бесконечный цикл щелчков мышью. Программное обеспечение имеет небольшой объем памяти и не занимает много места. Минусы Это не бесплатный рекордер мыши. В новой версии есть некоторые застрявшие проблемы.
Top 6: Macro Recorder [Window/Mac]
Существуют ли какие-либо другие устройства записи мыши, совместимые с Windows и Mac? Запись макросов это хороший выбор, который вы можете рассмотреть. Подобно магнитофону, вы можете записывать движения мыши, щелчки мышью и ввод с клавиатуры. Этот рекордер мыши также предоставляет встроенный редактор макросов, который позволяет просматривать записанный контент, изменять паузу или редактировать ввод с клавиатуры.
Плюсы Предоставьте клавиатурный рекордер для записи вашего текста и ввода с клавиатуры для неограниченного воспроизведения. Настройте компьютер на автопилот, чтобы повторять задачи бесконечно. Минусы Это не одноразовая покупка для использования всех функций. Невозможно экспортировать файл записи мыши.
Часть 2. Часто задаваемые вопросы о Mouse Recorder
- Что такое макрорекордер? Программа записи макросов — это программное обеспечение, специально используемое для записи операций мыши, нажатия клавиш и задержки для последующего воспроизведения. Вы можете легко и быстро выполнять сложные операции без настройки компьютерного программирования или сценариев.
- Есть ли в Windows 10 встроенный макрорекордер? Нет. Вы можете выбрать предпочитаемый рекордер макросов мыши сверху. Но он поставляется с предустановленным Игровая панель рекордер экрана, чтобы захватить ваш экран.
- Как записать макрос кнопкой Macro Record на мышке? Сначала запустите приложение или игру, чтобы записать макрос. Вам нужно нажать кнопку записи макроса на мыши, и кнопка записи макроса станет устойчивой. На ЖК-дисплее мыши отобразится значок «Записать сейчас», когда кнопка «Запись макроса» начнет мигать.
Заключение
Короче говоря, если вы хотите записать движение мыши или щелчок, 6 вышеперечисленных регистраторов мыши должны соответствовать вашим потребностям! Если вы хотите поделиться с нами другими рекордерами мыши, вы можете оставить свои комментарии ниже!
Источник: www.anyrec.io
SergTyapkin/pretty-macros-recorder
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Switch branches/tags
Branches Tags
Could not load branches
Nothing to show
Could not load tags
Nothing to show
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Cancel Create
- Local
- Codespaces
HTTPS GitHub CLI
Use Git or checkout with SVN using the web URL.
Work fast with our official CLI. Learn more about the CLI.
Sign In Required
Please sign in to use Codespaces.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
9f4c3d0 May 21, 2022
Git stats
Files
Failed to load latest commit information.
Latest commit message
Commit time
README.md
Запись действий мыши и клавиатуры
Записывает не все действия, а действия задаются по нажатию на копки. Скажем «нет» срачу в конфигах
Поддерживаются разные функции скорости движения курсора мыши. На данный момент есть linear, ease-out, ease-out-light
Примеры полностью автоматической работы:
1. Запустить настройщик кнопок управления
Здесь можно выбрать, на какие действия во время записи повесить какие горячие клавиши.
После этого конфиг запишется в UserControls.json
python3 main_controls_configure.py
2. Запустить запись
Во время записи по кнопкам, настроенным на 1 шаге, можно добавлять в запись события, такие как:
- перенос положения мыши
- переход к последнему сохранённому положению мыши
- смена выбранной кнопки мыши
- клик/нажатие/отпускание выбранной кнопку мыши
- клик/нажатие/отпускание кнопки клавиатуры
- набор длинного текста
Escape — Окончание записи. После этого json-файл с записью будет сохранён в папку recordings под названием recording_.json
python3 main_make_recording.py
3. Запустить воспроизведение записи
При запуске программа попросит ввести имя файла из папки recordings . Если не ввести ничего, будет выбран последний файл по дате создания
Затем воспроизводятся все действия из выбранного файла по очереди.
python3 main_play_recording.py
О структуре файлов
Файл любой записи можно редактировать как обычный текст. Так можно удобно настроить время задержек и выполнения действий.
Файл состоит из списка действий-объектов. Все возможные свойства с описанием:
[ // For mouse events: «class»: «mouse», «type»: «move», // move / click / hold / release / scroll «after»: 1.5, // seconds // only for «move»: «x»: -997, «y»: -301, «timing-function»: «ease-out», // linear / ease-out / ease-out-light. Default: ease-out «duration»: 2.5, // seconds // for «click / hold / release» «button»: «left», // left / middle / right // for «scroll» «duration»: 1.2, // seconds «delta»: -2.0, // scroll value >, // For keyboard events: «class»: «keyboard», «type»: «hit», // hit / hold / release / text «after»: 1.5, // seconds // for «hit / hold / release»: «hotkey»: «ctrl+shift+t», // for «text» «duration»: 12.5, // seconds «text»: [«ctrl+h», «e», «l», «l», «o», «shift+1»] // list of hotkeys >, // . ]
About
Программа для записи движений мыши и нажатий на клавиатуру и плавного их произведения. С удобной настройкой всех тайминг-функций и параметров через json
Источник: github.com