闲来无事研究下selenium。发现了个东西,必须奔走相告。
那就是:selenium可以自动下载driver版本,浏览器升级也不怕啦。
当然,在这之前也有人出过这种教程,自己写脚本去下载driver。
我们来看看官网怎么说
https://www.selenium.dev/documentation/webdriver/getting_started/install_drivers/

pip install webdriver-manager
pip install selenium
import time
from selenium import webdriver
from selenium.webdriver.edge.service import Service
from webdriver_manager.microsoft import IEDriverManager
service = Service(executable_path=IEDriverManager().install())
driver = webdriver.Ie(service=service)
driver.get("https://www.baidu.com")
driver.maximize_window()
time.sleep(5)
driver.quit()
自动下载driver啦~~ 真棒。大家可以试下把浏览器升级再跑一遍。

另外webdriver-manager 支持selenium3.0、selenium4.0
具体可以看github上的说明
https://github.com/SergeyPirogov/webdriver_manager
import pytest
from selenium import webdriver
from selenium.webdriver.chrome.service import Service as ChromeService
from selenium.webdriver.edge.service import Service as EdgeService
from selenium.webdriver.firefox.service import Service as FirefoxService
from selenium.webdriver.ie.service import Service as IEService
from webdriver_manager.chrome import ChromeDriverManager
from webdriver_manager.firefox import GeckoDriverManager
from webdriver_manager.microsoft import EdgeChromiumDriverManager
from webdriver_manager.microsoft import IEDriverManager
def test_driver_manager_chrome():
service = ChromeService(executable_path=ChromeDriverManager().install())
driver = webdriver.Chrome(service=service)
driver.quit()
def test_edge_session():
service = EdgeService(executable_path=EdgeChromiumDriverManager().install())
driver = webdriver.Edge(service=service)
driver.quit()
def test_firefox_session():
service = FirefoxService(executable_path=GeckoDriverManager().install())
driver = webdriver.Firefox(service=service)
driver.quit()
@pytest.mark.skip(reason="only runs on Windows")
def test_ie_session():
service = IEService(executable_path=IEDriverManager().install())
driver = webdriver.Ie(service=service)
driver.quit()