Vik*_*jha 9 c# selenium phantomjs selenium-webdriver
我想在C#中使用PhantomJS和Selenium Webdriver.以下是我的代码:
IWebDriver driver = new PhantomJSDriver();
driver.Navigate().GoToUrl("http://www.google.com");
Console.WriteLine(driver.Url);
driver.Quit();
Run Code Online (Sandbox Code Playgroud)
代码工作正常但无论何时运行,它都会打开一个cmd窗口,其中显示了phantomjs的所有日志.cmd也关闭了driver.Quit().
问题是我不希望显示cmd窗口.我该怎么做才能做到这一点?
更新:当我在Python中执行相同的代码时,cmd窗口不会显示.但是如果我使用py2exe将python脚本转换为exe,则cmd窗口将再次显示.
Mar*_*nek 34
正如JimEvans上面提到的,这个功能在2.40中添加:
https://code.google.com/p/selenium/source/detail?r=bd0e4ef7504cd6a7f184b19b2aa95b56f8958ab5
我不确定如何正确使用PhantomJSDriverService,但以下工作:
var driverService = PhantomJSDriverService.CreateDefaultService();
driverService.HideCommandPromptWindow = true;
var driver = new PhantomJSDriver(driverService);
Run Code Online (Sandbox Code Playgroud)
不,如果不修改绑定源代码,就无法隐藏 .NET 绑定中 PhantomJS.exe 的控制台窗口。这被视为绑定的一个功能,因为它可以很容易地看到您的代码何时没有正确清理 PhantomJSDriver 的资源,因为控制台窗口保持打开状态。对于某些其他语言,如果您的代码未通过调用 WebDriver 对象上的 quit() 方法来正确清理 PhantomJSDriver 实例,则最终可能会在您的计算机上运行僵尸 PhantomJS.exe 进程。
| 归档时间: |
|
| 查看次数: |
9955 次 |
| 最近记录: |