java - 如何获取包含 tagName 的单元格中的值是 "td"或 "mat-cell"

标签 java selenium-webdriver

我的表格有标签名称“td”和“mat-cell”。我已经实现了如下示例的源代码,该示例仅获取 tagName 为“td”的单元格的值。

如何获取包含 tagName 为“td”或“mat-cell”的数据?

WebElement 表 = driver.findElement(taskListTablexpath);

    List<WebElement> rows = table.findElements(By.tagName("tr"));

    int row_count = rows.size();
    System.out.println("Total Row: " + row_count);
    for (int row = 0; row < row_count; row = row + 2) {
        **List<WebElement> columns = rows.get(row).findElements(By.tagName("td"));**
        int columns_count = columns.size();
        System.out.println("Number of cells In Row " + row + " are " + columns_count);
        for (int column = 0; column < columns_count; column++) {
            String celtext = columns.get(column).getText();
            if (celtext == null)
                continue;
            System.out
                    .println("Cell Value of row number " + row + " and column number " + column + " Is " + celtext);
        }
        System.out.println("-------------------------------------------------- ");
    }
}

最佳答案

只能有一个标签,如果要匹配 <td> 具有 mat-cell 的元素类attribute - 您需要将选择器修改为:

./td[contains(@class,'mat-cell')]

更多信息:

另请注意Table可通过 HtmlElements framework 获取类(class),它使得与 Tables 一起工作包括Angular Material tables容易得多

关于java - 如何获取包含 tagName 的单元格中的值是 "td"或 "mat-cell",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57688936/

相关文章:

python-3.x - '[Errno 26] 文本文件忙 : '/home/*****/.wdm/drivers/chromedriver/83.0.4103.39/linux64/chromedriver' '

javascript - 使用 Node Selenium 下载 Excel 文件

javascript - WebSocket 可以替代 Java applet 吗?

java - 模拟 Spring Boot

java - 在 java-8 lambda 表达式中使用 if-else 语句

java - 填充内存数据网格 Hazelcast 的最快方法

java - 如何在我的 Java 应用程序中使用 XAMPP MySQL 数据库?

html - 用户代理问题呈现不可读的标签 html 源数据

java - 如何使用通过 VPN 工作的 selenium webdriver 访问应用程序?

c# - 选择没有id的表并迭代所有href