使用 WebDriver 等待特定条件时刷新网页。
当等待特定条件时,我们可以使用 Selenium webdriver 刷新网页。我们可以借助 **driver.navigate().refresh()** 方法来刷新网页。
示例
使用 refresh() 的代码实现。
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
public class BrowserRefresh{
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver", "C:\Users\ghs6kor\Desktop\Java\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("https://tutorialspoint.com/index.htm");
// refresh webpage with refresh method
driver.navigate().refresh();
}
}我们可以借助 **sendKeys** 方法刷新网页,然后将 Keys.F5 作为参数传递给该方法。sendKeys 方法能够接受 Keys 交互。我们需要在代码中添加 **import org.openqa.selenium.Keys** 语句来使用 Keys 类。
示例
使用 sendKeys() 的代码实现。
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.Keys;
public class BrowserKeys{
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver", "C:\Users\ghs6kor\Desktop\Java\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("https://tutorialspoint.com/index.htm");
// refresh webpage with sendKeys method
driver.findElement(By.id("gsc-i-id1")).sendKeys(Keys.F5);
}
}我们可以借助 **getCurrentUrl** 方法获取当前访问的 URL。我们还可以借助 **driver.navigate().to()** 方法刷新网页,并将从 getCurrentUrl 方法返回的值作为参数传递给该方法。
示例
使用 navigate().to() 的代码实现。
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
public class BrowserRefreshNavigate{
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver", "C:\Users\ghs6kor\Desktop\Java\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("https://tutorialspoint.com/index.htm");
// refresh webpage with navigate method
driver.navigate().to(driver.getCurrentUrl());
}
}我们可以借助 get 方法刷新网页,并将要启动的 URL 作为参数传递给该方法。打开网页后,我们可以通过再次访问相同的 URL 来重新加载页面。
示例
使用 get() 的代码实现。
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
public class BrowserRefreshGet{
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver", "C:\Users\ghs6kor\Desktop\Java\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("https://tutorialspoint.com/index.htm");
// refresh webpage with get method
driver.get(driver.getCurrentUrl());
}
}我们还可以借助 **Javascript Executor** 刷新网页。要运行 Javascript 命令,我们将借助 **executeScript** 方法,并将 **history.go(0)** Javascript 命令作为参数传递给该方法。
示例
使用 Javascript Executor 的代码实现。
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.JavascriptExecutor;
public class BrowserRefreshJs{
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver", "C:\Users\ghs6kor\Desktop\Java\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("https://tutorialspoint.com/index.htm");
// refresh webpage with executeScript method
driver.executeScript("history.go(0)");
}
}
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP