- Регистрация
 - 09.10.2015
 
- Сообщения
 - 3 916
 
- Благодарностей
 - 3 879
 
- Баллы
 - 113
 
Недавно был один трастовый ресурс, который при регистрации палил движение курсора. И если курсор не двигался, то он автоматически вываливал ошибку при регистрации. Я вначале тупил и не понимал в чём дело, но друг подкинул эту мысль с эмуляцией мыши и она частично сработала (т.к. при запуске во многопотоке он ещё что-то палил, но я так до конца и не разобрался).
Данный сниппет - это модификация чьего-то кода, скорее всего даже не юзеров зенки - не помню где я его нашел)
	
	
	
	
	
	
		
			
			
			
			
			
		
	
	
	
		
	
	
		
	
Вам нужно указать числовые значения в переменных element_left и element_top, у меня это были leftInTab и topInTab для какого-то html-тега на странице. По факту вы же можете поставить туда рандомные значения, чтобы курсор в своем начальном положении находился где-то в середине страницы (можно посчитать), ну или ввести туда просто значения от 200 до 500, например (ведь мало у кого браузеры меньше 500 пикселей в ширину/высоту).
Фактически - такое встречается очень редко, но иногда данный код вам может здорово помочь! Единственное, что я бы тут ещё дополнительно отметил - стоит "поиграться" и придумать как делать больше движений и "рисовать" курсором мыши более сложные движения.
Я же использовал этот сниппет для ZennoPoster следующим образом: я ставил его перед каждым заполнением нового input'а, чтобы сэмулировать движение мыши к нему от предыдущего элемента.
								Данный сниппет - это модификация чьего-то кода, скорее всего даже не юзеров зенки - не помню где я его нашел)
			
				Код:
			
		
		
		int x = Convert.ToInt32(project.Variables["element_left"].Value);
int y = Convert.ToInt32(project.Variables["element_top"].Value);
Random rnd = new Random();
x += rnd.Next(50, 200);
y += rnd.Next(50, 200);
// массив точек, по которым будет двигаться курсор мыши
Point[] points = new Point[10]
{
    new Point(x, y),
    new Point(x + 10, y + 5),
    new Point(x + 20, y + 10),
    new Point(x + 30, y + 15),
    new Point(x + 40, y + 20),
    new Point(x + 50, y + 25),
    new Point(x + 60, y + 30),
    new Point(x + 70, y + 35),
    new Point(x + 80, y + 40),
    new Point(x + 90, y + 45)
};
// случайные задержки между движениями
int[] delay = new int[10] {
    rnd.Next(50, 150),
    rnd.Next(50, 150),
    rnd.Next(50, 150),
    rnd.Next(50, 150),
    rnd.Next(50, 150),
    rnd.Next(50, 150),
    rnd.Next(50, 150),
    rnd.Next(50, 150),
    rnd.Next(50, 150),
    rnd.Next(50, 150)
};
// функция, выполняющая движение по заданной траектории с указанными задержками
instance.ActiveTab.MouseMove(points, delay, false);
	Вам нужно указать числовые значения в переменных element_left и element_top, у меня это были leftInTab и topInTab для какого-то html-тега на странице. По факту вы же можете поставить туда рандомные значения, чтобы курсор в своем начальном положении находился где-то в середине страницы (можно посчитать), ну или ввести туда просто значения от 200 до 500, например (ведь мало у кого браузеры меньше 500 пикселей в ширину/высоту).
Фактически - такое встречается очень редко, но иногда данный код вам может здорово помочь! Единственное, что я бы тут ещё дополнительно отметил - стоит "поиграться" и придумать как делать больше движений и "рисовать" курсором мыши более сложные движения.
Я же использовал этот сниппет для ZennoPoster следующим образом: я ставил его перед каждым заполнением нового input'а, чтобы сэмулировать движение мыши к нему от предыдущего элемента.





 Может стоит посмотреть кто где автор и сравнить?)