humanemulator.net — справка.
Продукт, демо и покупка — на
хуманэмулятор.рф
|
Демо
|
Купить
|
API
|
лог изменений
get_x_in_webpage_picture
get_x_in_webpage_picture($picture_filepath,$similar_koeff=0.95,$similar_algoritm=5); - получить x координату заданного изображения на текущей страницеФункция на вход принимает параметры:
- $picture_filepath – путь к файлу изображения
- $similar_koeff – коэффициент подобия (от 0 до 1) - доступен с версии 7.0.3
- $similar_algoritm – алгоритм поиск аподобия (от 0 до 5) - доступен с версии 7.0.3 :
- 0 - R(x,y)=sumx',y'[T(x',y')-I(x+x',y+y')]2 - Squared difference (разница в квадрате)
- 1 - R(x,y)=sumx',y'[T(x',y')-I(x+x',y+y')]2/sqrt[sumx',y'T(x',y')2 sumx',y'I(x+x',y+y')2] - (нормальзованая разница в квадрате)
- 2 - R(x,y)=sumx',y'[T(x',y') I(x+x',y+y')] - Cross correlation (корреляция)
- 3 - R(x,y)=sumx',y'[T(x',y') I(x+x',y+y')]/sqrt[sumx',y'T(x',y')2 sumx',y'I(x+x',y+y')2] - Normalized cross correlation (нормальзованая корреляция)
- 4 - R(x,y)=sumx',y'[T'(x',y') I'(x+x',y+y')], where T'(x',y')=T(x',y') - 1/(wxh) sumx",y"T(x",y") I'(x+x',y+y')=I(x+x',y+y') - 1/(wxh) sumx",y"I(x+x",y+y") - Cosine coefficient (косинусный коэффицент)
- 5 - R(x,y)=sumx',y'[T'(x',y') I'(x+x',y+y')]/sqrt[sumx',y'T'(x',y')2 sumx',y'I'(x+x',y+y')2] - Normalized cosine coefficient (нормализованый косинусный коэффицент)
Пример использования
<?php // Scenario: Get X coordinate of an image within a webpage screenshot $xhe_host = "localhost:7010"; if (!isset($path)) { // Path to the init.php file for connecting to the XHE API $path = "../../../Templates/init.php"; // Including init.php grants access to all classes and functionality for working with the XHE API require($path); } // Start echo "\n<font color=blue>webpage->" . basename(__FILE__) . "</font>\n"; // Define screenshot name $screenName = "test/kak.bmp"; if (WEB::$browser->get_model() == "chromium") $screenName = "test/kak1.bmp"; // Step 1: Navigate to test site $url1 = TEST_SITE_URL; echo "1. Navigate to website for which we have a screenshot: "; echo WEB::$browser->navigate($url1) . "\n"; // Example 1: Get X coordinate of image in browser screenshot echo "2. Get X coordinate of image in browser screenshot: "; $x = WEB::$webpage->get_x_in_webpage_picture($screenName); $y = WEB::$webpage->get_y_in_webpage_picture($screenName); echo "top left corner of image $x x $y\n"; // Step 2: Move mouse to position echo "3. Move mouse to specified position: "; echo $mouse->move($x, $y) . "\n"; sleep(7); // Step 3: Navigate to another site $url2 = "https://vk.com"; echo "4. Navigate to website for which we have a similar screenshot: "; echo WEB::$browser->navigate($url2) . "\n"; // Example 2: Get X coordinate with similarity and tolerance $similarity1 = 0.9; $tolerance1 = 2; echo "5. Get X coordinate of image in browser screenshot: "; $x = WEB::$webpage->get_x_in_webpage_picture($screenName, $similarity1, $tolerance1); $y = WEB::$webpage->get_y_in_webpage_picture($screenName, $similarity1, $tolerance1); echo "Top left corner of image $x x $y\n"; // Step 4: Move mouse to position echo "6. Move mouse to specified position: "; echo $mouse->move($x, $y) . "\n"; sleep(7); // Example 3: Get X coordinate with different similarity and tolerance $similarity2 = 0.7; $tolerance2 = 3; echo "7. Get X coordinate of image in browser screenshot: "; $x = WEB::$webpage->get_x_in_webpage_picture($screenName, $similarity2, $tolerance2); $y = WEB::$webpage->get_y_in_webpage_picture($screenName, $similarity2, $tolerance2); echo "Top left corner of image $x x $y\n"; // Step 5: Move mouse to position echo "8. Move mouse to specified position: "; echo $mouse->move($x, $y) . "\n"; // End echo "\n"; // Quit the application WINDOW::$app->quit();
# 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>webpage.xxxxxxxxx</font><hr>") # имя скриншота screen_name="test\\kak.bmp" if browser.get_model()=="chromium": screen_name="test\\kak1.bmp" # 1 echo("1. Перейдем на сайт, с котрого у нас есть скриншот : ") echo(browser.navigate("http://rpa-bot.ru/wiki/"),"<br>") # 2 echo("2. Получим координаты картинки в картинке браузера : ") x = webpage.get_x_in_webpage_picture(screen_name) y = webpage.get_y_in_webpage_picture(screen_name) echo("левый верхний угол картинки "+str(x)+" x "+str(y)+"<br>") # 3 echo("3. Щелкнем в заданном месте : ") echo(mouse.move(x,y),"<br>") # 4 echo("4. Перейдем на сайт, с котрого у нас есть скриншот : ") echo(browser.navigate("http://vk.com"),"<br>") # 5 echo("5. Получим координаты картинки в картинке браузера : ") x = webpage.get_x_in_webpage_picture(screen_name,0.8,4) y = webpage.get_y_in_webpage_picture(screen_name,0.8,4) echo("левый верхний угол картинки "+str(x)+" x "+str(y)+"<br>") # 6 echo("6. Щелкнем в заданном месте : ") echo(mouse.move(x,y),"<br>") # конец echo("<hr><br>") # Quit app.quit()
#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 = "localhost:7010"; InitXHE(); app.minimize_to_tray(); // начало echo("<hr><font color=blue>webpage.get_x_in_webpage_picture</font><hr>"); // имя скриншота (ссылка Кратко) string screen_name="test\\kak.bmp"; if (browser.get_model()=="chromium") screen_name="test\\kak1.bmp"; // 1 шаг echo("1. Перейдем на сайт, с котрого у нас есть скриншот : "); echo(browser.navigate("https://rpa-bot.ru/wiki/")+"<br>"); // 2 шаг echo("2. Получим координаты картинки в картинке браузера : "); int x=webpage.get_x_in_webpage_picture(screen_name); int y=webpage.get_y_in_webpage_picture(screen_name); echo("левый верхний угол картинки "+x+" x "+y+"<br>"); // 3 шаг echo("3. Перейдем в заданное место : "); echo(mouse.move(x,y)+"<br>"); sleep(2); // 4 шаг echo("4. Перейдем на сайт, с котрого у нас есть скриншот : "); echo(browser.navigate("vk.com")+"<br>"); // 5 шаг echo("5. Получим координаты картинки в картинке браузера : "); x=webpage.get_x_in_webpage_picture(screen_name,0.9,0); y=webpage.get_y_in_webpage_picture(screen_name,0.9,0); echo("левый верхний угол картинки "+x+" x "+y+"<br>"); // 6 шаг echo("6. Перейдем в заданное место : "); echo(mouse.move(x,y)+"<br>"); // конец echo("\n\n"); app.quit(); } }
// подключим функциональные объекты, если еще не подключен xhe_host="127.0.0.1:7013"; echo=require("../../../Templates JS/init.js"); // начало echo("<hr><font color=blue>webpage.get_x_in_webpage_picture</font><hr>"); // имя скриншота screen_name="test\\kak.bmp"; if (browser.get_model()=="chromium") screen_name="test\\kak1.bmp"; // 1 шаг echo("1. Перейдем на сайт, с котрого у нас есть скриншот : "); echo(browser.navigate("https://rpa-bot.ru/wiki/")+"<br>"); // 2 шаг echo("2. Получим координаты картинки в картинке браузера : "); var x=webpage.get_x_in_webpage_picture(screen_name); var y=webpage.get_y_in_webpage_picture(screen_name); echo("левый верхний угол картинки "+x+" x "+y+"<br>"); // 3 шаг echo("3. Щелкнем в заданном месте : "); echo(mouse.move(x,y)+"<br>"); app.sleep(2); // 4 шаг echo("4. Перейдем на сайт, с котрого у нас есть скриншот : "); echo(browser.navigate("http://vk.com")+"<br>"); // 5 шаг echo("5. Получим координаты картинки в картинке браузера : "); var x=webpage.get_x_in_webpage_picture(screen_name,0.7,3); var y=webpage.get_y_in_webpage_picture(screen_name,0.7,3); echo("левый верхний угол картинки "+x+" x "+y+"<br>"); // 6 шаг echo("6. Щелкнем в заданном месте : "); echo(mouse.move(x,y)+"<br>"); // конец echo("\n"); // Quit app.quit();
=============================================
Webpage Объекты DOM System Vision Web Window
=============================================
если что-то непонятно или необходимо узнать или считаете что надо добавить по работе этой функции, пишите в комментарии или на наш форум
.