Selenium教程05:使用webdriver-manager自动下载浏览器驱动,再也不用担心driver版本的问题了

avatar
作者
猴君
阅读量:0

WebDriverManager是一个用于管理Web驱动程序的工具,主要用于自动化测试领域。在进行 Selenium 测试时,需要一个与浏览器相匹配的 Web 驱动程序,以便控制和操作浏览器。WebDriverManager可以自动下载和管理浏览器驱动程序,会自动检测本地系统中安装的浏览器,并下载对应的浏览器驱动程序(如ChromeDriver、FirefoxDriver等)。这避免了手动下载和配置驱动程序的繁琐过程,提高了自动化测试的效率和稳定性,以便在自动化测试中使用这些浏览器。

模块的安装命令

pip install webdriver_manager 

1.下载谷歌驱动到指定new_path目录中,并验证驱动是否可用,如果能够打开百度网页,说明驱动可用,安装成功。selenium 4.+版本以上的写法,这里主要演示selenium 4.+新版本+谷歌驱动的用法,旧版本或其他类型的浏览器,自己照着套一下相关代码。

# @Author : 小红牛 # 微信公众号:WdPython # selenium 4.+ import shutil from webdriver_manager.chrome import ChromeDriverManager  from selenium import webdriver from selenium.webdriver.chrome.service import Service as ChromeService  # 1.使用ChromeDriverManager安装ChromeDriver,并返回驱动程序的路径 driver_path = ChromeDriverManager().install() # 打印驱动程序路径 print(driver_path) # C:\Users\Ms-xiao\.wdm\drivers\chromedriver\win64\120.0.6099.109\chromedriver-win32/chromedriver.exe new_path = 'D:/Wdpython/driver/' # 2.把下载的驱动文件,复制到指定位置 shutil.copy(driver_path, new_path) # 3.验证一下安装好的驱动,是否可用 driver = webdriver.Chrome(service=ChromeService(new_path + 'chromedriver.exe')) # 打开百度网页 driver.get('https://www.baidu.com')  Selenium4.0以下版本使用方法 # Selenium4.0以下版本使用该方法 from selenium import webdriver from webdriver_manager.chrome import ChromeDriverManager  # 使用 ChromeDriverManager 安装 ChromeDriver,并返回驱动程序的路径 driver_path = ChromeDriverManager().install() # 打印驱动程序路径 print(driver_path)  # 创建 Chrome WebDriver,并指定驱动路径 driver = webdriver.Chrome(executable_path=driver_path) # 打开百度网页 driver.get("https://www.baidu.com") 

2.其他浏览器驱动的下载方法

from webdriver_manager.firefox import GeckoDriverManager from webdriver_manager.microsoft import IEDriverManager from webdriver_manager.microsoft import EdgeChromiumDriverManager from webdriver_manager.opera import OperaDriverManager # 1.火狐FireFox GeckoDriverManager().install() # 2.微软IE IEDriverManager().install() # 3.微软Edge EdgeChromiumDriverManager().install() # 4.欧朋opera OperaDriverManager().install() 

3.关于自动化测试是否带上路径说明。

在下面代码中webdriver.Chrome创建driver对象时,带了一个指定的驱动路径,这种写法也没有错。是否带,取决于chromedriver.exe的所在位置。

new_path = 'D:/Wdpython/driver/' driver = webdriver.Chrome(service=ChromeService(new_path + 'chromedriver.exe')) 

如果chromedriver.exe在某个文件中,或者哪个cdfe盘符中,就需要带个指定的路径。如果不带,驱动无法启动,就有报错提示。如果你不想带,可以这样处理,只需要把chromedriver.exe放在外面来,和项目文件夹同一目录,如下图所示。然后写代码就可以简写为以下了,它会默认检测到路径的。具体用那种方式看你个人的习惯喜好。

driver = webdriver.Chrome() 

在这里插入图片描述
完毕!!感谢您的收看

----------★★历史博文集合★★----------
我的零基础Python教程,Python入门篇 进阶篇 视频教程 Py安装py项目 Python模块 Python爬虫 Json Xpath 正则表达式 Selenium Etree CssGui程序开发 Tkinter Pyqt5 列表元组字典数据可视化 matplotlib 词云图 Pyecharts 海龟画图 Pandas Bug处理 电脑小知识office自动化办公 编程工具
在这里插入图片描述

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!