2016-09-26 3 views
4

Предположим, что у меня есть элемент A и элемент B. Я активировал Selenium или PhantomJS, который также имеет возможность перемещать мышь с помощью наборов координат.В чем разница между mouseMove() Selenium и фактическим движением мыши?

Я определяю форму элемента A (ссылка) и элемент B (кнопка отправки). Я рисую кривую Безье или преобразовываю предварительно записанное человеческое движение мыши, чтобы перейти от элемента А к элементу В.

Моей интуицией является то, что mouseMove() просто «телепортирует» курсор к этому набору координат. Как это отличается от фактического использования мыши?

Если я отслеживаю движения мыши пользователей на своем сайте, могу ли я сказать, полагая, что они используют сложные кривые движения, что они используют инструмент автоматизации?

+0

Selenium просто имитирует входы мыши с использованием JavaScript. – Thibstars

+0

Хороший вопрос. Вы пытаетесь запретить ботам получать доступ к вашему сайту? Возможно также отслеживание времени запросов, отправленных на ваш сервер. В общем, боты должны «прокручивать» (или вводить) веб-страницу намного быстрее, чем пользователь. – JDelorean

+1

Связанный, но вид с другой точки зрения: [Человекоподобные движения мыши через селен] (http://stackoverflow.com/questions/39422453/human-like-mouse-movements-via-selenium). – alecxe

ответ

2

Из моего опыта, если вы отслеживать мышь от JS и бот просто использует селен в двигаться указатель мыши без «сложных кривых движения» ответ ДА ​​.

Но

если бот "разработан специально для создания«сложных кривые движения»или, например,«повтор записанного движения набора данных», я думаю, вы не можете. (Similar question также с отрицательным ответом).

Так,

Вы можете просто разработать "эвристического решения", но не идеальные один. Если это то, что вы хотите, я могу попытаться дать вам некоторые идеи. В противном случае, если вы можете следовать другим путям , я бы посоветовал вам что-то вроде обнаружение селена или captcha.

+0

Мне очень интересно узнать об обнаружении селена. Captcha не вариант в моем случае, я боюсь. –

+0

Меня интересуют любые идеи, которые вы можете иметь о том, как поймать ОЧЕНЬ сложные бутылочки. Я защищаю от zombie bnets здесь –

+0

во-первых, мне нужна дополнительная информация: вы уверены, что ботнет использует только селен? что делает ваш сайт? или, точнее, что ботнет на вашем сайте? мы также можем попытаться сопоставить «поведение» этих машин или отпечаток пальца. –