Есть ли какой-нибудь элегантный способ получить дескриптор элемента из nodeId
?Я получаю список всех узлов (и ID узла) по
const nodes = await page._client.send("DOM.querySelectorAll", {
nodeId: doc.root.nodeId,
selector: "*"
});
, где nodes.nodeIds
- это список целых чисел.И как-то я хотел бы запустить
const html = await page.$eval(nodeId, node => node.offsetParent === null);
Чтобы проверить, видим ли элемент.Проблема заключается в том, что page.$eval
ожидает строку (селектор) в качестве первого аргумента.
Я мог бы добавить пользовательский атрибут через DOM.setAttributeValue
, а затем запросить его через page.$eval
, но это выглядит хакерским.Так есть ли более прямой способ перехода от devtool-protocol
nodeIds к Puppeteer's ElementHandle
?