send_wheel

send_wheel(n, x=1200, y=600, key=0)

Данная команда позволяет передать вращение колеса мышки в браузере, даже если программа скрыта в тре.

Команда на вход принимает параметры:
  • n – число рывков колесика мышки
  • x – x - координата точки, для которой надо передать прокрутку колесиком мыши, относительно левого верхнего угла браузера
  • y – y - координата точки, для которой надо передать прокрутку колесиком мыши, относительно левого верхнего угла браузера
  • key – флаги прокрутки:
    • MK_CONTROL – клавиша CTRL находится в нажатом состоянии
    • MK_LBUTTON – левая кнопка мыши находится в нажатом состоянии
    • MK_MBUTTON – средняя кнопка мыши находится в нажатом состоянии
    • MK_RBUTTON – правая кнопка мыши находится в нажатом состоянии
    • MK_SHIFT – клавиша SHIFT находится в нажатом состоянии
    • MK_XBUTTON1 – первая X-кнопка находится в нажатом состоянии
    • MK_XBUTTON2 – вторая X-кнопка находится в нажатом состоянии

Флаг прокрутки - это переменная, сумма констант - каждая константа отвечает за зажатие определенной кнопки.

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

Так же можно воспользоваться функцией set vertical scroll pos(плавно в цикле для имитации прокрутки) - все события будут посланы как надо - она именно прокручивает страницу. А общий размер высоты страницы, можно узнать в команде get page height.


После отработки команда возвращает результат своей работы в робот:
  • true - успешно произвели прокрутку в заданной точке (type: bool)
  • false - операция не произведена (type: bool)



Примеры использования (php)

<?php $xhe_host = "127.0.0.1:7026";
 
// подключим функциональные объекты, если еще не подключен
if (!isset($path))
  $path="../../../Templates/init.php";
require($path);
 
// начало
echo "<hr><font color=blue>mouse->".basename (__FILE__)."</font><hr>";
 
// 1 
echo "1. Перейдем на yahoo : ";
echo $browser->navigate("http://www.yahoo.ru")."<br>";
 
// 2 
echo "2. прокрутим колесо мышки вниз колесо в точке 100,100 вниз 5 раз: ";
echo $mouse->send_wheel(-5,100,100)."\n";
 
// пауза
sleep(2);
 
// 2 
echo "2. Дернем колесо вверх в точке 100,100 вверх 5 раз: ";
echo $mouse->send_wheel(5,100,100);
 
// конец
echo "<hr><br>";
 
// Quit
$app->quit();
?>

Примеры использования (cs)

#region using
 
using System;
using System.Diagnostics;
using System.Collections.Generic;
using System.Linq;
using System.IO;
using System.Text;
using System.Threading;
 
using XHE;
using XHE.XHE_DOM;
using XHE.XHE_System;
using XHE.XHE_Window;
using XHE.XHE_Web;
 
#endregion
 
 class Program:XHEScript
 {
	  static void Main(string[] args)
	  {
			// init XHE
			server="127.0.0.1:7013";
			InitXHE();
 
			// начало
			echo("<hr><font color=blue>mouse.send_wheel</font><hr>");
 
			// 1 шаг
			echo("1. Перейдем в yahoo : ");
			echo(browser.navigate("http://www.yahoo.com")+"<br>");
 
			// пауза
			sleep(2);
 
			// 2 шаг
			echo("2. Прокрутим колесо вниз 4 раза : ");
			int x=700;
			int y=150;
			echo(mouse.send_wheel(-4,x,y));
 
			// конец
			echo("<hr><br>");
 
			app.quit();            
	  }
}

Примеры использования (js)

// подключим функциональные объекты, если еще не подключен
xhe_host="127.0.0.1:7013";
echo=require("../../../Templates JS/init.js");
 
// начало
echo("<hr><font color=blue>mouse.send_wheel</font><hr>");
 
// 1 шаг
echo("1. Перейдем на yahoo : ");
echo(browser.navigate("http://www.yahoo.ru")+"<br>");
browser.sleep(2);
 
// 2 шаг
echo("2. Прокрутим колесо мышки в точке 100,100 вниз 5 раз: ");
echo(mouse.send_wheel(-5,100,100)+"\n");
 
// пауза
browser.sleep(2);
 
// 2 шаг
echo("2. Прокрутим колесо мышки в точке 100,100 вверх 4 раза: ");
echo(mouse.send_wheel(4,100,100));
 
// конец
echo("<hr><br>");
 
// Quit
app.quit();

Примеры использования (py)

# Additional paths
import sys
sys.path.insert(0, '../../../Templates PY/')
 
xhe_host = "127.0.0.1:7013"
from xweb_human_emulator import *
 
# начало
echo("<hr><font color=blue>mouse.xxxxxxxxx</font><hr>")
 
# 1 
echo("1. Перейдем на yahoo : ")
echo(browser.navigate("http://www.yahoo.ru"),"<br>")
 
# 2 
echo("2. Прокрутим вниз колесо мышки в точке 100,100 вниз 5 раз: ")
echo(mouse.send_wheel(-5,100,100),"\n")
 
# пауза
sleep(2)
 
# 3 
echo("3. Прокрутим колесо мышки вверх в точке 100,100 вверх 4 раза: ")
echo(mouse.send_wheel(4,100,100))
 
# конец
echo("<hr><br>")
 
# Quit
app.quit()