当前位置: 首页 > 知识库问答 >
问题:

本地连接问题selenium web驱动程序与chrome驱动程序

盖锐
2023-03-14
package Demo;

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

public class Demo {
    public static void main(String[] args) {
        String userProfile = "C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe";
        ChromeOptions options = new ChromeOptions();
        options.addArguments("user-data-dir=" + userProfile);
        options.addArguments("--start-maximized");

        System.setProperty("webdriver.chrome.driver", "C:\\Users\\Abhishek.Dalakoti\\workspace\\HomeShopDemo\\Chromedriver.exe");

        WebDriver driver = new ChromeDriver(options);
        driver.get("http://www.google.com");
        //driver.findElement(By.xpath("//*input[@type='text']")).sendKeys("dell");
    }
}

这是我在运行上述程序时遇到的错误。有人解决了这个问题吗?

我尝试过改变Selenium和ChromeDriver的版本,但没有任何效果。

Exception in thread "main" org.openqa.selenium.WebDriverException: unknown error: cannot create default profile directory

(Driver info: chromedriver=2.19.346078 (6f1f0cde889532d48ce8242342d0b84f94b114a1),platform=Windows NT 6.1 SP1 x86_64) 

(WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 750 milliseconds

Build info: version: '2.52.0', revision: '4c2593c', time: '2016-02-11 19:03:33'
System info: host: 'HSNMM-AbhishekD', ip: '10.50.33.160', os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.8.0_73'
Driver info: org.openqa.selenium.chrome.ChromeDriver
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    at java.lang.reflect.Constructor.newInstance(Unknown Source)
    at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:206)
    at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:158)
    at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:678)
    at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:249)
    at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:131)
    at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:144)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:170)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:159)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:148)
    at Demo.Demo.main(Demo.java:16)

共有1个答案

公沈浪
2023-03-14

如果你看一下ChromeDriver的源代码,这是非常简单的。

如果传递了user data dir参数,应用程序将把该参数作为概要文件目录,并期望能够在其中创建名为Default的目录。如果它无法创建它(以及所有必需的父级)或出现错误,您将得到:

无法创建默认配置文件目录

因此,解决方案是确保传递给user data dir的内容存在,是一个目录,是可写的,并且(大概)不包含默认的目录。

 类似资料:
  • 对于ex,当我的chrome放在Compand提示符中时,会给出路径-/applications/google\chrome.app system.setproperty(“webdriver.chrome.driver”,“/applications/google/chrome.app”);WebDriver driver=new ChromeDriver(); driver.get(“http

  • 我在向Pentaho数据集成添加MSSQL SERVER连接时遇到问题。 我尝试了以下方法: 我已经下载了最新的jdbc驱动程序(sqljdbc42)并将它们移动到lib文件夹 我在SQL SERVER中创建了一个新用户,并授予了它所有权限...没有帮助。 非常确定用户名/密码和登录设置 多次重新安装Pentaho,重新安装JDBC驱动程序 我有一台Mac,但在平行上使用Windows,我在这个环

  • 问题内容: 我知道已经有类似的问题,但是那里的答案并没有帮助我。因此,请介意查看我的特定问题吗? 我对Hibernate的使用还不是很熟练,并且在尝试使用Hibernate 4.3和PostgreSQL为本地数据库创建测试数据时遇到了一个问题。 我有另一个项目,我以完全相同的方式进行操作,并且在那里工作,因此我进行了完全相同的设置,但使用了另一个数据库,但是现在在我的当前项目中,我得到以下异常:

  • 问题内容: 我正在尝试运行一个ruby文件,该文件将使用seleniumwebdriver启动chrome驱动程序。我有selenium独立服务器2.35.0。和chromedriver可执行文件已安装。我正在通过运行服务器来启动 两个会话正在启动,chrome驱动程序无法启动。 这是在我使用以下文件运行文件之后 我对此并不陌生,无法找出问题所在。而且,我也试图让它无头运行,所以我正在运行Xvfb

  • 我试图运行一个ruby文件,这将启动chrome驱动程序使用selenium WebDriver。我有selenium独立服务器2.35.0。和chromedriver可执行文件安装。我通过运行来启动服务器, 这是在我使用 我对此很陌生,不知道哪里出了问题。我也试图无头运行它,所以我有Xvfb运行。有人能帮我指出我犯的错误并启动chromedriver吗? 更新: 谁能帮我弄清楚出了什么问题吗?

  • 我在express中使用mongodb本机驱动程序。js应用程序。数据库中大约有6个集合,因此我创建了6个js文件,每个文件都有一个集合作为javascript对象(例如),原型函数处理这些集合上的所有操作。我觉得这是一个很好的建筑。 但我遇到的问题是如何连接到数据库?我应该在每个文件中创建一个连接并使用它们吗?我认为这太过分了,因为mongodb本机驱动程序中的connect会创建一个连接池,而