Selenium Webdriver PhantomJS C# - öffnet sich immer ein cmd-Fenster
Ich versuche, mit PhantomJS mit Selenium Webdriver in C#. Folgendes ist mein code:
IWebDriver driver = new PhantomJSDriver();
driver.Navigate().GoToUrl("http://www.google.com");
Console.WriteLine(driver.Url);
driver.Quit();
Der code funktioniert gut, aber wenn es läuft, es öffnet sich ein cmd Fenster, wo alle das Protokoll der phantomjs angezeigt wird. Die cmd ist auch geschlossen mit driver.Quit()
.
Das problem ist, dass ich nicht will, das cmd-Fenster angezeigt werden. Was sollte ich tun, um dies zu erreichen?
Update:
Wenn ich den gleichen code in Python, das cmd-Fenster nicht angezeigt. Aber wenn ich konvertieren Sie die python-Skripts zu exe mit py2exe, das cmd-Fenster startet immer wieder angezeigt.
- Ich glaube nicht, können Sie deaktivieren Sie den Befehl Fenster, sorry.
- Dank Brian und @user1177636. Eigentlich sind wir erstellen eine desktop-software, die die Interaktion mit vielen Webseiten in den hintergrund und wir wollen es so Aussehen so Professionell wie wir können. Das ist, warum wir wollen, dass der Befehl von windows nicht angezeigt.
- Bitte aktualisieren Sie Ihre Antwort akzeptiert.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nein, es gibt keine Möglichkeit zum ausblenden der Konsole-Fenster des PhantomJS.exe in der .NET-bindings ohne änderung der Bindungen source-code. Dies wird als eine Funktion der Bindungen, wie es macht es sehr einfach, um zu sehen, wenn der code noch nicht korrekt bereinigt die Ressourcen der PhantomJSDriver, da die Konsole-Fenster bleibt offen. Im Fall von anderen Sprachen, wenn Ihr code nicht richtig sauber, die Instanz von PhantomJSDriver durch den Aufruf der quit () - Methode auf die WebDriver-Objekt, können Sie am Ende mit einem zombie PhantomJS.exe Prozess auf Ihrem Computer.
Als JimEvans oben erwähnt, dieses feature wurde Hinzugefügt, in 2.40:
https://code.google.com/p/selenium/source/detail?r=bd0e4ef7504cd6a7f184b19b2aa95b56f8958ab5
Ich bin mir nicht ganz sicher wie Sie richtig zu nutzen
PhantomJSDriverService
, aber die folgenden Werke: