driver.get("https://www.yahoo.com/");
driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
List<WebElement> optionCount = driver.findElements(By.xpath("//*[@id=\"mega-bottombar\"]"));
System.out.println(optionCount.size());
答案 0 :(得分:0)
这将返回菜单项列表:
List<WebElement> list = driver.findElements(By.xpath("//*[@id="mega-bottombar"]//li"));
所以...... list.size()
会返回8,根据你的评论,这是你所追求的。
答案 1 :(得分:0)
当您尝试在调用get()
方法之后获取yahoo顶部面板中的项目数时,您必须引导 WebDriverWait 并且您可以使用以下代码块:
driver.get("https://www.yahoo.com/");
List<WebElement> optionCount = new WebDriverWait(driver, 20).until(ExpectedConditions.visibilityOfAllElementsLocatedBy(By.xpath("//div[@id='mega-bottombar']/ul//li/a")));
System.out.println(optionCount.size());
控制台输出:
9
注意:您提供的快照中似乎缺少带有 Cricket 文字的链接。