Всем привет! Возникла небольшая дилемма с настройкой скрипта в Human Emulator, подскажите советом. Нужно чтобы в две ячейки (поля ввода), вставлялись по очереди индивидуальные значения, которые я заблаговременно подготовил и сохранил в текстовички. Вот собственно, что имеется: 1. Страничка в двумя полями ввода – адрес получателя, текст сообщения и кнопка "отправить" ; 2. Два текстовика, в первом – адрес получателя, во втором – текст сообщения. В текстовике с адресами – 100шт получателей, для каждого получателя подготовлен свой индивидуальный текст. Это значить, что в текстовике с сообщениями – 100шт вариаций текста. Я думаю, что привязку по циклу (по количеству раз прохода страницы) достаточно сделать лишь к одному текставику, правильно? Ведь и там и там, одинаковое количество записей. Я набросал скрипт, но он у меня не фурычит. Плюс мне кажется, что это немного не тот скрипт, который необходим. PHP: <?php $xhe_host ="127.0.0.1:7012"; // The following code is required to properly run XWeb Human Emulator require("../Templates/xweb_human_emulator.php"); $adres_poluchatelya=file("adresa.txt") $tekst_soobshcheniya=file("text.txt") for ($i=0;$i<count($adres_poluchatelya);$i++) { $browser->navigate('http://www.domen.com/index.html'); $browser->wait_for(10,0); $textarea->set_value_by_name('address','$adres_poluchatelya[$i]'); $textarea->set_value_by_name('message','$tekst_soobshcheniya[$i]'); $button->click_by_number('0'); $browser->wait_for(10,0); } // Quit $app->quit(); ?> Пожалуйста, подскажите решение! И кстати, может у меня стоят не те кавычки или может где-нибудь пробел не поставлен?
$adres_poluchatelya=file("adresa.txt") $tekst_soobshcheniya=file("text.txt") точка с запятой в конце и там и там
Поставил, всё равно - не фурычит . Цикл проходит нормально! Как указал адреса троих (для пробы) получателей в текстовике, так три раза и идёт открытие и вбивание страницы. Вот только вбивается не то. Должен вбиваться адрес, который записан в текстовике, но в место него, это вбивается - $adres_poluchatelya[$i] Точно также и в толе для сообщения, должен быть вбит текст моего сообщения, который возьмётся из моего текстовика, но вбивается это - $tekst_soobshcheniya[$i] Что делать?! У меня паника!
Урааа, у меня получилось!!! Кому интересно, то код выглядит так: PHP: <?php $xhe_host ="127.0.0.1:7012"; // The following code is required to properly run XWeb Human Emulator require("../Templates/xweb_human_emulator.php"); $adres_poluchatelya = file("adresa.txt"); $tekst_soobshcheniya = file("text.txt"); for ($i=0;$i<count($adres_poluchatelya);$i++) { $browser->navigate('http://www.domen.com/index.html'); $browser->wait_for(10,0); $textarea->set_value_by_name('address',"$adres_poluchatelya[$i]"); $textarea->set_value_by_name('message',"$tekst_soobshcheniya[$i]"); $button->click_by_number('0'); $browser->wait_for(10,0); } // Quit $app->quit(); ?> Кое-где, нужны пробелы и двойные кавычки.
Ещё возможен такой вариант: PHP: <?php $xhe_host ="127.0.0.1:7012"; // The following code is required to properly run XWeb Human Emulator require("../Templates/xweb_human_emulator.php"); $adres=file('adresa.txt'); $text=file('text.txt'); $adres=array_map("trim",$adres); $text=array_map("trim",$text); $count = count($adres); //Если список большой, что бы скрипт не глючил, т.к. в цикле иногда запарка с подсчетом быват for ($i=0;$i<($count);$i++) { $browser->navigate("http://www.domen.com/index.html"); $browser->wait_for(10,0); $textarea->set_value_by_name('address',$adres[$i]); $browser->wait_for(10,0); // добавляй желательно всегда вейты, меньше глюков будет $textarea->set_value_by_name('message',$text[$i]); $browser->wait_for(10,0); $button->click_by_number('0'); $browser->wait_for(10,0); sleep(rand(3,8)); // слип нужен. Oпять же, глюков меньше будет. } // Quit $app->quit(); ?> Кстати, написал человек отсюда http://zircool.ru/ и причём - совершенно безвозмездно! Огромное ему спасибо, за то, что помог!