所以我一直在尝试制作一个可以与网页交互输入数据的程序。理想情况下,我想使用 Chrome,所以我尝试设置 Selenium WebDriver 和 ChromeDriver。
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;
public class Chrome {
public static void main(String[] args) {
//Set chromedriver path
System.setProperty("webdriver.chrome.driver","C:/Users/Username/Desktop/Comp Sci work/chromedriver.exe");
WebDriver driver = new ChromeDriver();
// Open Google
driver.get("http://www.google.com");
// Maximize browser
driver.manage().window().maximize();
}
}
我似乎已经正确设置了外部 JAR,因为我可以毫无问题地导入它们。问题是由于某种原因无法创建 Chrome 进程。我认为这可能是因为已经打开了一个 Chrome 进程,但没有。当我终止进程时,我仍然遇到同样的错误。
然后我尝试设置重置 Chrome 的路径,因为默认路径可能与我的不同,但仍然没有运气。
public class Chrome {
public static void main(String[] args) {
//Set chromedriver path
System.setProperty("webdriver.chrome.driver","C:/Users/Username/Desktop/Comp Sci work/chromedriver.exe");
ChromeOptions options = new ChromeOptions();
options.setBinary("C:\\Users\\Username\\AppData\\Local\\Google\\Chrome\\Application\\chrome.exe");
WebDriver driver = new ChromeDriver();
// Open Google
driver.get("http://www.google.com");
// Maximize browser
driver.manage().window().maximize();
}
}
错误信息是:
Starting ChromeDriver 2.41.578737 (49da6702b16031c40d63e5618de03a32ff6c197e)
on port 43997
Only local connections are allowed.
Exception in thread "main" org.openqa.selenium.WebDriverException: unknown
error: Failed to create a Chrome process.
(Driver info: chromedriver=2.41.578737
(49da6702b16031c40d63e5618de03a32ff6c197e),platform=Windows NT 10.0.17134
x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 199 milliseconds
Build info: version: '3.14.0', revision: 'aacccce0', time: '2018-08-
02T20:05:20.749Z'
由于 chromedriver 似乎开始正常,问题只是在创建 chrome 进程,但我似乎无法找出原因。任何帮助将不胜感激(还有关于我的帖子格式的提示,因为这是我的第一篇文章)。谢谢
最佳答案
今天遇到这个问题,终于解决了,是因为chrome以管理员身份运行,所以java无法启动。
谷歌浏览器属性->兼容性->未以管理员身份运行
关于google-chrome - java - Selenium WebDriver 未能创建 chrome 进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51851142/