user3240928
user3240928

Reputation: 555

Hide/Silence ChromeDriver window

When I launch Selenium's WebDriver (Chromedriver). A console window (chromedriver.exe) runs and it opens Chrome. I need to know how I can hide those like a silent mode because I get messy when there are too many open. I am using C#.

Upvotes: 24

Views: 47328

Answers (4)

Gray Programmerz
Gray Programmerz

Reputation: 609

Another hack is to make proxy executable and open hidden process.

rename chromedriver.exe as driver.exe

Build executable as chromedriver.exe from below code. Must use Application Type as Windows Forms Application

'chromedriver.exe
Module Main
    Sub Main(Args As String())
        Dim Info As New ProcessStartInfo("driver.exe", String.Join(" ", Args))
        Info.WindowStyle = ProcessWindowStyle.Hidden
        Process.Start(Info).WaitForExit()
    End Sub
End Module

And use like

Dim Options As New ChromeOptions()
Options.BinaryLocation = "C:\Program Files\Slimjet\slimjet.exe"
Dim Driver = New ChromeDriver(Environment.CurrentDirectory, Options)
Driver.Navigate().GoToUrl("https://www.example.com") '

Note: It assumes both executables are in same directory.

Upvotes: 0

Ebubekir Bastama
Ebubekir Bastama

Reputation: 9

Hello chrome driver command hide coding

public IWebDriver drv;
public AnaSayfa()
{
    CheckForIllegalCrossThreadCalls = false;
    ChromeDriverService service = ChromeDriverService.CreateDefaultService();
    service.HideCommandPromptWindow = true;
    drv = new ChromeDriver(service);
    InitializeComponent();
}
void BekraHayrNesterGo()
{
    drv.Navigate().GoToUrl("https://www.example.com/");
}

This shape can hide cmd

Upvotes: 0

mscrivo
mscrivo

Reputation: 1127

As of Chrome 59, you can now also hide the chrome browser window by using headless mode:

options.AddArgument("headless");

and in combination with:

ChromeDriverService service = ChromeDriverService.CreateDefaultService();
service.HideCommandPromptWindow = true;

it runs in complete silence.

Upvotes: 47

Florent B.
Florent B.

Reputation: 42518

To my knowledge it's not possible to hide the browser. However, you can hide the console and set the browser offscreen:

ChromeDriverService service = ChromeDriverService.CreateDefaultService();
service.HideCommandPromptWindow = true;

var options = new ChromeOptions();
options.AddArgument("--window-position=-32000,-32000");

var driver = new ChromeDriver(service, options);
driver.Navigate().GoToUrl("https://www.google.co.uk");

Upvotes: 26

Related Questions