Сниппеты эмуляции мыши: FullEmulationMouse

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
22 503
Благодарностей
10 049
Баллы
113
Хоть убейте, не пойму: неужто сложно сделать кубик прокрутки колесика мышки??? Разрабы!
Хорошая идея. Можете создать тему в разделе Предложения.
Планируется развивать ассортимент действий в скором будущем.
Будем вычитывать раздел Предложения, смотреть на голосования и брать в реализацию.
 
  • Спасибо
Реакции: code

DocSpoc

Client
Регистрация
04.01.2016
Сообщения
295
Благодарностей
176
Баллы
43
Хорошая идея. Можете создать тему в разделе Предложения.
Планируется развивать ассортимент действий в скором будущем.
Будем вычитывать раздел Предложения, смотреть на голосования и брать в реализацию.
да мне казалось это мегаочевидно...
 
  • Спасибо
Реакции: Tony80

nvrskozzy

Client
Регистрация
11.07.2025
Сообщения
276
Благодарностей
31
Баллы
28
мне вот этот кубик c# помогает
C#:
instance.ActiveTab.FullEmulationMouseWheel(0, 1000);
мышь уже должна быть в нужном поле которое надо проскролить
 

DocSpoc

Client
Регистрация
04.01.2016
Сообщения
295
Благодарностей
176
Баллы
43
мне вот этот кубик c# помогает
C#:
instance.ActiveTab.FullEmulationMouseWheel(0, 1000);
мышь уже должна быть в нужном поле которое надо проскролить
да я тоже его использую. но стандартный кубик не помешал бы, особенно новичкам
 
  • Спасибо
Реакции: nvrskozzy

nvrskozzy

Client
Регистрация
11.07.2025
Сообщения
276
Благодарностей
31
Баллы
28
он у меня не всегда работает кстати, хотя реальная мышка работает, обычно я выбираю блок на странице который нужно прокрутить кликом мышки кубиком эмуляции мышки по координатам, а потом этот си код на колесо мыши, но есть сайты где это не работает. а эмуляция клавитатуры END работает после клика мышки исправно, создается впечатления что после кубика эмуляция мыши и клика по координатам мышка как бы исчезает, и если она не висит над формой то прокрутки не происходит, с реальной мышкой нет проблем. кто сталкивался? если я прав в причине, то как заставить мышку всегда находиться на заданных координатах, а не кликнуть и исчезнуть?
 

kolina

Client
Регистрация
05.10.2019
Сообщения
188
Благодарностей
93
Баллы
28
А эмуляция клавиатуры не помогает, если для новичков? {DOWN} или {SHIFTDOWN}
 

nvrskozzy

Client
Регистрация
11.07.2025
Сообщения
276
Благодарностей
31
Баллы
28
А эмуляция клавиатуры не помогает, если для новичков? {DOWN} или {SHIFTDOWN}
от сайта зависит, помогает, просто я подумал это выглядит нечеловечно, обычно человек мышку использует
 

LarinOk

Client
Регистрация
07.01.2026
Сообщения
17
Благодарностей
2
Баллы
3
Подскажите, пожалуйста некоторые моменты:

1) При FullEmulationMouseClick("left", "click") есть пауза между mousedown и mouseup, если да то она статичная или рандомная?

2) В FullEmulation параметрах есть MinScrollSpeed и MaxScrollSpeed, по умолчанию оба по 20. Это "скорость вращения" колеса мыши или расстояние за одну прокрутку? Не могу понять, нужно ли делать разброс или нет.
 

Dmitriy_Zenno

Administrator
Регистрация
28.10.2025
Сообщения
406
Благодарностей
165
Баллы
43
Подскажите, пожалуйста некоторые моменты:

1) При FullEmulationMouseClick("left", "click") есть пауза между mousedown и mouseup, если да то она статичная или рандомная?

2) В FullEmulation параметрах есть MinScrollSpeed и MaxScrollSpeed, по умолчанию оба по 20. Это "скорость вращения" колеса мыши или расстояние за одну прокрутку? Не могу понять, нужно ли делать разброс или нет.
По пункту 1 - информации не нашел. Если я правильно понял инструмент, то там не должно быть паузы, вы сами ее делаете: выполнить left + down - своя пауза \ действия - выполнить left + up.

По пункту 2 - нашел такую информацию:
139338
 
  • Спасибо
Реакции: LarinOk

LarinOk

Client
Регистрация
07.01.2026
Сообщения
17
Благодарностей
2
Баллы
3
FullEmulationMouseClick, без разницы Up, Down или Click делать, всегда стреляет перед нажатием событием mousemove в туже точку. В результате имеем: а) задвоение mousemove в 100% кликов б) микрозадержка <10мс до mousedown которую корректировать нельзя. Мягко говоря не очень красиво получается.

И есть ли какой нибуть способ отключить рисование "дуги" в FullEmulationMouseMove? Все облазил, ничего найти не смог. В текущем варианте, если к примеру пытаться делать имитацию"дрожания", то при смещении на 1-5px этот метод работает неочень. Пробовал обычный MouseMove но с ним не могу найти где скорость можно регулировать.
 

Dmitriy_Zenno

Administrator
Регистрация
28.10.2025
Сообщения
406
Благодарностей
165
Баллы
43
FullEmulationMouseClick, без разницы Up, Down или Click делать, всегда стреляет перед нажатием событием mousemove в туже точку. В результате имеем: а) задвоение mousemove в 100% кликов б) микрозадержка <10мс до mousedown которую корректировать нельзя. Мягко говоря не очень красиво получается.

И есть ли какой нибуть способ отключить рисование "дуги" в FullEmulationMouseMove? Все облазил, ничего найти не смог. В текущем варианте, если к примеру пытаться делать имитацию"дрожания", то при смещении на 1-5px этот метод работает неочень. Пробовал обычный MouseMove но с ним не могу найти где скорость можно регулировать.
Я вас понял. Спасибо за описание.
Проверю у себя и подумаю, что можно сделать.
 

Tony80

Client
Регистрация
21.07.2021
Сообщения
202
Благодарностей
61
Баллы
28
да я тоже его использую. но стандартный кубик не помешал бы, особенно новичкам
Всецело поддерживаю.

В действительности то, что выполняет кубик "Имитация просмотра страницы" скорее наводка для антифрод систем, нежели попытки продемонстрировать живую активность. Пользователи в общем и в целом по заголовкам текста и картинкам мышкой не елозят, тем более, что все длинные перемещения строго геометрические.

При чтении мышка как правило размещается справа чуть ниже середины и выполняет подёргивания от шевелений кисти.

"Имитация просмотра страницы" полезна лишь на короткое время, чтобы выполнить некое базовое шевеление, а дальше чаще всего в этой имитации нужен лишь вертикальный скроллинг, либо целевой клик.

Но если последовательно размещать короткие кубики по Имитации просмотра (и даже короткие строчки C# кода для скроллинга), то проблема в том, что при переключении мышка пропадает, поэтому наиболее полезным был бы составной кубик, где можно было бы выполнить небольшой сценарий, именно для того, чтобы мышь не пропадала.

Либо сделать некие "склеивающие" кубики, где предыдущий передаёт, а последующий принимает позицию курсора без прерываний при составной последовательности кубиков. Вот это было бы интересным решением.
 
  • Спасибо
Реакции: DocSpoc

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)