Selenium - Could not start a new session. Response code 500. Message: unknown error: cannot create temp dir for unpacking extensions

Selenium - Could not start a new session. Response code 500. Message: unknown error: cannot create temp dir for unpacking extensions

问题

我正在尝试从 Java 应用程序(更具体地说是 Talend 作业)中 运行 Selenium。作业 运行 在本地很好,但是,当它部署到 Windows Server 2019 时,我收到以下错误:

Could not start a new session. Response code 500. Message: unknown error: cannot create temp dir for unpacking extensions

这是我的 Selenium Java 代码:


Map<String, Object> prefs = new HashMap<String, Object>();
prefs.put("download.default_directory",  "C:\data\");
ChromeOptions options = new ChromeOptions();
options.setExperimentalOption("prefs", prefs);

options.addArguments("--no-sandbox");
options.addArguments("--headless");
options.addArguments("--disable-gpu");
options.addArguments("--disable-dev-shm-usage");
options.addArguments("--profile-directory=Default");
options.addArguments("--user-data-dir=C:\Temp");


WebDriver driver = new ChromeDriver(options);
JavascriptExecutor js = (JavascriptExecutor) driver;
Map<String, Object> vars = new HashMap<String, Object>();
 
   
driver.get("<URI>");
driver.findElement(By.id("<a valid element id for my case>")).click();
Thread.sleep(3000);
driver.close();
driver.quit();

我尝试过的事情

500 错误代码表示服务器有问题。鉴于您已经尝试重新启动并检查服务器的磁盘 space,问题可能与临时目录有关。

转到 windows CLI 并执行 echo %temp%:

一些用户正在 C:\TEMP 返回。如果发生这种情况(或任何其他文件夹名称),请创建新文件夹并确保您 运行 作为管理员

问题的根本原因实际上与 Java 代码是以 SYSTEM 用户而不是命名帐户执行的事实有关。 (具体来说,Talend Remote Engine 运行 作为 SYSTEM)。我将代码切换为 运行 作为已解决错误的命名帐户。