пятница, 13 декабря 2013 г.

Human Emulator и работа с элементами HTML

Если при навигации на определенную страницу, элементы на выдаваемой странице строятся динамически, то Human Emulator - идеальное решение для таких случаев.  В этой статье я вкратце опишу как Human Emulator использовать для работы элементами HTML страницы.

описание XHE объектов из категории DOM

1. DOM объекты заданного типа
За это отвечают объекты из категории DOM, -  каждый из объектов  (за исключением интерфейса и списка интерфейсов) отвечает за работы с элементами заданных типов. Например $anchor - описывает за работу со ссылками на текущей веб странице, а $image - за работу с картинками, и так по каждому из общеупотребляемых тэгов.
Все эти объекты поддерживают следующие операции (Базовый функционал):
+ специфические операции для каждого объекта, например
для картинки ($image), это будет
а для таблицы ($table) :
И так по каждому из объектов. Как видим что возможностей более чем достаточно, можно напрямую управлять и получать как свойства DOM элементов так и эмулировать события мыши и клавиатуры для отправки их в заданный элемент.  Это уже позволяет нам иметь полный доступ и управления всеми HTML элементами.
2. DOM Интерфейсы
Но кроме того XHE позволяет напрямую подключатся к DOM интерфейсам. Для этого используются следующие объекты :
  • interface – прямой интерфейс к элементу страницы
Это нужно для того чтобы с максимальной эффективностью производить несколько операций с одним и тем же элементом или для более объектного подхода при решении задачи. Здесь объект interface - представляет связь с заданным DOM объектом, для чего используются функции установки связи :
А уже после установки связи с объектом могут быть произведены операции следующих типов :
3. Списки DOM Интерфейсов
  • interfaces – список прямых интерфейсов к элементам страницы
Этот объект содержит в себе сразу несколько DOM интерфейсов и позволяет одновременную работу сразу с ними всеми. Например чтобы сразу получить все ссылки с заданными классами или с заданными внутренними текстами.  Для получения списка интерфейсов можно воспользоваться следующими функциями :
После отработки мы получим объект со списком всех интерфейсов, удовлетворяющих заданным условиям. А уже после этого мы можем вызывать все те функции что есть отдельно у простого интерфейса и получать результат выполнения в массив, т.е каждый интерфейс даст собственную ячейку в массиве результатов.
Вывод
На этом все про категорию объектов DOM, которыми можно управлять встроенным в XHE браузером.  Как видно из вышеприведенного описания, функционала для того чтобы работать с элементами html страницы более чем достаточно, т.с на любой вкус и цвет. Даже кто плохо знаком с программирование может использовать объекты из первой категории которые по заданным параметрам выполняют то что от них требуется, кто хорошо знаком с ООП - тому рекомендуется использовать интерфейсы и списки интерфейсов, чтобы код получался легко читаемый и быстро переносимый. На этом пока все дальше я рассмотрю объекты из категории Web, System, Window, каждый из которых призван решать определенные задачи в сфере автоматизации сбора данных в нашем случае.

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

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