Selenium 靈異事件 window_handles 異常

Selenium 靈異事件 window_handles 異常

今天再寫爬蟲時,遇到一個很奇杷的問題

開發環境

本機
Windows 7 64bit
Chromedriver : 2.40
Chrome: v67

虛擬機
Windows 7 32bit
Chromedriver : 2.40
Chrome: v67

在本機開發都是正常的,但是程式經過pyinstaller 打包後放入虛擬機中執行還是異常,百思不的其解的狀況下,直接在虛擬機中安裝pycharm進行測試,發現window_handles獲取tab的數量和瀏覽器實際的數量不同

如下圖所示,明明瀏覽器有兩個tab

可是window_handles卻只有一個

問題拆解:

是否是chrome 版本或者chromedriver 版本異常

測試2.37~2.40 chromedriver
更換chrome 版本到v68 dev 版本
更換selenium package到舊版
以上三種解法都一樣

最後思考本機和虛擬機中環境實際差異

虛擬機中的環境應該是比較舊版的windows 7
所以做windows update後還是失敗

最後使用
All in One Runtimes全自動安裝套件,除了Flash silverlight 沒打勾其餘全勾選,安裝完就正常拉!