我要选择并点击指定的<a>
下一个兄弟,html代码
下面:
<ul>
<li>
<a></a>
</li>
<li>
<a></a>
</li>
<li class='abc'>
<a></a>
</li>
<li>
<a></a> <!-- I want to click this link -->
</li>
</ul>
<ul>
正在改变,但是 <li class='abc'>
是不变的
并使用下面的代码:
let tag = await page.evaluate(() => {
return document.querySelector('li.abc').nextSibling.a
})
console.log(tag?'Y': 'N')
// await page.click(tag)
然后输出'N'
谁能帮我解决这个错误? 提前致谢!
最佳答案
从 Dave Batiste(puppeteer.slack.com 的用户)那里得到了这个答案,
感谢@Vaviloff 指出:我应该发布这个答案。
使用代码 page.click('.abc + li > a')
可以点击指定的<a>
我想要的,
和 Dave Batiste(puppeteer.slack.com 的用户)提供了更多信息如下:
If you do want a handle that you can call methods on, I think you'd be interested in >
page.$
...const handle = await page.$(selector); handle.click(options);
关于css-selectors - Puppeteer如何点击 'next sibling'的子元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56453023/