当前位置:网站首页>嘿!selenium自动下载driver版本,得知道一下
嘿!selenium自动下载driver版本,得知道一下
2022-08-03 05:26:00 【IT界的测试混子】
闲来无事研究下selenium。发现了个东西,必须奔走相告。
那就是:selenium可以自动下载driver版本,浏览器升级也不怕啦。
当然,在这之前也有人出过这种教程,自己写脚本去下载driver。
我们来看看官网怎么说
使用Drivers的方式
https://www.selenium.dev/documentation/webdriver/getting_started/install_drivers/
- Driver Management Software 看着眼生。这就是Driver最新的使用方式。直接用Driver Management 来管理,随着浏览器的升级而升级。
来coding一下吧
- 先安装库
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()
边栏推荐
猜你喜欢
随机推荐
采用Trench肖特基二极管,实现功率密度的显著提升
ZEMAX | 在设计抬头显示器(HUD)时需要使用哪些工具?
二分查找4 - 搜索旋转排序数组
申请公网ip后,配置光猫,路由器使用公网ip步骤
JSP的基本使用
二、Exception和Error有什么区别?
memblock
802.1AS 延迟测量理解
【C语言】斐波那契数列
ZBrush+Substance Designer2021制作高品质3D角色模型全流程!
classpath: comparison with classpath*
二层交换机,三层交换机,路由器内容总结记录
PCB设计经验之模拟电路和数字电路区别为何那么大
二分查找2 - x的平方根
MySql的Sql语句的练习(试试你能写出来几道呢)
学习C的第一天,尝试一下写博客
mib browser无法接收snmp trap消息解决
B.1#【编程语言】—1 arm 汇编指令
2021-04-23
Practice of MySql's Sql statement (try how many you can write)