[尝试在wpf c#中编写自动化脚本,但无法启动chrome,也没有引发任何错误,在控制台项目中,我能够启动chrome,也能够编写脚本。
ChromeOptions options=new ChromeOptions();
options.AddAdditionalCapability("useAutomationExtention",false);
options.AddArgument("--DNS-prefetch-disable");
ChromeDriver _driver=new ChromeDriver(options); //Stucking here in wpf project but it is wrking fine in Console project
_driver.Navigate().GoToUrl("https://www.google.co.in")
任何人都可以帮助我解决这个问题。
我碰巧将Selenium用于其他目的,但是我猜想,启动chrome的一般想法应该是相同的。在我的情况下,这是它的工作方式(当然是异步操作,以释放UI):
public async Task StartBrowser()
{
await Task.Run(() =>
{
ChromeOptions op = InitializeOptions();
var chromeDriverService = ChromeDriverService.CreateDefaultService();
chromeDriverService.HideCommandPromptWindow = true;
driver = new ChromeDriver(chromeDriverService, op);
// Add optional driver handling procedures (like timeout management)
});
}
private ChromeOptions InitializeOptions()
{
ChromeOptions options = new ChromeOptions();
// Your set of options
return options;
}
public async Task CloseBrowser()
{
await Task.Run(()=> driver.Quit()) ;
}