EVENT
Команда iMacros EVENT
Команда EVENT — это новая команда для автоматизации управления веб-элементами, с которыми не может справиться классический TAG. Рассмотрим, с чем данная команда может нам помочь:
Drag & Drop;
Перетаскивание ползунка;
Нестандартный выбор даты;
Динамическая drop — down область.
В частности, EVENT справляется с написанием комментариев на VK.com, в то время, как TAG там бесполезен.
Для активации режима записи эвентов, нажмите Record, затем в блоке Recording mode установите Experimental event recording mode.
Синтаксис:
EVENT TYPE=тип [SELECTOR|XPATH]=местоположение [BUTTON|POINT|CHAR|KEY] = [кнопка|точка|символ|кнопка] [MODIFIERS=модификатор]
Параметры:
TYPE
Тип события для выполнения команды. Допускаются следующие типы:
События мыши:
MOUSEDOWN — нажать кнопку мыши над элементом;
MOUSEMOVE — движение мыши над элементом;
MOUSEUP — кнопка мыши отпущена над элементом;
CLICK — клик по элементу (CLICK = MOUSEDOWN + MOUSEUP);
DBLCLICK — двойкное нажатие.
События клавиатуры:
KEYDOWN — нажатие клавиши клавиатуры;
KEYUP — отпускание клавиши клавиатуры;
KEYPRESS — данное событие возникает сразу после KEYDOWN (в повседневной жизни при нажатии на любую клавишу на клавиатуре, происходят следующие действия: KEYDOWN -> KEYPRESS -> KEYUP, на русском примерно так: нажать -> нажата -> отпустить).
SELECTOR или XPATH
В данном пункте необходимо локализовать элемент, над которым будем производить манипуляции, на странице. Это может быть как XPATH, так и CSS-селектор.
BUTTON, POINT, CHAR, или KEY
Выбор какого либо элемента зависит от того, какой тип (TYPE) события используется. Событиям мыши необходимы BUTTON (кнопка на странице) или POINT (точка/координаты на странице). События клавиатуры: CHAR (символ) или KEY (номер клавиша на клавиатуре).
MOUSEDOWN, CLICK и DBLCLICK нужна BUTTON (0 — по умолчанию или левая кнопка мыши, 1 — средняя кнопка мыши, 2 — вторая или правая кнопка мыши).
MOUSEUP и MOUSEMOVE используют POINT вида «(245,186)».
KEYDOWN, KEYUP и KEYPRESS используют CHAR (печатаемые символы, вида «п» или «Q») или KEY (непечатаемые клавиши клавиатуры, как пример стрелка вверх, вида KEY=40).
MODIFIER
Комбинации CTRL, ALT, SHIFT, META. Клавиши держутся нажатыми во время событий мыши. Несколько модификаторов разделяются при помощи запятой, т.е. MODIFIERS="ctrl,shift".
Примечание:
События клавиатуры которые используют KEY поддерживаются только в дополнении iMacros для Firefox.
EVENTS сборники собирают EVENT команды одного и того же типа и на одном целевом элементе, поэтому при перемещении мыши по пути записывается всего одна команда EVENTS, где точки, определяющие путь даны в виде списка: POINTS="(27,154),(26,154),(25,154)".
Примеры:
URL GOTO=http://demo.imacros.net/TestPages/ForceDirectedGraph.aspx
FRAME NAME=iframeFDgraph
EVENT TYPE=MOUSEDOWN SELECTOR="HTML>BODY>svg>g:nth-of-type(10)>circle" BUTTON=0
EVENTS TYPE=MOUSEMOVE SELECTOR="HTML>BODY>svg>g:nth-of-type(10)>circle" POINTS="(559,222),(558,222),(557,222),(555,223), (554,224),(551,224)"
EVENTS TYPE=MOUSEMOVE SELECTOR="HTML>BODY>svg" POINTS="(546,227),(536,232),(534,234),(523,243),(515,255),(512,259),(510,263),(500,282),(499,285),(493,300),(492,304),(492,306),(488,321),(487,323),(487,324),(487,326),(486,327),(483,336)" EVENTS TYPE=MOUSEMOVE SELECTOR="HTML>BODY>svg>line:nth-of-type(4)" POINTS="(481,338),(481,339)"
EVENTS TYPE=MOUSEMOVE SELECTOR="HTML>BODY>svg" POINTS="(480,340),(479,342),(475,347),(475,348)"
EVENT TYPE=MOUSEMOVE SELECTOR="HTML>BODY>svg>g:nth-of-type(10)>circle" POINT="(474,350)"
EVENT TYPE=MOUSEMOVE SELECTOR="HTML>BODY>svg" POINT="(473,351)" EVENTS TYPE=MOUSEMOVE SELECTOR="HTML>BODY>svg>g:nth-of-type(10)>circle" POINTS="(472,353),(470,355),(469,357),(468,359),(467,360),(466,360)"
EVENT TYPE=MOUSEUP SELECTOR="HTML>BODY>svg>g:nth-of-type(10)>circle" POINT="(466,360)"
Используйте команду CLEAR, чтобы локальные данные в кэше не повлияли на измерение времени отклика веб-сайта:
URL GOTO=https://moqups.com/#!/
EVENT TYPE=MOUSEDOWN SELECTOR="#preview-svg>svg>svg>svg>foreignObject>DIV" BUTTON=0
EVENTS TYPE=MOUSEMOVE SELECTOR="#preview-svg>svg>svg>svg>foreignObject>DIV" POINTS="(131,254),(132,254),(134,254),(136,255),(139,256),(142,256),(147,256),(153,257),(160,257),(169,258),(190,258)"
EVENT TYPE=MOUSEMOVE SELECTOR="#containment" POINT="(204,257)"
EVENT TYPE=MOUSEUP POINT="(386,254)"