gpt4 book ai didi

XPath 元素编号返回所有元素而不是第一个

转载 作者:行者123 更新时间:2023-12-03 16:02:59 24 4
gpt4 key购买 nike

我正在使用以下代码访问一个链接(对于 phpunit/selenium):

//td[normalize-space() ='Test title 2']/following-sibling::td[3]/a[.='delete']

在 FireFox 中使用 XPath 检查器它返回 7 个元素(因为有 7 个链接匹配“测试标题 2”),但是当我在末尾添加 [1] 时:

//td[normalize-space() ='Test title 2']/following-sibling::td[3]/a[.='delete'][1]

它仍然返回 7 个链接。我在这里做错了什么?

最佳答案

当您添加 [1] 时在表达式的末尾,您选择第一个 a每个 child 的 child ...td[3] (即 7 a 子节点)。您可以将查询更改为:

xpath=(//td[normalize-space() ='Test title 2']/following-sibling::td[3]/a[.='delete'])[1]

或者如果您使用 webdriver(不需要 xpath 前缀):

(//td[normalize-space() ='Test title 2']/following-sibling::td[3]/a[.='delete'])[1]

这将选择第一个 a来自整套 a ...td[3] 的 children 元素。

引用XPath Examples获取更多教程。

关于XPath 元素编号返回所有元素而不是第一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10386429/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com