找回密码
 立即注册
查看: 752|回复: 0

[其它] Selenium报错:NoSuchDriverException(msg) from err selenium.common.exceptions....

[复制链接]

224

主题

0

回帖

773

积分

高级会员

积分
773
发表于 2024-6-11 11:55:50 | 显示全部楼层 |阅读模式
本帖最后由 御坂主机 于 2024-6-11 12:29 编辑

1. 引言

在使用Selenium进行自动化测试时,遇到错误是不可避免的。一个常见的问题是找不到浏览器驱动异常,即NoSuchDriverException。这种错误通常会阻止测试脚本的正常执行。本文将深入探讨NoSuchDriverException的原因,并提供有效的解决方法,帮助开发者顺利完成测试工作。

1.1 什么是NoSuchDriverException

NoSuchDriverException是一种在Selenium测试过程中常见的异常,通常发生在Selenium无法找到或加载所需的浏览器驱动程序时。这个错误会导致测试脚本无法启动浏览器,从而无法继续执行后续的测试步骤。

2. NoSuchDriverException的常见原因

出现NoSuchDriverException的原因主要有以下几个方面:

(1) 浏览器驱动程序未安装或路径配置错误。

(2) 浏览器版本与驱动程序版本不兼容。

(3) 驱动程序文件损坏或不可执行。

(4) 环境变量配置错误。

3. 解决方法

针对NoSuchDriverException,我们可以采取以下几种解决方法来排除错误,确保测试脚本正常运行。

3.1 安装浏览器驱动程序

确保已经下载并安装了相应的浏览器驱动程序。浏览器驱动程序可以从各个浏览器的官方网站获取,例如ChromeDriver、GeckoDriver等。

下载ChromeDriver的链接:https://sites.google.com/a/chromium.org/chromedriver/downloads

下载GeckoDriver的链接:https://github.com/mozilla/geckodriver/releases

3.2 配置驱动程序路径

将浏览器驱动程序的路径添加到系统的环境变量中,或者在脚本中显式指定驱动程序的路径。

将ChromeDriver路径添加到系统环境变量的方法:
(1) 打开系统属性,选择“高级系统设置”。
(2) 点击“环境变量”。
(3) 在“系统变量”中找到Path变量,点击“编辑”。
(4) 将ChromeDriver的路径添加到Path变量中,保存并应用。

在脚本中显式指定驱动程序路径的方法:

  1. from selenium import webdriver

  2. driver = webdriver.Chrome(executable_path='/path/to/chromedriver')
复制代码


3.3 检查浏览器和驱动程序版本

确保浏览器和驱动程序的版本匹配。浏览器驱动程序通常需要与特定版本的浏览器兼容,不兼容的版本可能导致NoSuchDriverException。

可以通过以下命令检查Chrome版本:

  1. google-chrome --version
复制代码


可以通过以下命令检查ChromeDriver版本:

  1. chromedriver --version
复制代码


3.4 验证驱动程序文件完整性

确保下载的浏览器驱动程序文件没有损坏,并且具有执行权限。可以尝试重新下载驱动程序文件,并检查其权限设置。

linux和Mac系统上,可以通过以下命令赋予驱动程序执行权限:

  1. chmod +x /path/to/chromedriver
复制代码


3.5 使用webdriver_manager自动管理驱动程序

使用webdriver_manager库可以自动下载和管理浏览器驱动程序,避免手动配置驱动路径的麻烦。

安装webdriver_manager:

  1. pip install webdriver_manager
复制代码


在脚本中使用webdriver_manager:

  1. from selenium import webdriver
  2. from webdriver_manager.chrome import ChromeDriverManager

  3. driver = webdriver.Chrome(ChromeDriverManager().install())
复制代码


4. 结论

NoSuchDriverException是Selenium测试过程中常见的错误,通过正确安装和配置浏览器驱动程序,可以有效解决这个问题。本文介绍了几种解决方法,包括安装浏览器驱动程序、配置驱动程序路径、检查浏览器和驱动程序版本、验证驱动程序文件完整性以及使用webdriver_manager自动管理驱动程序。希望这些方法能帮助读者顺利解决NoSuchDriverException,为自动化测试提供可靠的支持。



------------------------------------------------------------------------------------------------------------------------------------------

========  御 坂 主 机  ========

>> VPS主机 服务器 前沿资讯 行业发布 技术杂谈 <<

>> 推广/合作/找我玩  TG号 : @Misaka_Offical <<

-------------------------------------------------------------------------------------------------------------------------------------------


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

联系站长|Archiver|手机版|小黑屋|主机论坛

GMT+8, 2025-4-4 13:55 , Processed in 0.065231 second(s), 24 queries .

Powered by 主机论坛 HostSsss.Com

HostSsss.Com

快速回复 返回顶部 返回列表