我只能說由於版本衝突,簡直太折騰了,而搜了無數個博友的帖子才找到正確條案,就不能好好的寫篇文章嗎?html
最近真的是太閒太閒了,平時沒事總得搞點技術,否則內心感受好空虛,java
最近看上了selenium,因此試一下node
沒啥目標web
頭一篇這個環境搞的崩潰了,都是版本衝突,目前爲止,我還未有解決firefox與selenium的版本衝突問題chrome
這是一篇只講chrome的文章api
一、selenium下載最新版本,我在官網下載的瀏覽器
http://selenium-release.storage.googleapis.com/3.5/selenium-java-3.5.2.zip若是人品好,通常是下載得成功的網絡
下載後解壓框架
client-combined-3.5.2-nodeps-sources 是源代碼,若是到時候在eclipse中查看源碼的話,能夠到時候再加進去咯eclipse
二、chrome瀏覽器與chromedriver的區別
瀏覽器不用說了,就是咱們日常使用的,我這裏沒有特地講版本,就是我之前安裝過的
我是以v55來找chromedriver版本的
那麼,chromedriver是什麼呢?
下載地址:http://chromedriver.storage.googleapis.com/index.html
我下載的是v2.28,下載地點是在CSDN,度娘一搜就有
三、最後一步代碼,只是簡單的調用test
package seleniumLearn1; import java.util.concurrent.TimeUnit; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; public class Test { public static void main(String[] args) { System.setProperty("webdriver.chrome.driver","E:\\webDriver\\chromedriverV2.28.exe");//chromedriver服務地址 WebDriver driver =new ChromeDriver(); //新建一個WebDriver 的對象,可是new 的是FirefoxDriver的驅動 driver.get("http://www.baidu.com");//打開指定的網站 driver.findElement(By.id("kw")).sendKeys(new String[] {"hello"});//找到kw元素的id,而後輸入hello driver.findElement(By.id("su")).click(); //點擊按扭 try { /** * WebDriver自帶了一個智能等待的方法。 dr.manage().timeouts().implicitlyWait(arg0, arg1); Arg0:等待的時間長度,int 類型 ; Arg1:等待時間的單位 TimeUnit.SECONDS 通常用秒做爲單位。 */ driver.manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS); } catch (Exception e) { e.printStackTrace(); } /** * dr.quit()和dr.close()均可以退出瀏覽器,簡單的說一下二者的區別:第一個close, * 若是打開了多個頁面是關不乾淨的,它只關閉當前的一個頁面。第二個quit, * 是退出了全部Webdriver全部的窗口,退的很是乾淨,因此推薦使用quit最爲一個case退出的方法。 */ driver.quit();//退出瀏覽器 } }
運行: