如何更改selenium列表中的值< webelement>

nhhxz33t  于 2021-07-06  发布在  Java
关注(0)|答案(1)|浏览(268)

我试图从列表中获取一个值,如果它不是我所期望的值,则更改该值。我要做的是导航到下一页。网站有“前”、“1”等。我想从列表中获取“previous”,然后将其更改为“2”,这样我就可以向前导航了。请让我知道如果我能解释好。请看我下面的代码,有什么办法我可以改变列表值?我所做的不是工作:

try {
            nextPage_02 = driver.findElements(By.xpath("//a[contains(@href,'=sr_pg_')]"));

if (nextPage_02 != null || ((WebElement) nextPage_02).isDisplayed()) {
                for(WebElement g : nextPage_02) {
                    if(g.getText().equals("previous")) {
                        g.getText().replace("previous", "0") ;
                        System.out.println(g.getText());
                        int nextPageToInt = Integer.parseInt(g.getText());
                        int nextPage_content ;
                        int i ;
                        for(i= 0 ; i < 4 ; i++) {
                            nextPage_content = nextPageToInt + i;
                            if(nextPageToInt == nextPage_content ) {
                                ((WebElement) nextPage_02).click();
                            }
                        }
                    }
9wbgstp7

9wbgstp71#

如果要更改从列表中获取的值,而不是更改网页上的列表值,可以执行以下操作:

try {
    public static List<WebElement> nextPage_02 = driver.findElements(By.xpath("//a[contains(@href,'=sr_pg_')]"));
    for (WebElement g : nextPage_02) {
        String str = g.getText();
        if(str.equals("someText")) {
            str = str.replaceAll("someText", "2") ;
            int nextPageToInt = Integer.parseInt(str);
            // do something with nextPageToInt??
        }
    }
}

如果您想更改网页上的列表值,请让我们了解您的真实意图。

相关问题