You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用含nth元素的CSS选择器时Playwright代码报错如何修复(不修改CSS)

不修改CSS表达式修复:nth(3)选择器无效问题

原生CSS规范里没有:nth()这种伪类写法,你写的选择器不符合标准才会触发报错。要在不修改原CSS表达式的前提下解决问题,直接用Playwright locator自带的nth()方法来指定索引即可:

把原代码里嵌在CSS选择器中的:nth(3)移除,改用locator链调用.nth(2)(注意Playwright的索引是从0开始计数的,第3个元素对应索引值为2)。修改后的完整代码如下:

try:
    expect(self.page.locator('div[class="some-class"]').nth(2)).to_be_visible(timeout=20000)
    return True
except AssertionError:
    return False

这种方式的核心逻辑是:完全保留你原本的CSS选择器div[class="some-class"],用Playwright的API来完成索引筛选,既满足“不修改CSS表达式”的要求,又能正确定位到目标元素。

内容的提问来源于stack exchange,提问作者Tal Angel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 11:25:19