我有一个链接列表,并希望根据链接的名称在其中一个链接上CORE
。我无法通过选择器实现这一目标。
使用click
之类的东西来获取该项目的ElementHandle会更好,然后我可以点击/点击它。
我能想到的另一种方法是在page.$eval
内获取x / y坐标,然后手动点击该位置。似乎乏味。
我按照指南在这里发布了这个,但LMK如果我们应该在此打开PR。
答案 0 :(得分:1)
您是否考虑过使用page.$$(selector)
获取所有目标元素,然后使用page.evaluate()
获取linkName
,然后进行检查并点击?
类似的东西:
const targetLinks = await page.$$('yourLinkSelector');
for(let link of targetLinks){
const linkName = await page.evaluate(el => el.innerHTML, link);
if (linkName === 'myFancyLinkToClick') {
await link.click();
// break if only 1 link click is needed.
break;
}
}
希望它适合你。