System / mouse



move

move($x,$y,$scroll=true,$time=0,$tremble=5); - данная функция используется для полной эмуляции движения мыши в заданную точку браузера

Функция на вход принимает параметры:

  • $x – x - координата точки, куда нужно переместить курсор, относительно левого верхнего угла браузера. (int)
  • $y – y - координата точки, куда нужно переместить курсор, относительно левого верхнего угла браузера. (int)
  • $scroll – прокручивать ли скролл браузера до заданной точки. При false будет просто произведено перемещение в заданную точку, При true, будет произведено автоматическое скроллирование до заданной точки (boolean).
  • $time – время за которое будет сделано перемещение из текущей точки (параметр доступен с 4.6.9). (int)
  • $tremble – амплитуда дрожания траектории (для более человекоподобной эмуляции) (параметр доступен с 4.6.48). (int)


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

    Пример использования (PHP):
    ===============================================================

    <?php
     
    // подключим объект для управления эмулятором, если еще не подключен
    if (!isset($path))
      $path="../../../Templates/xweb_human_emulator.php";
    require($path);
     
    // начало
    echo "<hr><font color=blue>mouse->".basename (__FILE__)."</font><hr>";
     
    // 1 
    echo "1. Перейдем на полигон : ";
    echo $browser->navigate("http://www.humanemulator.net/poligon/button.html")."<br>";
     
    // 2 
    echo "2. Переместим мышь на на кнопку за 2 секунды с дрожанием по пути в 5 пикселей : ";
    $x=$button->get_x_by_name("btn1f");
    $y=$button->get_y_by_name("btn1f");
    echo $x." ".$y." ".$mouse->move($x+1,$y+1,false,2,5)."<br>";
     
    // 3 
    echo "3. Кликнем в текущей точке : ";
    echo $mouse->click()."\n";
     
    // 4 
    echo "4. Перейдем на bigfozzy.com : ";
    echo $browser->navigate("http://bigfozzy.com")."<br>";
     
    // 5 
    echo "5. Переместим мышь на на 2 ссылки за 2 секунды с дрожанием по пути в 5 пикселей : ";
    $x=$anchor->get_x_by_number(110);
    $y=$anchor->get_y_by_number(110);
    echo $x." ".$y." ".$mouse->move($x+1,$y+1,true,2,5)." ";
    $x=$anchor->get_x_by_number(100);
    $y=$anchor->get_y_by_number(100);
    echo $x." ".$y." ".$mouse->move($x+1,$y+1,true,2,5);
     
    // конец
    echo "<hr><br>";
     
    // Quit
    $app->quit();
    ?>

    Пример использования (Python):
    ===============================================================

    ?# Additional paths
    import sys
    sys.path.insert(0, '../../../Templates PY/')
     
    xhe_host = "127.0.0.1:7011"
    from xweb_human_emulator import *
     
    # начало
    echo("<hr><font color=blue>mouse.move</font><hr>")
     
    # 1 
    echo("1. Перейдем на полигон : ")
    echo(browser.navigate("http://www.humanemulator.net/poligon/button.html"),"<br>")
     
    # 2 
    echo("2. Переместим мышь на на кнопку за 2 секунды с дрожанием по пути в 5 пикселей : ")
    x=button.get_x_by_name("btn1f")
    y=button.get_y_by_name("btn1f")
    echo(x," ")
    echo(y," ")
    echo(mouse.move(x+1,y+1,false,2,5),"<br>")
     
    # 3 
    echo("3. Кликнем в текущей точке : ")
    echo(mouse.click(),"\n")
     
    # 4 
    echo("4. Перейдем на bigfozzy.com : ")
    echo(browser.navigate("http://bigfozzy.com"),"<br>")
     
    # 5 
    echo("5. Переместим мышь на на 2 ссылки за 2 секунды с дрожанием по пути в 5 пикселей : ")
    x=anchor.get_x_by_number(111)
    y=anchor.get_y_by_number(111)
    echo(x," ")
    echo(y," ")
    echo(mouse.move(x+1,y+1,true,2,5)," ")
    x=anchor.get_x_by_number(101)
    y=anchor.get_y_by_number(101)
    echo(x," ")
    echo(y," ")
    echo(mouse.move(x+1,y+1,true,2,5))
     
    # конец
    echo("<hr><br>")
     
    # Quit
    app.quit()

    Пример использования (C#):
    ===============================================================

    #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:7011";
    			InitXHE();
     
    			// начало
    			echo("<hr><font color=blue>mouse.move</font><hr>");
     
    			// 1 шаг
    			echo("1. Перейдем в гугл : ");
    			echo(browser.navigate("http://www.google.ru")+"<br>");
     
    			// 2 шаг
    			echo("2. Переместим мышь на на кнопку 'Мне повезет' за 2 секунды : ");
    			int x=button.get_x_by_inner_text("Мне повезёт!");
    			int y=button.get_y_by_inner_text("Мне повезёт!");
    			echo(mouse.move(x+1,y+1,false,5,10)+"<br>");			
     
    			// 3 шаг
    			echo("3. Кликнем в текущей точке : ");
    			echo(mouse.click());
     
    			// конец
    			echo("<hr><br>");
     
    			app.quit();            
    	  }
    }

    Пример использования (JS):
    ===============================================================

    // подключим объект для управления эмулятором, если еще не подключен
    xhe_host="127.0.0.1:7016";
    echo=require("../../../Templates JS/xweb_human_emulator.js");
     
    // начало
    echo("<hr><font color=blue>mouse.move</font><hr>");
     
    // 1 шаг
    echo("1. Перейдем на полигон : ");
    echo(browser.navigate("http://www.humanemulator.net/poligon/button.html")+"<br>");
     
    // 2 шаг
    echo("2. Переместим мышь на на кнопку за 2 секунды с дрожанием по пути в 5 пикселей : ");
    var x=button.get_x_by_name("btn1f");
    var y=button.get_y_by_name("btn1f");
    echo(x+" "+y+" "+mouse.move(x+1,y+1,false,2,5)+"<br>");
     
    // 3 шаг
    echo("3. Кликнем в текущей точке : ");
    echo(mouse.click()+"\n");
     
    // 4 шаг
    echo("4. Перейдем на bigfozzy.com : ");
    echo(browser.navigate("http://bigfozzy.com")+"<br>");
     
    // 5 шаг
    echo("5. Переместим мышь на на 2 ссылки за 2 секунды с дрожанием по пути в 5 пикселей : ");
    x=anchor.get_x_by_number(110);
    y=anchor.get_y_by_number(110);
    echo(x+" "+y+" "+mouse.move(++x,++y,true,2,5)+" ");
    x=anchor.get_x_by_number(100);
    y=anchor.get_y_by_number(100);
    echo(x+" "+y+" "+mouse.move(x+1,y+1,true,2,5));
     
    // конец
    echo("<hr><br>");
     
    // Quit
    app.quit();

    =============================================
    Mouse     Объекты    DOM  System  Web  Window        
    =============================================
    если что-то непонятно или необходимо узнать или считаете что надо добавить по работе этой функции, пишите в комментарии или на наш форум по автоматизации браузера
    .