Node.js Кукловод нажимает на стрелку развернуть

#javascript #node.js #click #puppeteer

#javascript #node.js #нажмите #кукольник

Вопрос:

Я пытаюсь нажать на значок расширения для «Моя команда».

Элемент:

 <div id="pt1:_UISnvr:0:nvgpgl2_groupNode_manager_resources" title="My Team" class="navmenu-header x1a"><div><span class="x3im">My Team</span></div><div><a id="pt1:_UISnvr:0:nvgcil_groupNode_manager_resources".....
 

Селектор: #pt1:_UISnvr:0:nvgpgl2_groupNode_manager_resources
Путь к JS: документ.Выбор запроса(«#pt1 \:_UISnvr\:0\:nvgpgl2_groupNode_manager_resources»)
Xpath: //*[@id=»pt1:_UISnvr:0:nvgpgl2_groupNode_manager_resources»]

Я попробовал несколько вариантов выше, включая только идентификатор, однако мне не повезло. Для чего нужен правильный формат page.click ?

 await page.click('#pt1\:_UISnvr\:0\:nvgpgl2_groupNode_manager_resources');
 

Стрелка расширения

     <div id="pt1:_UISnvr:0:nvgpgl2_groupNode_manager_resources" title="My Team" class="navmenu-header x1a"><div><span class="x3im">My Team</span></div><div><a id="pt1:_UISnvr:0:nvgcil_groupNode_manager_resources" title="Expand My Team" class="svg-func svg-highlight size12 xkm" style="padding-top: 2.5px; width: 20.58px; transform: rotate(0deg); padding-bottom: 0px;" onclick="this.focus();return false;" href="#"><svg id="pt1:_UISnvr:0:nvgcil_groupNode_manager_resources::icon" class="xi6" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><g><path class="svg-icon03" d="M13.083,7L11.973,5.98,7.988,9.965,4.027,5.98l-1.078.985L7.973,12.02l0.043-.039L8.058,12.02Z"></path></g></svg><span class="xmo"> </span></a></div></div>
 

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

1. Не могли бы вы опубликовать разметку (html) добавленного вами изображения

Ответ №1:

Кажется, это должны быть оба действительных селектора (возможно, вам нужно немного подождать их):

 await page.click('div#pt1\:_UISnvr\:0\:nvgpgl2_groupNode_manager_resources');
 
 await page.click('div[id="#pt1:_UISnvr:0:nvgpgl2_groupNode_manager_resources"]');
 

Иногда эти варианты могут помочь, когда предыдущие терпят неудачу:

 await page.evaluate(() => { document.querySelector('div#pt1\:_UISnvr\:0\:nvgpgl2_groupNode_manager_resources').click(); });
 
 await page.evaluate(() => { document.querySelector('div[id="#pt1:_UISnvr:0:nvgpgl2_groupNode_manager_resources"]').click(); });