Эмуляция мыши и клавиатуры
🔗 Оригинальная страница — Источник данного материала
Описание
Для чего используется эмуляция?
- Послать клики мыши в указанные координаты на web странице;
- Эмулировать нажатие клавиш, например,
EscapeилиEnter; - Против защиты от ботов, которая отслеживает, нажимаются ли клавиши при заполнении полей ввода.
Принцип работы
Эмуляция клика мыши
В этом режиме необходимо задать область координат, внутри которой будет выполнен клик, а также выбрать кнопку мыши, которой он будет произведён.
Дополнительно можно указать тип распределения т очки клика:
- Нормальное — клики с большей вероятностью выполняются ближе к центру выбранной области;
- Равномерное — точка клика выбирается случайно и равномерно по всей заданной области.
Эмуляция ввода текста с клавиатуры
Потребуется ввести сам текст и указать время задержки между нажатием.
Для эмуляции нажатия специальных клавиш используйте Ctrl+Space в поле ввода текста. Затем в открывшемся списке выберите нужную кнопку.
Настройка эмуляции.
При заполнении полей, а также при кликах по кнопкам и ссылкам эмуляция включена по умолчанию. В настройках проекта можно централизованно задать уровень эмуляции для всех экшенов, которые заполняют поля на веб-странице или выполняют клики по кнопкам и ссылкам.
При этом каждый экшен имеет собственную настройку эмуляции, которая при необходимости может переопределять глобальные параметры проекта.

В экшене эмуляции клавиатуры можно использовать:
- обычный текст;
- переменные проекта;
- специальные клавиши и комбинации клавиш, например:
{TAB},{ENTER},{BACKSPACE},{CTRL}и другие.
Чтобы просмотреть полный список доступных специальных клавиш, нажмите
Ctrl+Пробелв поле ввода текста.
C# методы движения виртуальной мыши:
FullEmulationMouseMoveToHtmlElement— переместить виртуальную мышь к элементу из текущего положения виртуальной мыши;FullEmulationMouseMove— переместить виртуальную мышь к координатам из текущего положения виртуальной мыши;FullEmulationMouseClick— кликнуть мышкой в текущем положении виртуальной мыши;FullEmulationMouseMoveAboveHtmlElement— эмуляция чтения элемента;- Свойство
FullEmulationMouseCurrentPosition— возвращает текущую позицию виртуальной мыши. - Метод
FullEmulationMouseSetOptions— устанавливает параметры эмуляции мыши, метод нужно вызывать после каждого вызова метода Navigate, метод доступен начиная с версии 5.10.4.1.