需要通过Xpath获取所有元素

时间:2014-09-29 16:33:07

标签: selenium xpath selenium-webdriver

我正在开发一个脚本来从页面中获取所有元素:

这是一个在同一页面上可以使用多个按钮。

当我尝试使用FireBug / Firepath时,我获得了:

Locate=//*[@id='divHotelRecord']/div[1]/div[2]/div[6]/img

源代码中存在相同的HTML标记:

<div class="hotel_desc_row"><img src="../Images/bnt_select_room.gif" border="0" onclick="toggleDiv('divRoomDetails_330728');" /></div>

此外,当我尝试通过以下Selenium Java代码获取所有元素时:

List<WebElement> elements = driver.findElements(By.xpath(Locate));
System.out.println("Number of Elements Found: " + elements.size());

守则的输出让我产生:     找到的元素数量:0

请注意,请建议需要更改的内容或需要构建其他逻辑。

1 个答案:

答案 0 :(得分:0)

Chetan Gadodia

如果有重复项,你必须提到按钮的位置。

语法:driver。(byxpath(“(// * ['id = xxxxx'] [position()= 2]”))。click();