Перейти к основному содержимому

Эмуляция мыши и клавиатуры

🔗 Оригинальная страница — Источник данного материала


Описание

Для чего используется эмуляция?

  • Послать клики мыши в указанные координаты на web странице;
  • Эмулировать нажатие клавиш, например, Escape или Enter;
  • Против защиты от ботов, которая отслеживает, нажимаются ли клавиши при заполнении полей ввода.

Принцип работы

Эмуляция клика мыши

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

Дополнительно можно указать тип распределения точки клика:

  • Нормальное — клики с большей вероятностью выполняются ближе к центру выбранной области;
  • Равномерное — точка клика выбирается случайно и равномерно по всей заданной области.

Эмуляция ввода текста с клавиатуры

Потребуется ввести сам текст и указать время задержки между нажатием.

Для эмуляции нажатия специальных клавиш используйте Ctrl+Space в поле ввода текста. Затем в открывшемся списке выберите нужную кнопку.

Настройка эмуляции.

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

При этом каждый экшен имеет собственную настройку эмуляции, которая при необходимости может переопределять глобальные параметры проекта.

kFVqj8SwSD

В экшене эмуляции клавиатуры можно использовать:

  • обычный текст;
  • переменные проекта;
  • специальные клавиши и комбинации клавиш, например:
    • {TAB},
    • {ENTER},
    • {BACKSPACE},
    • {CTRL} и другие.

Чтобы просмотреть полный список доступных специальных клавиш, нажмите Ctrl + Пробел в поле ввода текста.

C# методы движения виртуальной мыши:

  • FullEmulationMouseMoveToHtmlElement — переместить виртуальную мышь к элементу из текущего положения виртуальной мыши;
  • FullEmulationMouseMove — переместить виртуальную мышь к координатам из текущего положения виртуальной мыши;
  • FullEmulationMouseClick — кликнуть мышкой в текущем положении виртуальной мыши;
  • FullEmulationMouseMoveAboveHtmlElement — эмуляция чтения элемента;
  • Свойство FullEmulationMouseCurrentPosition — возвращает текущую позицию виртуальной мыши.
  • Метод FullEmulationMouseSetOptions — устанавливает параметры эмуляции мыши, метод нужно вызывать после каждого вызова метода Navigate, метод доступен начиная с версии 5.10.4.1.