關於selenium使用driver.minimize_window()失敗問題


  最近小爬在用chromedriver.exe結合python selenium這條技術棧做web自動化時發現,driver.maximize_window()可以正常使用,但是driver.minimize_window()卻遭遇意外失敗:

“selenium.common.exceptions.WebDriverException: Message: unknown command: session/a527d94bd8530869d34228faaf51f7c8/window/minimize”

結合該方法的源碼:

    def minimize_window(self):
        """
        Invokes the window manager-specific 'minimize' operation
        """
        self.execute(Command.MINIMIZE_WINDOW)

    def maximize_window(self):
        """
        Maximizes the current window that webdriver is using
        """
        params = None
        command = Command.W3C_MAXIMIZE_WINDOW
        if not self.w3c:
            command = Command.MAXIMIZE_WINDOW
            params = {'windowHandle': 'current'}
        self.execute(command, params)

可以發現這兩方法用的思路不太一樣,后來上stackOverFlow上考證一番,才知道是chromedriver版本與chrome瀏覽器不兼容所致。因為之前chromedriver一直可以用,所以就沒有隨着chrome瀏覽器來頻繁升級chromedriver。

下載了瀏覽器配套版本的chromedriver后,問題瞬間解決。下面附上國內淘寶的chromedriver鏡像源地址:

http://npm.taobao.org/mirrors/chromedriver/

 

 

  可以看出來,chromedriver實際上更新還是比較頻繁的。但是總體上,只要我們的腳本沒有運行出錯,我們可以暫且不管它的升級,問題不大!


免責聲明!

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



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