有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何在使用Selenium等待一定时间后,在页面无法加载(get(url))时自动刷新页面

我有一个网页,当我正常启动它时,它每次都能正常启动。但是当我使用SeleniumWebDriver(通过get和navigate()启动它时。对于()方法,它只加载10次中的5次。在剩下的时间里,它一直在加载。但是,当我多次刷新它时,它会被加载

我尝试过使用selenium waits,但它们不能解决我的问题


共 (2) 个答案

  1. # 1 楼答案

    您可以使用pageLoadStrategy=none; 如果元素存在,请尝试,如果不存在,请刷新

    Chrome的一个例子:

    ChromeOptions options = new ChromeOptions();
    
    options.setCapability("pageLoadStrategy", "none");
    
    WebDriver driver = new ChromeDriver(options);
    
    driver.get(url);
    
    while(true){ //this can be infinite loop.
    
        try{
    
            Thread.sleep(milisecs);//how much to wait for element.
            driver.findElement(element);  
            //You can use ExplicitWait for elegant code.
    
            break;
    
        }catch(Exception e){
    
            driver.navigate().refresh();
    
        }
    }