使用 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.tw/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.tw/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.tw/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.tw/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.tw/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