Python+Selenium | ChromeDriver版本錯誤之升級驅動,及禁止瀏覽器自動更新


背景:

用python + selenium寫的UI自動化代碼,原來可運行,今天運行突然報如下的錯:

 

selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 89

Current browser version is 91.0.4472.77 with binary path

C:\Program Files (x86)\Google\Chrome\Application\chrome.exe

原因分析:

報錯的原因是ChromeDriver的版本跟Chrome瀏覽器的版本不一致了,原來Chrome瀏覽器設置了自動更新,但是ChromeDriver沒更新。

如何解決:

大體思路是:

1、安裝目前瀏覽器版本的ChromeDriver

2、禁止chrome瀏覽器自動升級(通過禁用更新服務)

具體步驟如下:

1、安裝目前瀏覽器版本對應的ChromeDriver

有兩個下載地址:

1)http://chromedriver.storage.googleapis.com/index.html

2)https://npm.taobao.org/mirrors/chromedriver/

 

例如,我的Chrome瀏覽器版本是91.0.4472,

 

接下來,下載對應版本:

 

2、安裝和配置

將壓縮包中的chromedriver.exe復制到原存放ChromeDriver的路徑(其他路徑也可用):

 

 

確認下,環境變量中用戶變量中PATH的配置,是否ok:

 

(如果是將chromedriver.exe放在其他路徑的,把對應路徑添加到PATH即可。)

 

完成后,在cmd下輸入chromedriver驗證是否安裝成功:

 

 

3、升級chromedriver.exe后,驗證執行是否報錯

1 from selenium import webdriver
2 import time
3 
4 driver = webdriver.Chrome()
5 driver.get('https://www.baidu.com')
6 time.sleep(1)

(筆者已用實際代碼,驗證可用,以上是樣例。)

 

4、禁止Chrome瀏覽器自動升級(通過禁用更新服務)

Win10操作系統,此電腦-管理-服務和應用程序-服務:

 

 

在右側服務中,找到“Google更新服務(Gupdate)"與“Google更新服務(Gupdatem)”

 

 

禁用這兩項服務:

 

 

 

 

重啟電腦后,Chrome瀏覽器將不再自動升級。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM