selenium + grid + 各種瀏覽器踩坑記錄
阿新 • • 發佈:2018-11-26
Selenium:python,selenium 3.14.1
Seleniumstandalone:v3.14.0
作業系統 | 瀏覽器 | 瀏覽器版本 | webdriver名稱 | webdriver版本 |
---|---|---|---|---|
Windows10 | IE | 10 | IEDriverServer | 3.14.0 |
Windows10 | IE | 11 | IEDriverServer | 3.14.0 |
Windows10 | Edge | 17.17134 | MicrosoftWebDriver | 6.171340 |
Windows10 | Firefox | 62.0.3 | geckodriver | 0.19.1 |
Windows10 | Chrome | 69.0.3497.100 | chromedriver | 2.43 |
Mac | Safari | 12.0 | – | – |
以上是調通的結果,除此之外還需要做以下幾個配置:
- 有單獨的webdriver檔案的,需要把webdriver檔案路徑配置在環境變數PATH裡面
- IE10&IE11
- 官方的幾個點一點要做:https://github.com/SeleniumHQ/selenium/wiki/InternetExplorerDriver
- IE10&IE11所在的機器,需要將瀏覽器的縮放比例設定為100%;控制秒板-顯示設定-縮放與佈局裡面,也要設定為100%,否則會出現識別元素時錯位的情況
- safari
safari 10+瀏覽器內建了safari webdriver(詳見https://webkit.org/blog/6900/webdriver-support-in-safari-10),所以不需要另外下載和配置。 - selenium grid
我是用window10作為hub啟動,埠號是4444;另外有一臺windows7和一臺mac註冊了node,在通訊時發現不通,關了hub所在機器的防火牆可以調通。此外還有另外一種方法,允許4444埠透過防火牆,設定如下:
done
本來調通是個繁瑣而浪費時間的事情,中間反覆的IE調不通,直到果斷的換了python selenium的最新版本,一切都順利了。selenium雖然很流行很強大,但是因為瀏覽器在不斷的更新,selenium也不斷的不穩定,但好歹是有人一直在維護的,而且維護的很積極~~