如何在 Selenium 中為表格型別的結構獲取下一個兄弟元素?
我們可以在 Selenium webdriver 中為表格型別的結構獲取下一個兄弟元素。下一個兄弟用於確定上下文節點的兄弟元素。
此外,這些兄弟元素應出現在與當前節點相同的層次結構中並具有相同的父元素。我們以一個帶有表格標籤的表格為例,該標籤有多個帶有標籤 tr 的子元素。
然後,讓我們嘗試從第一行(包含表頭)識別下面影像中突出顯示的第三行元素。

語法
//table[@id='table1']/tbody/tr[1]/following-sibling::tr[2]/td
在這裡,我們查詢表格中的第三行,但我們提供了 followingsibling::tr[2],因為我們從第一行查詢第三行。

示例
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import java.util.concurrent.TimeUnit;
public class FollowingSiblingTable{
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver",
"C:\Users\ghs6kor\Desktop\Java\chromedriver.exe");
WebDriver driver = new ChromeDriver();
//implicit wait
driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
//URL launch driver.
get("https://sqengineer.com/practice-sites/practice-tables-selenium/");
//identify third row from first row in form of list
List<WebElement> l = driver.findElements(By.xpath ("//table[@id='table1']/tbody/tr[1]/following-sibling::tr[2]/td"));
//iterate list to get text of third row elements
for (int i = 0; i<l.size(); i++) {
String colVal = driver.findElements(By.xpath ("//table[@id='table1']/tbody/tr[1]/following-sibling::tr[2]/td")) .get(i).getText();
System.out.println("Values at third row after are : " + colVal);
}
driver.close();
}
}輸出

廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP