Human Emulator


Robotic browser automation

sales@webemulator.com

Бесплатная онлайн консультация по возможностям программы.

English version of the site

Работа с системой

  • В: Как работать с буфером обмена?

    В программе присутствует объект $clipboard с двумя функциями: get_text и put_text. При помощи первой, можно положить в буфер какой-либо текст, а второй выложить его в нужное место. Полезно для заполнения труднодоступных полей.
  • В: Как прочитать строку из файла/записать данные в файл/добавить строку?

    Есть много различных способов и вариантов действий : Строка $text = file(‘C:\123.txt’); помещает в массив $text всё содержимое текстового файла. Проверить можно с помощью кода echo $text[N]; где N – номер интересующей строки. Функция $textfile->read_file получает всё содержимое файла в виде одной строки. Функция $textfile->write_file записывает указанные ей данные в текстовичок. Больше информации можно получить в описании объекта $textfile
  • В: Как запускать скрипты из командной строки?

    Для работы Эмулятора с командной строкой существует несколько полезных команд, которые можно использовать для более удобного запуска программы с нужными параметрами.
    /port:"" помогает запустить программу сразу на нужном вам порту, не ковыряясь в настройках. Пример:
    Код:
    start /wait "1" "D:\XHE\XWeb Human Emulator.exe" /port:"7010"

    /script:"" позволяет сразу после загрузки программы начать отрабатывать указанный вами скрипт. Пример:
    Код:
    start /wait "1" "D:\XHE\XWeb Human Emulator.exe" /script:"D:\scripts\script7010.php"

    /in_tray:"" предоставляет возможность запускать программу с последующим сворачиванием в трей. Пример:
    Код:
    start /wait "1" "D:\XHE\XWeb Human Emulator.exe" /in_tray:"yes"
    ("true" тоже можно использовать, соответственно противоположного эффекта можно добиться используя "No" и "true")
    /script_args: даёт возможность передать в запускаемый одновременно с программой скрипт значения функций. Пример:
    Код:
    start /wait "1" "D:\XHE\XWeb Human Emulator.exe" /script:"D:\scripts\script7010.php" /script_args:"1 '222' 3"
    После запуска программы с такими параметрами, в скрипте значения переменных $argv[1],$argv[2],$argv[3] станут равны 1, '222' и 3 соответственно. Стоит обратить внимание на то, что значения передаваемых в переменные данных должны разделяться пробелами. Если сделать так: /script_args:"1, '222', 3" то в переменных будет 1, '222', 3

    Так же стоит принять во внимание, что командная строка очень чувствительно относится к лишним пробелам. Когда они используются не к месту, программа не запускается так как нужно. Например: /script: "D:\scripts\script7010.php" Не запустит нужный скрипт.
  • В: Как управлять Эмулятором на удалённой машине?

    Если вы установили программу на сервер, то можете посылать ей скрипты на выполнение с любого другого компьютера. На этом компьютере должны быть PHP, доступ к интернету и папка templates от Хумана. В файле xweb_human_emulator.php из папки templates необходимо выставить параметры доступа к серверу в переменных $xhe_host и $server_password, а в запускаемом скрипте - инклюд (require) этого файла. После этого можно запустить скрипт на выполнение через командную строку. Пример:
    start "полный путь к php.exe" -f "полный путь к скрипту"
    при заполнении будет выглядеть примерно так:
    Код:
    start /wait "1" "D:\XHE\PHP\php.exe" -f "D:\scripts\script7010.php"
    По этому-же принципу можно пользоваться PHPшным планировщиком задач Cron. В нём нужная строчка будет выглядеть так:
    Код:
    exec("cmd /C call \"D:\XHE\PHP\php.exe\" -f \"D:\scripts\script7010.php\"");
  • В: Какие имеются варианты работы с клавиатурой?

    Все функции объекта $keyboard отвечают за различные возможности в данном вопросе. Чаще всего используется $keyboard->send_input($string,$timeout=0); Эта функция эмулирует набор текста с клавиатуры, не задействуя при этом само устройство. То есть во время работы программы ваши собеседники в ICQ не получат рабочий текст :) Довольно часто используется функция $keyboard->send_key($key); Она позволяет отправить нажатие любой кнопки на клавиатуре, опять-таки не задействуя устройство. В меню "Сервис" > "Просмотр клавиатурных кодов" можно узнать номер, соответствющий каждой клавище на клавиатуре для использования вместо переменной $key функции.
  • В: Какие имеются варианты работы с мышью?

    По аналогии с клавиатурой, для мыши существует объект $mouse. Различные функции обеспечивают клики, двойные клики, зажатия и отпускания различных кнопок по указанным координатам. Опять-таки чаще всего используется функция $mouse->send_click($x,$y); отправляющая клик без задействования самого устройства. Координаты для клика всегда можно узнать посмотрев в нижнюю правую часть окна программы. Поводите мышкой по окну браузера и обязательно заметите постоянно изменяющиеся цифры. Помимо того у объектов, ответственных за элементы, есть функции вроде $anchor->get_x_by_href($href,$exactly=true); и
    $element->get_top_offset_on_page_by_name($name); позволяющие получить координаты расположения элемента на странице. Пригодится, если их расположение меняется.
  • В: Как увеличить быстродействие эмуляции (мышка, клавиатура).

    Cуществует два вида ввода машинный(моментальный) и человекоподобный (с заданными паузами). Детально описание по быстродействию в данных статьях: http://humanemulator.net/objects/SYSTEM/keyboard/send_events/send_input.php http://humanemulator.net/objects/SYSTEM/mouse.php#full_emulate
  • В: Почему то программа ( например выгрузка объявлений на авито) изменяет текст объявлений.Пример : Качественная предчистовая отделка, а должно быть отделка.

    Можно сделать следующим образом: использовать для работы с файлами php функции, то есть get_file_contents и put_file_contents. Их использовать вместо наших функций чтения и записи в файл.


Если у вас возникли пожелания какие ответы вы бы хотели видеть здесь еще, пишите в нашу службу поддержки.