2

Ich verwende Selenium 3.4, um Edge mit dem Microsoft WebDriver zu starten, der jetzt von Microsoft gewartet wird.Open Edge im InPrivate-Modus mit Selenium

Gibt es eine Möglichkeit, den Browser im InPrivate-Modus mit Selenium zu starten?

Ich habe nach Antworten gesucht, konnte aber keine finden.

Der nächstgelegene ich bekam, war How to start Edge browser in Incognito mode using selenium remote webdriver?

Die Lösung erwähnt funktioniert nicht. Es zeigt nur die gleiche Registerkarte wie in InPrivate, aber das Fenster ist kein privates Fenster. Daher wird die Information gespeichert und die Sitzung ist nicht privat.

+0

Wenn meine Antwort hilft, Ihr Problem zu lösen. Bitte akzeptieren Sie die Antwort, indem Sie auf das richtige Zeichen ganz links von meiner Antwort, direkt unterhalb von oben und unten Stimmen. bitte stimme auch ab .. Es wird mir und anderen Leuten wirklich helfen, die diese Frage in Zukunft weiterleiten werden. So funktioniert stackoverflow :) ... siehe: - https://meta.stackexchange.com/questions/5234/ Wie-akzeptiere-eine-Antwort-Arbeit –

Antwort

0

Verwenden Sie den folgenden Code:

System.setProperty("webdriver.edge.driver","D:\\Workspace\\StackOverlow\\src\\lib\\MicrosoftWebDriver.exe"); //put actual location 
    WebDriver driver = new EdgeDriver(); 

    driver.navigate().to("https://www.google.com"); 
    driver.manage().window().maximize(); 

    Robot robot; 
    try { 
     robot = new Robot(); 
     robot.keyPress(KeyEvent.VK_CONTROL); 
     robot.keyPress(KeyEvent.VK_SHIFT); 
     robot.keyPress(KeyEvent.VK_P); 
     robot.keyRelease(KeyEvent.VK_CONTROL); 
     robot.keyRelease(KeyEvent.VK_SHIFT); 
     robot.keyRelease(KeyEvent.VK_P); 
     Thread.sleep(3000); 
    } catch (AWTException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } catch (InterruptedException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 

    String parentWindowHandler = driver.getWindowHandle(); 
    String subWindowHandler = null; 

    Set<String> handles = driver.getWindowHandles(); 
    Iterator<String> iterator = handles.iterator(); 
    while (iterator.hasNext()){ 
     subWindowHandler = iterator.next(); 
     driver.switchTo().window(subWindowHandler); 

     System.out.println(subWindowHandler); 
    } 

    driver.get("https://stackoverflow.com/"); 
    //driver.switchTo().window(parentWindowHandler); // Uncomment this line if you want to use normal browser back 
} 

Bitte beachte, dass wir Roboter Klasse verwenden und so, wenn die Systemsperren kann es nicht funktionieren.