如果获得3个相同的weblocator,我如何找到XPath



HTML中的web元素:

<a href="javascript:procWirelineSubscribe()" class="frg-button color-green">Order</a>
<a href="javascript:procWirelineSubscribe()" class="frg-button color-green">Order</a>
<a href="javascript:procWirelineSubscribe()" class="frg-button color-green">Order</a>

我使用的Xpath:

//*[contains(@href,'javascript:procWirelineSubscribe()')]

然而,它总是会导致结束3个weblocator,因为这个我的脚本失败了

org.openqa.selenium。NoSuchElementException: no such element:无法定位元素:

有人能帮我一下吗?

'NoSuchElementException: no such element: cannot to locate element:'表示该元素未找到。如果有3个网页定位器,它会点击能找到的第一个元素。

可能是由于解析错误。试着只使用href的一部分,像这样:

//*[contains(@href,'procWirelineSubscribe')]

要将三个匹配项减少到一个,请尝试在表达式末尾添加[1]。出现此错误可能是因为结果是一个列表而不是一个项。

//*[contains(@href,'javascript:procWirelineSubscribe()')][1]

那么三个(看似相同的)元素中只有一个会被选中。

相关内容

  • 没有找到相关文章

最新更新