有很多按钮具有相同的文本我需要在使用while循环时逐个点击它,它从第一个,第二个,第三个开始,并继续。
while(true) {
driver.findElement(By.xpath("(//button[text()='Follow'])[1]")).click();
}
有没有办法在每次执行循环时将[1]更改为[2]到[3],这样我就可以继续点击更高的数字等等
答案 0 :(得分:0)
使用您当前的方法,您没有退出while
循环的退出策略。可能更简单的方法是获取与该定位器匹配的所有链接,然后在循环中单击每个链接。
List<WebElement> links = driver.findElements(By.xpath("(//button[text()='Follow'])"));
for (WebElement link : links)
{
link.click();
}