【问题标题】:"The driver is not executable" when I try to launch a chrome browser with Selenium [duplicate]当我尝试使用 Selenium 启动 chrome 浏览器时,“驱动程序不可执行”[重复]
【发布时间】:2019-09-21 23:17:54
【问题描述】:

我收到此错误。

线程“main”中的异常 java.lang.IllegalStateException:驱动程序 不可执行:/home/hashconnect/Desktop/Priya 错误表/selenium/chromedriver.exe

在该项目中创建一个新文件夹“Drivers”并将位置更改为“.\drivers\chromedriver.exe”

这是我的代码:

package demo;

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;

public class test {

    public static void main(String[] args) throws InterruptedException {
        // TODO Auto-generated method stub
        System.setProperty("webdriver.chrome.driver","/home/hashconnect/Desktop/Priya bugsheet/selenium/chromedriver.exe");
        WebDriver driver = new ChromeDriver();
        driver.manage().window().maximize();
        Thread.sleep(5000);
    }

}

预期:系统应该启动 chrome 浏览器

实际: 它显示错误消息:

线程“main”中的异常 java.lang.IllegalStateException:驱动程序 不可执行:/home/hashconnect/Desktop/Priya 错误表/selenium/chromedriver.exe

【问题讨论】:

    标签: selenium-webdriver selenium-chromedriver illegalstateexception


    【解决方案1】:

    转到任务管理器,通过结束任务关闭所有chrome浏览器实例,它应该可以工作了。

    【讨论】:

      【解决方案2】:

      一个原因可能是驱动程序可执行文件的路径中有一个空格。建议将驱动程序移动到不同的路径并更新代码中的路径并重试。

      尝试做一个 “ls -ltr /home/hashconnect/Desktop/Priya bugsheet/selenium/chromedriver.exe”

      或者,可能有多个 ChromeDriver 实例已经在运行,它们正在阻止生成更多实例。所以建议是从 Windows 上的 TaskManager 或在 Linux 上用 kill -9 杀死所有这些实例。

      【讨论】:

      • 你能告诉我如何杀死所有实例并且我使用的是“Ubuntu”而不是 Windows
      • 因此,如果您执行ps -ef | grep chromedriver,您应该会看到所有 chromedriver 实例都在运行。您可以获取正在运行的进程的 PID,然后使用 kill -9 ENTERYOURPID_FROM_PS_EF 终止该进程并重复
      • 您能否再次检查驱动程序是否存在并获得执行权限ls -ltr /home/hashconnect/Desktop/Priya bugsheet/selenium/chromedriver.exe
      【解决方案3】:

      问题是你给出的路径。

      尝试给出完整路径

      示例: C:/Users//Desktop/...../chromedriver.exe

      这将解决您的问题。

      干擦: java.lang.IllegalStateException:驱动程序可执行文件不存在:C:\main\resources\chromedriver.exe

      如果您提供无效路径(非相对路径),则会发生上述错误

      有效: C:\Users\SA\test\src\resources\chromedriver.exe

      驱动程序不可执行:如果chromedriver.exe没有执行权限,可能会出现此问题

      【讨论】:

      • 我正在使用 Ubuntu 。在那里我复制了我的路径并粘贴了没有 C 或 D 驱动器
      • 下载Linux版本并查看执行权限
      【解决方案4】:

      我不确定 selenium 在 Ubuntu 上是如何工作的。不过,您下载的设置似乎是针对 Windows 版本(.exe)的。它不适用于 Linux。

      请从以下链接下载适用于 Linux 的 chrome 驱动程序

      Download Chrome Driver for Linux

      参考: Reference link

      【讨论】:

      • 那个我也试过了不工作
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-11-16
      • 1970-01-01
      • 1970-01-01
      • 2018-04-02
      • 1970-01-01
      • 2016-10-24
      相关资源
      最近更新 更多