EvaluateScript — JS в ZennoPoster

Единственный способ работать с Shadow DOM — выполнить JavaScript прямо в браузере. Для этого используется EvaluateScript.

Содержание



Почему именно JS для Shadow DOM

Стандартные методы ZennoPoster (FindElementById и др.) ищут элементы только в основном документе. Shadow DOM — изолированное дерево, они его не видят. EvaluateScript выполняет код в контексте страницы и добирается до shadow root без ограничений.


Сравнительная таблица

ЗадачаJS
Прочитать свойство элементаreturn el.value / return el.innerHTML
Прочитать HTML-атрибутreturn el.getAttribute('name')
Записать значениеel.value = '...'
Кликнутьel.click()
Вернуть несколько значенийreturn JSON.stringify({...})
Open shadow roothost.shadowRoot.querySelector(...)
Closed shadow rootwindow.__closedShadowRoot.querySelector(...)