有两个按钮具有相同的类,文本等。我必须找到并单击每个按钮。
<a class="jsx-1291462554"><button style="padding: 12px 15px 10px; border-radius: 4px; font: 500 15px / 16px hind; color: white; background-color: rgb(18, 83, 181); justify-content: center; text-align: center; cursor: pointer; text-decoration: none; outline: none; border: none; width: 162px;"><span class="jsx-1291462554 magzter__buttonText">Choose</span></button></a>
6条答案
按热度按时间raogr8fs1#
这两个元素都是动态元素。所以到
click()
在第一个选择中,您需要为elementToBeClickable()
您可以使用以下任一定位器策略:xpath
:0tdrvxhp2#
如果可能的话,放一些东西来区分按钮的Map。但如果不可能的话,这些Map就会解决
yqhsw0fo3#
查找与以下定位器匹配的第一个和第二个元素:
使用标记按钮查找所有元素,并且是指定了类的“a”的第一个子元素:
css等价于第一个xpath:
第二个xpath的css等价项:
mzsu5hc04#
为了自动点击按钮,我们使用
XPath
函数,它在类中By
.1.版本
2.版本
要启用文本字段的自动输入,我们还可以使用函数
CssSelector
位于班级By
.8ljdwjyq5#
//节[contains(@class,'chooseplantitle')]//按钮[1]//节[contains(@class,'chooseplantitle')]//按钮[2]
zaqlnxep6#
如果button元素替换为:
如果按钮的单击操作更改了dom,您可能会遇到staleelementreference,在这种情况下,您可能需要在选择第二个之前再次重新提取(findelements)。