1.簡介
前邊巨集哥已經將環境搭建好了,今天就在Java專案搭建環境中簡單地實踐一下: 啟動三大瀏覽器。按市場份額來說,全球前三大瀏覽器是:IE.Firefox.Chrome。因此巨集哥這裡主要介紹一下如何啟動這三大瀏覽器即可,其他瀏覽器類似的方法,照貓畫虎就可以了。
2.啟動瀏覽器準備工作
2.1準備工作
建立一個Selenium的Java專案,用來練習,具體步驟如下:
1.開啟Eclipse,建立一個名稱為Bjhg_Selenium的Java 專案,如下圖所示:
2.在Bjhg_Selenium專案下,新建一個資料夾Tools,把Selenium相關包放到這個資料夾下,如下圖所示:
3.右鍵專案,選擇Build Path,然後選擇Confige Build Path...,彈出框點選Libraries,如下圖所示:
4.這裡點選Add JARs...,彈出框,選擇當前專案下tools這個資料夾裡面的selenium-server-standalone-3.4.0.jar,點選OK,效果如下圖所示:
準備工作就介紹到這裡,下邊介紹如何啟動三大瀏覽器。
3.啟動Chrome瀏覽器
3.1chrome和chromedriver版本下載地址及對應關係
【國外】chromedriver所有版本下載地址:http://chromedriver.storage.googleapis.com/index.html
【國內】chromedriver所有版本下載地址:https://npm.taobao.org/mirrors/chromedriver
【國內】chrome所有版本下載地址:https://www.chromedownloads.net/chrome64win/
【國外】瀏覽器版本和驅動版本對應關係檢視網址:http://chromedriver.chromium.org/downloads
注意:一個大的chromedriver版本里面可能包含的有多個小版本,如果下載的Chromedriver版本和當前使用的chrome瀏覽器版本不匹配則可以換其他的試試。比如:chromedriver 79版裡面有v79.0.3945.16 v79.0.3945.36
3.2驅動Chrome
1.在lessons包下建立類LaunchChrome.java,如下圖所示:
2.大致思路:開啟Chrome瀏覽器,訪問百度網址,獲取網址的title,然後再關閉Chrome瀏覽器。根據思路進行程式碼設計,如下圖所示:
3.參考程式碼,如下:
package lessons; import java.util.concurrent.TimeUnit; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; /** * @author 北京-巨集哥 * * 2021年6月17日 */ public class LaunchChrome { public static void main(String[] args) { System.setProperty("webdriver.chrome.driver", ".\\Tools\\chromedriver.exe"); //初始化一個chrome瀏覽器例項,例項名稱叫driver WebDriver driver = new ChromeDriver(); //最大化視窗 driver.manage().window().maximize(); //設定隱性等待時間 driver.manage().timeouts().implicitlyWait(8, TimeUnit.SECONDS); // get()開啟一個站點 driver.get("https://www.baidu.com"); //getTitle()獲取當前頁面title的值 System.out.println("當前開啟頁面的標題是: "+ driver.getTitle()); //關閉並退出瀏覽器 driver.quit(); } }
4.電腦端的瀏覽器,如下小視訊所示:
5.執行程式碼,右鍵Run AS->java Application,控制檯輸出,如下圖所示:
4.啟動Firefox瀏覽器
4.1Firefox和驅動下載地址
selenium2.X最高支援的Firefox版本為46,使用selenium2.X的話不需要下載火狐驅動,只需要配置火狐的啟動路徑即可。
Selenium3.0開始需下載geckodriver,想使用geckodriver ,Firefox瀏覽器必須是48或者更高版本。具體的瀏覽器和瀏覽器驅動之間的對應關係可在geckodriver下載網站中的版本說明中檢視。
所有火狐瀏覽器版本下載地址:http://ftp.mozilla.org/pub/firefox/releases/
所有火狐驅動geckodriver版本下載地址:https://github.com/mozilla/geckodriver/releases
4.2驅動Firefox
具體過程和Chrome的差不多,巨集哥就不做贅述,將程式碼貼出來以供參考。
1.參考程式碼,如下:
package lessons; import java.util.concurrent.TimeUnit; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; /** * @author 北京-巨集哥 * * 2021年6月17日 */ public class LuanchFirefox { public static void main(String[] args) { //System.setProperty("webdriver.firefox.marionette", ".\\Tools\\geckodriver.exe"); System.setProperty("webdriver.gecko.driver", ".\\Tools\\geckodriver.exe"); //初始化一個火狐瀏覽器例項,例項名稱叫driver WebDriver driver = new FirefoxDriver(); //最大化視窗 driver.manage().window().maximize(); //設定隱性等待時間 driver.manage().timeouts().implicitlyWait(8, TimeUnit.SECONDS); // get()開啟一個站點 driver.get("https://www.baidu.com"); //getTitle()獲取當前頁面title的值 System.out.println("當前開啟頁面的標題是: "+ driver.getTitle()); //關閉並退出瀏覽器 driver.quit(); } }
5.啟動IE瀏覽器
5.1IE瀏覽器驅動下載地址
本人使用的IE和IEDriverServer:
IE瀏覽器版本:11 IEDriverServer版本:Win32_3.0.0
IE瀏覽器所有驅動版本下載地址:http://selenium-release.storage.googleapis.com/index.html
5.2驅動IE
具體過程和Chrome的差不多,巨集哥就不做贅述,將程式碼貼出來以供參考。
1.參考程式碼,如下:
package lessons; import java.util.concurrent.TimeUnit; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; /** * @author 北京-巨集哥 * * 2021年6月17日 */ public class LaunchIE { public static void main(String[] args) { System.setProperty("webdriver.ie.driver", ".\\Tools\\IEDriverServer.exe"); //初始化一個IE瀏覽器例項,例項名稱叫driver WebDriver driver = new InternetExplorerDriver(); //最大化視窗 driver.manage().window().maximize(); //設定隱性等待時間 driver.manage().timeouts().implicitlyWait(8, TimeUnit.SECONDS); // get()開啟一個站點 driver.get("https://www.baidu.com"); //getTitle()獲取當前頁面title的值 System.out.println("當前開啟頁面的標題是: "+ driver.getTitle()); //關閉並退出瀏覽器 driver.quit(); } }
6.小結
巨集哥因為之前做過python和selenium,所以沒有出現瀏覽器版本和驅動版本匹配的問題,新手一定要注意這個問題。
好了,今天關於三大瀏覽器的驅動巨集哥就分享到這裡,感謝你耐心的閱讀。
您的肯定就是我進步的動力。如果你感覺還不錯,就請鼓勵一下吧!記得點波 推薦 哦!!!(點選右邊的小球即可!(^__^) 嘻嘻……)