已更新ChromeDriver路径版本及Selenium jar包仍报驱动错误如何解决
问题根因
代码执行顺序错误:配置ChromeDriver路径的System.setProperty()代码必须放在实例化ChromeDriver对象之前。你当前的代码先执行了new ChromeDriver(),此时程序还未读取到驱动路径配置,因此触发驱动路径未设置的报错。
修正后的代码
package Demo1; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; public class Chrome { public static void main(String[] args) { // 先配置驱动路径,再实例化ChromeDriver System.setProperty("webdriver.chrome.driver","C:\\New folder\\chromedriver.exe"); WebDriver driver= new ChromeDriver(); driver.get("https://www.youtube.com/watch?v=BtmeQOcdIKI"); System.out.println(driver.getTitle()); } }
补充排查点
如果调整顺序后仍有报错,可以逐一检查以下项:
- 确认ChromeDriver的大版本和本地安装的Chrome浏览器大版本完全匹配,小版本号差异不影响,大版本必须一致
- 检查驱动路径的转义符是否正确,Windows路径的反斜杠需要写两个做转义,也可以改用正斜杠
C:/New folder/chromedriver.exe避免转义问题 - 确认
chromedriver.exe文件所在目录对应当前运行程序的系统用户有可读可执行权限 - 可以将
New folder重命名为无空格的名称(比如driver),避免路径空格导致的识别异常
内容的提问来源于stack exchange,提问作者sachin sanjay dalvi pavananaga
相关产品推荐
相关产品推荐

