【问题标题】:Is it possible to use Google Chrome instead of chromedriver with selenium?是否可以使用谷歌浏览器而不是带有硒的 chromedriver?
【发布时间】:2018-04-16 17:56:52
【问题描述】:
有没有办法在 selenium 中使用标准 chrome 实例而不是 chromedrive.exe?
为 selenium 设计的 chrome 驱动程序在初始化时不会保存 cookie 或浏览器状态。
例如,已安装的 chrome 实例能够绕过 2 因素身份验证,因为它可以记住它是远程系统中的已知设备。另一方面,selenium chrome 驱动程序无法绕过 2 因素身份验证,因为它无法记住其已知设备。
我想使用已安装的谷歌浏览器而不是带有 selenium 网络驱动程序的 chromedriver.exe。这个可以吗?
【问题讨论】:
标签:
google-chrome
selenium
automation
webdriver
two-factor-authentication
【解决方案1】:
您必须在ChromeOptions 中添加感兴趣的配置文件路径。
- 打开您的 Chrome 浏览器并转到
chrome://version/ 页面。
- 并获取配置文件路径。
例如,对我来说:
所以,在 Java 中:
String chromeDriver = "/pathTo/chromedriver";
System.setProperty("webdriver.chrome.driver", chromeDriver);
ChromeOptions options = new ChromeOptions();
String dir= "/Volumes/Macintosh HD/Users/DurdenP/Library/Application Support/Google/Chrome/";
options.addArguments("user-data-dir="+dir);
ChromeDriver driver = new ChromeDriver(options);