我正在尝试从表中找到一个元素,我正在使用下面的代码。
String part1="html/body/div[1]/div/div[2]/div[1]/div/div/div[3]/div[1]/table/tbody/tr[8]/td/div/div/div/table/tbody[1]/tr[";
String part2="]/td[1]";
int i=1;
System.out.println(isElementPresent(part1+i+part2));
while(isElementPresent(part1+i+part2)){
String groupName = driver.findElement(By.xpath(full)).getText();
System.out.println(groupName);
如果表包含多个元素,则此代码可以正常工作,但如果表中只包含一个元素,那么它就不起作用,因为xpath是
String full="html/body/div[1]/div/div[2]/div[1]/div/div/div[3]/div[1]/table/tbody/tr[4]/td/div/div/div/table/tbody[1]/tr/td[1]";
有解决方法吗?
答案 0 :(得分:0)
您应该尝试使用相对路径而不是绝对路径来访问您的元素 如果您的表具有ID,则可以使用:
driver.findElement(By.id("<your_id"));
或类名:
driver.findElement(By.cssSelector(".<your_class"));
如果您想使用xpath,请查看selenuim documentation。
希望有所帮助。