我一直在尝试通过硒自动化浏览器操作,目标是 - 将打开google.com
,将搜索gmail
文本,并且第一个链接将被单击并打开。使用的代码 -通过硒在网页自动化期间链接不打开
public static void main(String[] args) {
WebDriver driver= new FirefoxDriver();
driver.get("https://www.google.co.in");
driver.manage().window().maximize();
WebElement searchbox= driver.findElement(By.id("lst-ib"));
searchbox.sendKeys("gmail");
driver.findElement(By.name("btnG")).click();
driver.findElement(By.xpath("//ol[@id='rso']//div[1]//div[1]//div//h3//a")).click();
}
,但什么也没发生,我得到一个错误 - 在线程
错误异常“主要” org.openqa.selenium.NoSuchElementException:找不到元素: {“method”:“xpath”,“selector”:“// ol [@ id ='rso'] // div [1] // div [1] // div // h3 // a” }
我在哪里做错了?
我确定xpath是唯一的问题在这里..上面的票有这个问题的解决方案 driver.findElement(By.xpath(“// ol [@ id ='rso']/div [1]/div [1]/div/h3/a“))。点击() 这是正确的xpath –
不管你使用'/'还是'//'都不会有什么区别。两者都返回相同的结果。但是为了编码标准,你的xpath格式是合适的。但是,如果以不同的方式查看它,那么使用'//'应该会更有帮助,如果所有元素都在这些html元素之间。 –