TypeScript SDK: Node: элемент страницы
Dom.q() возвращает один элемент или null, а Dom.qa() — массив элементов. Проверяйте отсутствие элемента перед чтением.
Примеры — отдельные фрагменты тела async function run(ctx: Akmelo.Context): Promise<void>. Используйте await только для методов с Promise в сигнатуре.
Как получить объект
const node = ctx.dom('<a href="/product">Товар</a>', 'https://example.com').q('a');
if (!node) return;
Методы
text
node.text(trim) → string
Получить текст найденного элемента. Повторяющиеся пробелы и переводы строк объединяются.
const result = node.text();
html
node.html() → string
Получить HTML элемента целиком, включая его собственный тег.
const result = node.html();
attr
node.attr(name) → string | null
Получить значение одного атрибута.
const result = node.attr('href');
abs
node.abs(attribute) → string | null
Получить полный URL из атрибута. По умолчанию используется href.
const result = node.abs('href');
q
node.q(css) → Node | null
Найти первый подходящий элемент внутри текущего фрагмента.
const result = node.q('.price');
qa
node.qa(css) → Array<Node>
Получить все совпадения внутри текущего фрагмента.
const result = node.qa('a');
exists
node.exists() → boolean
Проверить существование уже полученного объекта Node.
const result = node.exists();