DOM / interface
mouse_move_to
mouse_move_to($dx=1,$dy=1,$type="curve",$time=1000); - эмулировать перемещение мыши на уровне железа относительно левого верхнего угла элемента по заданной траектории. Доступна с верии 7.0.24.Функция на вход принимает параметры:
- "line" - перемещение по прямой линии
- "curve" - перемещение по случайной кривой
- "chaotic" - хаотичное перемещение
- "circle" - по круговой траектории
- "readtext" - имитации чтения текста
После отработки функция возвращает результат своей работы в скрипт (тип возвращаемого значения boolean):
Пример использования (PHP):
===============================================================
<?php $xhe_host = "127.0.0.1:7014"; // подключим объект для управления эмулятором, если еще не подключен if (!isset($path)) $path="../../../Templates/xweb_human_emulator.php"; require($path); // начало echo "<hr><font color=blue>interface->".basename (__FILE__)."</font><hr>"; // 1 echo "1. Перейдем в гугл : "; echo $browser->navigate("http://www.google.ru")."<br>"; // 2 echo "2. Переместим мышь на кнопку 'Мне повезет' : "; echo $element->get_by_name("btnI")->mouse_move_to(1,1)."<br>"; // 3 echo "3. Перейдем на bigfozzy.com: "; echo $browser->navigate("http://bigfozzy.com")."<br>"; // 4 echo "4. Переместим мышь на 2 ссылки: "; echo $anchor->get_by_number(110)->mouse_move_to(1,1,"curve",2000)." "; sleep(1); echo $anchor->get_by_number(100)->mouse_move_to(1,1,"chaotic",2000); sleep(1); echo $anchor->get_by_number(10)->mouse_move_to(1,1,"circle",2000); // 5 echo "\n5. Кликнем в текущей точке : "; echo $mouse->click()."\n"; $browser->wait_for(); // конец echo "<hr><br>"; // Quit $app->quit(); ?>
Пример использования (Python):
===============================================================
# Additional paths import sys sys.path.insert(0, '../../../Templates PY/') xhe_host = "127.0.0.1:7056" from xweb_human_emulator import * # начало echo("<hr><font color=blue>interface.xxxxxxxxx</font><hr>") # 1 echo("1. Перейдем в гугл : ") echo(browser.navigate("http://www.google.ru"),"<br>") sleep(1); # 2 echo("2. Переместим мышь на кнопку 'Мне повезет' : ") echo(button.get_all_by_name("btnI").get(1).mouse_move_to(1,1),"<br>") # 3 echo("3. Перейдем на bigfozzy.com: ") echo(browser.navigate("http://bigfozzy.com"),"<br>") # 4 echo("4. Переместим мышь на 2 ссылки: ") echo(anchor.get_by_number(110).mouse_move_to(1,1,"curve",2000)," ") echo(anchor.get_by_number(100).mouse_move_to(1,1,"chaos",3000)) echo(anchor.get_by_number(10).mouse_move_to(1,1,"circle",4000)) # 5 echo("\n5. Кликнем в текущей точке : ") echo(mouse.click(),"\n") browser.wait_for() # конец 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:7056"; InitXHE(); // начало echo("<hr><font color=blue>interface.mouse_move</font><hr>"); // 1 шаг echo("1. Перейдем в гугл : "); echo(browser.navigate("http://www.google.ru")+"<br>"); // 2 шаг echo("2. Переместим мышь на на кнопку 'Мне повезет' : "); echo(button.get_all_by_name("btnI").get(1).mouse_move_to(1,1)+"<br>"); // 3 шаг echo("3. Перейдем на bigfozzy.com : "); echo(browser.navigate("http://bigfozzy.com")+"<br>"); // 4 шаг echo("4. Переместим мышь по ссылкам: "); echo(anchor.get_by_number(120).mouse_move_to(1,1,"curve",1000)+" "); echo(anchor.get_by_number(110).mouse_move_to(1,1,"circle",1000)+" "); echo(anchor.get_by_number(10).mouse_move_to(1,1,"chaotic",1000)+"<br>"); // 5 шаг echo("5. Кликнем в текущей точке : "); echo(mouse.click()+"\n"); browser.wait_for(); // конец echo("<hr><br>"); app.quit(); } }
Пример использования (JS):
===============================================================
// подключим объект для управления эмулятором, если еще не подключен xhe_host="127.0.0.1:7056"; echo=require("../../../Templates JS/xweb_human_emulator.js"); // начало echo("<hr><font color=blue>interface.mouse_move</font><hr>"); // 1 шаг echo("1. Перейдем в гугл : "); echo(browser.navigate("http://www.google.ru")+"<br>"); // 2 шаг echo("2. Переместим мышь на кнопку 'Мне повезет' : "); echo(button.get_all_by_name("btnI").get(1).mouse_move_to(1,1)+"<br>"); // 3 шаг echo("3. Перейдем на bigfozzy.com: "); echo(browser.navigate("http://bigfozzy.com")+"<br>"); // 4 шаг echo("4. Переместим мышь на 2 ссылки: "); echo(anchor.get_by_number(110).mouse_move_to(1,1,"curve",2000)+" "); echo(anchor.get_by_number(100).mouse_move_to(1,1,"circle",1000)+" "); echo(anchor.get_by_number(10).mouse_move_to(1,1,"chaotic",1000)+"\n"); // 5 шаг echo("5. Кликнем в текущей точке : "); echo(mouse.click()+"\n"); // конец echo("<hr><br>"); // Quit app.quit();
=============================================
Interface Объекты DOM System Vision Web Window
=============================================
Если что-то непонятно или необходимо узнать или считаете что надо добавить по работе этой функции, пишите в комментарии или на наш форум.