如何使用Selenium + Phantomjs处理确认

时间:2017-09-18 08:18:09

标签: c# phantomjs

PhantomJSDriverService driverservice = PhantomJSDriverService.CreateDefaultService();
driverservice .LoadImages = false;
driverservice .HideCommandPromptWindow = true;
driverservice .AddArgument(@"page.onAlert = function(msg) {};");
driverservice .AddArgument(@"page.onConfirm = function(msg){return true;};");

IWebDriver driver = new PhantomJSDriver(driverservice);

以上方法无法处理确认。

我该怎么办?

1 个答案:

答案 0 :(得分:0)

JavascriptExecutor为我工作。在点击调用警报的事件之前,请务必执行它。

((JavascriptExecutor) driver).executeScript("window.confirm = function(msg) { return true; }");

注意: - 点击调用警报确认框的事件后不要使用它。默认情况下,上面的代码将确认框设置为true表示您接受/单击该页面上所有确认框上的确定(如果被调用)