Помощник
|
Скрипты для Human Emulator, В этой теме выкладываем скрипты для Human Emulator |
Wild_klas |
2.2.2014, 13:57;
Ответить: Wild_klas
Сообщение
#232
|
|
Здравствуйте. Подскажите пожалуйста, как выбрать изображения в диалоговом окне.
Я пытаюсь загрузить для примера на тестовом полигоне: $browser->navigate('http://humanemulator.info/poligon/inputfile.html'); $browser->wait_for(60,1); //открывает модальное окно для выбора файлов. $inputfile->click_by_atribute('name','Name',true); Как дальше выбрать изображение? Вычитал здесь что в более поздних версиях есть метод $window->execute_open_file но моей версии его к сожалению нету, как быть? Версия human`a 4.0.14 немного разобрался. Теперь на тестовой площадке я могу задать путь к файлу: $browser->navigate("http://www.humanemulator.info/poligon/inputfile.html"); $browser->wait_for(30,1); if ($inputfile->set_value_by_name("Name","C:\\img\\1.jpg")=== true) echo "Yes"; Но вот когда я хочу загрузить фото на сайт http://900.md/add/ у меня ничего не получается. Подскажите, что я делаю не так? $browser->navigate('http://900.md/add/'); if ($inputfile->set_value_by_name("foto","C:\\img\\1.jpg")=== true) echo "Yes"; if ($inputfile->set_value_by_name("foto","C:\\img\\1.jpg")=== false) echo "no"; В консоль я получаю сообщение "no" |
|
|
xscripts |
3.2.2014, 20:36;
Ответить: xscripts
Сообщение
#233
|
|
Wild_klas,
Открыв указанную Вами страницу в последнем Хумане и использовав инспектор элементов я увидел, что поле ввода файла куда Вы пытаетесь добавить путь находится во фрейме, таким образом код будет следующий: $browser->navigate('http://900.md/add/'); if ($inputfile->set_value_by_name("foto","C:\\img\\1.jpg",0)=== true) echo "Yes"; if ($inputfile->set_value_by_name("foto","C:\\img\\1.jpg",0)=== false) echo "no"; НО я сомневаюсь что данный метод будет работать. Причины описаны в указанной выше статье. Если коротко, то обычно поля ввода заворачивают в дополнительные тэги или в js, для того что бы, например, подгружать привью фотки, которую Вы пытаетесь добавить. Функция set_value_by_name тупо задаёт значение указанному в функции полю, таким образом, значение не проходит через все тэги, как следствие не срабатывает js и не подгружается фото и, соответственно, фотка не подгружается. Для обхода таких ситуаций и была добавлена функция $window->execute_open_file($text,$path,$btn_text,$exactly=true,$thread=false); Которая вводит путь к файлу прямо в диалог открытия файла, который вызывается по клику на кнопку "Обзор..." и таким образом значение проходит везде где надо.К тому же если мне не изменяет память, то в указанной Вами версии программы есть другая функция ввода значения в поля ввода пути. Точно не помню что то типа insert_by_что то там. Это можно посмотреть в диалоге добавления кода, который вызывается по горячим клавишам ctrl+alt+right. Выбираете закладку inputfile и ищете среди открывшегося списка функций. |
|
|
xscripts |
18.2.2014, 16:39;
Ответить: xscripts
Сообщение
#234
|
|
|
Скрипт массовой проверки доменов поможет вам определить свободные домены.
Код <?php /* производитель: x-scripts ** тип продукта: скрипт под Xweb Human Emulator ** сайт программы: humanemulator.info ** наш сайт: x-scripts.com ** по всем вопросам обращайтесь: ** email: order@x-scripts.com ** icq: 625657402 ** skype: igor_sev2 */ $xhe_host ="127.0.0.1:7010"; // The following code is required to properly run XWeb Human Emulator require("../../Templates/xweb_human_emulator.php"); // //////////////////////// настройки скрипта ///////////////////////// // файл с доменами для проверки $a_dmns = file("data/dmns.txt"); // файл с результатами $str_res_file="res/res.txt"; // скрипт работает в режим отладки $dbg = true; // //////////////////////// дополнительные модули /////////////// // функции require_once("tools/functions.php"); // /////////////////////// скрипт /////////////////////////////////////////// debug_mess(date("\[ d.m.y H:i:s\] ")." скрипт запустили"); // удаляем файл с предыдущими результатами $file_os->delete($str_res_file); // строка с доменами которую будем вводить на сайт $str_dmns=""; // пройтись по всем доменам for($i=0;$i<count($a_dmns);$i++) { // если $i кратно 30 или равно последнему элементу массива // то вводим строку с доменами if(($i!=0&&$i%30==0) || $i==(count($a_dmns)-1)) { // переходим на проверку доменов $browser->navigate("http://www.cy-pr.com/tools/masswhois/"); // если зашли в последний раз то добавим последний домен if($i==(count($a_dmns)-1)) $str_dmns.=$a_dmns[$i]; // задать домены в поле $textarea->set_value_by_name("doms",trim($str_dmns)); $button->click_by_inner_text("Проверить"); // ожидаем пока появится результат sleep(1); // разбираем результат и свободные пишем в заданный файл parse_results(); // чистим строку с доменами $str_dmns=""; } // добавить домен в строку $str_dmns.=$a_dmns[$i]; //echo $a_dmns[$i]; } debug_mess(date("\[ d.m.y H:i:s\] ")." скрипт закончил работу"); // Quit $app->quit(); ?> Этот скрипт работает в Demo версии программы. Демку можно скачать на оф. сайте humanemulator.info или x-scripts.com/scripts/demo_list.php, где вы можете скачать ещё несколько скриптов, работающих в демке Human Emulator.
Поблагодарили: (0) |
|
|
||
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Обучение Email Рассылкам + Софт Для Автоматизации (100к в сутки с сервера) | 10 | zennoboss | 4634 | Сегодня, 5:20 автор: Skyworker |
|
Посоветуйте массажер для спины и шеи | 9 | Boymaster | 877 | Вчера, 13:56 автор: Vmir |
|
Какой % отказов нормален для сайта? | 14 | Aloof | 3378 | Вчера, 13:50 автор: Vmir |
|
Люблю творить! Статьи для вас Копирайтинг- моя жизнь! |
312 | Zoya83 | 190691 | Вчера, 7:51 автор: DimonX |
|
Современный сервис для быстрого и безопасного обмена валют. | 15 | CryptoTims | 4959 | 22.4.2024, 22:32 автор: CryptoTims |
Текстовая версия | Сейчас: 24.4.2024, 11:58 |