如何在Selenium中选择新的打开窗口?

时间:2015-11-28 13:13:56

标签: python selenium popup

我试图解决一个小问题。

有一个网页 - 此网页上有一个按钮。单击此按钮时,将打开一个新窗口。

我很好奇,如何告诉Selenium我想看到这个新窗口的页面来源?

1 个答案:

答案 0 :(得分:0)

您需要切换到其他窗口。由于webdriver只能处理您现有的窗口,因此您需要查看窗口处理。您可以在下面找到有关切换窗口的示例:

WebDriver driver = new FirefoxDriver();
        driver.get("https://hdfcbank.com");
        Thread.sleep(6000L);

        Actions mouse = new Actions(driver);
        WebElement address = driver.findElement(By.xpath("html/body/div[1]/div[2]/div[2]/div[2]/ul/li[7]/div[1]/span"));
        mouse.moveToElement(address).build().perform();
        Thread.sleep(2000L);
        String parenthandle = driver.getWindowHandle(); // current window handle
        driver.findElement(By.cssSelector("a[href*='goldloan']")).click();
        Thread.sleep(5000L);
        for (String windowhandle : driver.getWindowHandles()) {

            driver.switchTo().window(windowhandle); // switches to next window
        }
        driver.findElement(By.xpath(".//*[@id='txtFName']")).sendKeys("testing");
        driver.close();
        driver.switchTo().window(parenthandle);