Быстрый старт
Итак, вы счастливый обладатель Human Emulator. Устанавливайте программу XWeb Human Emulator. При установке, программа выдаст “системный код” (ID). Этот код, а так же свой e-mail, необходимо скопировать в отдел продаж (ICQ: 420-444-071) и получить у них код активации. После чего полученный код скопировать в окно активации, не забыв при этом указать свой e-mail в соответствующем окошке, и активировать программу.
После ввода кода, видим интерфейс программы:

|
|
|
|

Для удобства работы, можно ещё сменить язык интерфейса на русский, через меню Серсис->Язык->Русский. В итоге программа готова к работе.
Для того, чтобы начать работу, необходимо познакомиться с основными функциями программы и понять принцип работы программы.
К примеру, мы открываем браузер, вводим адрес сайта в адресной строке, затем используя клавиатуру или мышь, вводим данные в формы, которые присутствуют на открытой нами странице. С помощью программы Human Emulator можно отследить все движения, сделанные нами на странице.
Какие движения будет “запоминать” программа, можно установить в меню Сервис->Настройки->Макрос.
Программа отлавливает три вида событий:
- движения мыши;
- ввод с клавиатуры;
- клики мыши.
В большинстве случаев при заполнении полей, движения мыши нам не потребуются, поэтому галочки можно оставить только напротив двух значений: “отлавливать события клавиатуры” и “отлавливать события клика”. Сохраняем выбранные нами настройки.
А сейчас перейдём непосредственно к работе со страницей, скрипт для заполнения которой мы хотим написать.
Если мы посмотрим внимательно на окно программы, то увидим, что оно разделено на две панели: левую и правую. В правой находится браузер, а в левой редактор. Если редактора не видно, то его можно сделать видимым нажав в меню ВИД->Левая панель.
Итак, начинаем писать скрипт. В меню нажимаем МАКРОС->ЗАПИСЬ или просто набираем на клавиатуре Ctr+Shift+R. В левой панели программы увидим, что появилась новая вкладка и в ней такая запись:
<?php // The following code is required to properly run Human Emulator require("../Templates/xedant_human_emulator.php"); // Quit $app->quit(); ?>
Сноска:
require("../Templates/xedant_human_emulator.php");
Этот код необходим для запуска эмулятора. На моём компе почему-то с относительным путем этот код не работает, поэтому я вписывала вот такой код:
require("C:/Program Files/Xedant/Human Emulator/Templates/xedant_human_emulator.php");
В правой панели, в адресной строке программы пишем урл страницы, к примеру: http://www.xanga.com/register.aspx и нажимаем клавишу Enter.
Открывается страница, которую мы будем заполнять.
В левой панели тут же видим изменения:
<?php // The following code is required to properly run Human Emulator require('../Templates/xedant_human_emulator.php'); $browser->navigate('http://www.xanga.com/register.aspx '); $browser->wait_for(240,1); // Quit $app->quit(); ?>
Дальше на странице (в правой панели) заполняем поля, а в левой сразу же видим изменения.
<?php // The following code is required to properly run Human Emulator require('../Templates/xedant_human_emulator.php'); $browser->navigate('http://www.xanga.com/register.aspx '); $browser->wait_for(240,1); $input->set_value_by_name('registrationModule$txtUsername','janberb'); $input->set_value_by_name('registrationModule$txtPassword1','janberb1'); $input->set_value_by_name('registrationModule$txtPassword2','janberb1'); $input->set_value_by_name('registrationModule$txtEmail','janberb@gmail.com'); $input->set_value_by_name('registrationModule$txtLetters','mmsot'); $listbox->select_name_by_inner_name('registrationModule$DOB_month','1'); $listbox->select_name_by_inner_name('registrationModule$DOB_day','28'); $listbox->select_name_by_inner_name('registrationModule$DOB_year','1958'); $checkbox->click_by_name('registrationModule$chkReadTerms'); $browser->wait_for(240,1); $button->click_by_name('registrationModule$createAccountButton'); $browser->wait_for(240,1); // Quit $app->quit(); ?>
Здесь пока можно остановиться. Нажимаем через меню в программе Макрос->Остановить или просто набираем на клавиатуре Ctr+Shift+R.
Пока рассмотрим подробнее код полученного скрипта, чтобы понять принцип работы программы.
Начнём со строки:
$input->set_value_by_name('registrationModule$txtUsername','janberb');
Если расшифровать инструкции этой строки, то получится вот такое:
input – вставить
set_value_by_name – присвоить значение по имени;
registrationModule$txtUsername – кому присовить(указывается имя поля);
janberb – значение поля, которое мы вводили от руки.
С input и set_value_by_name, думаю, понятно, это функции программы, а вот для того, чтобы понять откуда берется registrationModule$txtUsername рассмотрим код страницы http://www.xanga.com/register.aspx
С помощью программы это сделать просто. Откроем страницу снова в браузере программы. Далее в меню программы нажимаем Отладка->Пронумеровать->Поля Ввода или Ctrl+Alt+I. Видим, что в полях ввода что-то появилось. Например, в поле “Choose Username” видим: “0 registrationModule$txtUsername”, где 0 – это номер поля, а
registrationModule$txtUsername имя поля.
Также, можно пронумеровать не только поля ввода, но и другие элементы страницы и посмотреть какие значения будут принимать поля в зависимости от того какую нумерацию производить.
Разобравшись что откуда берётся, можно вернутся к скрипту, который у нас получился.
Присмотревшись к странице регистрации видим, что поля ввода нам как бы все известны заранее, кроме поля ввода каптчи (каптча на странице регистрации каждый раз новая), поэтому в полученном скрипте преобразуем строку:
$input->set_value_by_name('registrationModule$txtLetters','mmsot');
в такой вид, чтобы при запуске готового скрипта мы могли вводить каптчу от руки.
Новая конструкция будет иметь вид:
$captcha = $app->dlg_captcha_from_image_number(1);
$input->set_value_by_number("4",$captcha);
Догадаться, откуда взялись цифры 1 и 4 можно, но всёж посмотрим откуда они берутся.
В скрипте, который программа сама составила, в основном, использована нумерация по имени name, но можно использовать любую другую нумерацию. Например, ввод капчи можно использовать через нумерацию картинки. Жмём Отладка->Пронумеровать->Рисунки (Ctrl+Alt+P), наводим мышь на рисунок капчи и видим всплывшую цифру 1. Исходя из этого и есть у нас
$captcha = $app->dlg_captcha_from_image_number(1);
Тут же смотрим, что в поле куда мы вводили каптчу, есть такое значение: “4 registrationModule$txtLetters”, следовательно, оттуда и взялась цифра 4 в строке $input->set_value_by_number(“4″,$captcha);.
В итоге, у нас получился вот такой симпатичный скрипт:
<?php // The following code is required to properly run Human Emulator require("c:\Program Files\Xedant\Human Emulator/Templates/xedant_human_emulator.php"); $browser->navigate('http://www.xanga.com/register.aspx '); $browser->wait_for(240,1); $input->set_value_by_name('registrationModule$txtUsername','janberb'); $input->set_value_by_name('registrationModule$txtPassword1','janberb1'); $input->set_value_by_name('registrationModule$txtPassword2','janberb1'); $input->set_value_by_name('registrationModule$txtEmail','janberb@gmail.com'); $captcha = $app->dlg_captcha_from_image_number(1); $input->set_value_by_number("4",$captcha); $listbox->select_name_by_inner_name('registrationModule$DOB_month','1'); $listbox->select_name_by_inner_name('registrationModule$DOB_day','28'); $listbox->select_name_by_inner_name('registrationModule$DOB_year','1958'); $checkbox->click_by_name('registrationModule$chkReadTerms'); $browser->wait_for(240,1); $button->click_by_name('registrationModule$createAccountButton'); $browser->wait_for(240,1); // Quit $app->quit(); ?>
Проверим его работоспособность. Для этого в меню выбираем Отладка->Выполнить. Всё работает! Значит первый этап разработки скрипта пройден удачно.
Сноска:
$captcha
$app
dlg_captcha_from_image_number
$input
set_value_by_number
и про другие конструкции можно подробно почитать вот тут:
C:\Program Files\Xedant\Human Emulator\XHE Help.seo
Этот файл можно открыть с помощью программы:
C:\Program Files\Xedant\Human Emulator\Seo Note\Seo Note.exe
Также доступно описание и тут:
http://www2.humanemulator.info/objects_app.php
Новое описание тут:
http://www.humanemulator.info/23

Автор: Nadejda
