我发现在无头Chrome中启用下载的唯一方法是使用以下代码:
var param = new Dictionary<string, object>();
param.Add("behavior", "allow");
param.Add("downloadPath", $"C:\\Users\\{Environment.UserName}\\Downloads\\");
driver.ExecuteChromeCommand("Page.setDownloadBehavior", param);
但是,在使用Selenium Grid时,必须将驱动程序初始化为RemoteWebDriver
:
driver = new RemoteWebDriver(new Uri(url), options);
RemoteWebDriver
没有ExecuteChromeCommand
方法,并且不能将其强制转换为ChromeDriver
((ChromeDriver)driver
引发异常)。
因此,在使用Selenium Grid时如何启用无头chrome浏览器下载?