selenium 入門筆記

happym_m發表於2018-10-09

selenium自動化原理:

自動化測試python指令碼-->瀏覽器driver -->瀏覽器

注意:chrome的版本 & driver版本 一定要匹配哦,不匹配就會報錯“unable to find open pages”

selenium官網 https://www.seleniumhq.org/ (經常打不開)

下載selenium各版本,建議用這個網址:http://selenium-release.storage.googleapis.com

chromedriver的下載地址: http://chromedriver.storage.googleapis.com/index.html

以Selenium3.0.2版本為例, 介紹在Python中如何安裝及使用,具體操作步驟如下:

1.安裝WebDriver

  方法一:使用pip工具安裝

  安裝好python,pip工具後,先嚐試在cmd下安裝selenium,在cmd下直接輸入命令"pip install selenium",此時預設下載的是最新版本的selenium

如果想下載指定版本的selenium,可使用命令"pip install selenium==3.0.2"進行下載,

方法二:下載Selenium離線安裝包進行安裝

    下載地址https://pypi.python.org/pypi/selenium,找到所有你所需要的selenium版本,以及對應版本所支援的python版本

    下載安裝包並解壓,cmd進入到安裝包setup.py目錄,"python setup.py install"命令進行安裝。

    驗證安裝結果:1).程式碼中"import selenium" ,如果沒有報錯說明selenium已經安裝成功;

                            2)用pip工具檢視已安裝的版本以及詳細資訊,pip show selenium          

                         

2.各瀏覽器下載安裝

   selenium3.x版本開始不再提供預設瀏覽器支援,所有瀏覽器都是通過各個瀏覽器官方提供相應的瀏覽器驅動進行支援,這使得執行在各種瀏覽器上的自動化測試更穩定。

   注意事項:

      1.下載的版本和瀏覽器位數,取決於你使用的作業系統的型別和位數(64bit或32bit),

      2. 瀏覽器的版本和驅動版本存在對映關係,下載使用時需注意,如果兩個版本不匹配selenium將無法驅動瀏覽器

各瀏覽器的下載和驅動的下載地址:

      chromedriver與chrome版本對映表: https://blog.csdn.net/huilan_same/article/details/51896672

      下載chrome瀏覽器地址:https://google_chrome.en.downloadastro.com/old_versions/

      下載chrome瀏覽器驅動地址:http://chromedriver.storage.googleapis.com/index.html   

      下載firefox瀏覽器地址: http://ftp.mozilla.org/pub/firefox/releases/

      下載firefox瀏覽器驅動地址: https://github.com/mozilla/geckodriver/releases/

      下載IE瀏覽器地址:請自行下載

      下載IE瀏覽器驅動地址:請自行下載

      下載 Edg瀏覽器地址:請自行下載

      下載Edg瀏覽器驅動地址:請自行下載

 

3.編寫指令碼


示例程式碼:Demo.py
#encoding=utf-8
from selenium import webdriver
import time
#使用webdriver驅動瀏覽器程式
#通過executable_path指明瀏覽器驅動檔案所在路徑
# driver=webdriver.Ie(executable_path="d:\\IEDriverServer")

#以下均把瀏覽器驅動檔案放進python安裝程式的Scripts路徑下
# driver=webdriver.Ie()
# driver=webdriver.Firefox()
driver=webdriver.Chrome()
#開啟搜狗首頁
driver.get("http://www.sogou.com")
#清空搜尋框快取內容
driver.find_element_by_id("query").clear()
#在搜尋輸入框中輸入“光榮之路自動化測試”
driver.find_element_by_id("query").send_keys(u"自動化測試")
#單擊搜尋按鈕
driver.find_element_by_id("stb").click()
#等待5秒,以便檢視結果
time.sleep(5)
#退出瀏覽器
driver.quit()

 

相關文章