Ярлыки

.htaccess (4) тестирование (8) шаблоны проектирования (3) css (5) Debian (6) docker (2) Doctrine2 (6) Git (6) html (4) java (6) javascript (13) jquery (11) LFS (3) linux (23) mac os (4) mod_rewrite (2) MSSQL (4) MySQL (18) ORM Doctrine (17) patterns (3) PDO (3) perl (7) PHP (64) PHPUnit (8) Python (15) SEO (2) Silex (1) SimpleXML (1) SQL (14) ssh (4) Ubuntu (24) Yii1 (1) Zend Framework (19) ZendFramework2 (8)

воскресенье, 31 января 2010 г.

Закрываем системное окно(диалог) в Xedant Human Emulator

Бывает что я работаю с замечательным инструментом для seo - Xedant Human Emulator. Для тех кто не в курсе это движок браузера Internet Explorer, снабженный графической оболочкой, управляемый скриптами на php и имеющий встроенный редактор для их написания. Призвано это все без лишней головной боли автоматизировать действия пользователя в интернете.
В общем о программе лучше будет почитать на ее оф.сайте.

Я же буду иногда выкидывать сюда маленкие хитрости при написании скриптов. Так скажем не совсем документированные возможности.

На пример, как закрыть системный диалог, вызванный ie (не javascript).

Функция которая возвращает номер окна по его заголоку:
function get_window_num($text) 
{
    // объект библиотеки XHE для работы с окнами
    global $window;
    $list = explode('<br>', $window->get_all_texts('true', 'true'));
    $i = 0;
    foreach($list as $w) {
        if($w == $text) break;
        $i++;
    }
    return $i;
}

Пример:
$n = get_window_num("загловок окна");
// жмем кнопку по тексту в ней например "Да"
$window->press_button_by_text_in_window_by_number($n, 'Да', 'false', 'true', 'false');

Таким образом мы ответили в диалоге Windows "Да". Вот так можно автоматизровать массу рутинных действий в интернете,
связанных с поисковой оптимизацией, автоматическую регистрацию на сайтах и в каталогах, автоматическую публикацию сообщений и сбор информации.

Комментариев нет:

Отправить комментарий