获取Web表格单元格的颜色

时间:2015-01-21 10:19:27

标签: java html selenium-webdriver

我有网表,其中绿色行表示有效数据,红色行表示无效数据。见这个截图:

http://i.stack.imgur.com/wWqxM.jpg

我可以获取行数和值,但不知道如何获取表格中每行的颜色。

以下是获取行数和值的代码。

boolean ispresent = foxdriver.findElements(By.xpath("//*[@id='ctl00_CP_gvI']/tbody/tr/td")).size()!=0;
if (ispresent = true) {
    List<WebElement> drup = foxdriver.findElements(By.xpath("//*[@id='ctl00_CP_gvI']/tbody/tr/td"));
    int druplst = drup.size();
    System.out.println(druplst);
    for (int x=2; x <= druplst; x++) {
        String drupname = foxdriver.findElement(By.xpath("//*[@id='ctl00_CP_gvI']/tbody/tr["+x+"]/td[1]")).getText().trim();
        System.out.println(drupname);
    }
}

1 个答案:

答案 0 :(得分:1)

您可以从背景颜色获得 rgba 值(在一般情况下

例如。在这个页面上,在代码部分,你可以得到背景:

WebElement ele = driver.findElement(By.xpath("//pre"));
System.out.println(ele.getCssValue("background-color"));

这将为你提供o / p - rgba(238,238,238,1),这样你就可以在你的情况下实现相同的效果,并通知红色或绿色字符串的差异。