当前位置: 首页 > 知识库问答 >
问题:

如何使用selenium(java)在IE中打开新选项卡并在该选项卡中打开url(不是窗口)

章光华
2023-03-14

我如何使用selenium(java)在IE中打开一个新的标签,并在该标签中打开一个url(而不是窗口)?我正在使用下面的代码打开一个新的标签?

driver.get("https://google.com/");

//below line of code opens a new tab but does sets control on new tab.
driver.findElement(By.cssSelector("Body")).sendKeys(Keys.CONTROL + "t");//opens new tab

// As control does not sets on new tab, the below link opens on first tab only..
driver.get("https://facebook.com/");//but load facebook in first tab i.e on google page  
WebDriver driver = new InternetExplorerDriver(ieCapabilities);

driver.manage().window().maximize();

  driver.get("https://google.com/");

  driver.findElement(By.cssSelector("Body")).sendKeys(Keys.CONTROL + "t");//opens new tab

 //Store the current window handle

  String winHandleBefore = driver.getWindowHandle();

  //Perform the click operation that opens new window //Switch to new window open 

   for(String winHandle : driver.getWindowHandles()){

   driver.switchTo().window(winHandle);

    driver.get("https://facebook.com/");

    }

    // Perform the actions on new window

    //Close the new window, if that window no more required

   driver.close();

   //Switch back to original browser (first window)

     driver.switchTo().window(winHandleBefore);

     //continue with original browser (first window)

共有1个答案

吕英才
2023-03-14

您需要使用

driver.switchTo().window(String)

切换到已经出现的窗口,就像打开新窗口一样。

 类似资料:
  • 我试图在IE11中通过点击一个链接打开一个新的标签,但它会在点击一个链接时打开一个新的窗口。我在谷歌上寻找合适的方法,但不知道如何实现这一点。有人能帮忙吗? 当手动单击时,link会在一个选项卡中打开,但当通过selenium单击时,它会打开一个新窗口。 我没有添加任何代码,因为没有太多要添加的。我使用webelement.click()单击了link元素,并且在驱动程序功能中禁用了persist

  • 我有一个每行都有一个URL的文本文档。我希望每个URL都在一个新选项卡中打开。这是我到目前为止所拥有的: 这给了我一个错误: 回溯(最近一次调用last):驱动程序中第100行的文件“scraper.py”。execute\u script(“window.open(url,'new\u window')”)文件“C:\Python37\lib\site packages\selenium\web

  • 因此,我有一个,我想冲浪到新选项卡中,链接是不可点击的,所以当我点击这个链接时,什么也不会发生,这将不起作用(甚至不手动): 这是我的web URL:

  • 问题内容: 我有来自第三方开发人员的JavaScript文件。它具有一个具有链接的链接,该链接将当前页面替换为目标页面。我想在新标签页中打开此页面。 这是我到目前为止所拥有的: 谁能帮我吗? 问题答案:

  • 如何使用Java中的Selenium WebDriver(又名Selenium 2)在现有的Firefox浏览器中打开新的选项卡?

  • 问题内容: 我有一个选择框,当选择一个项目时会调用。Firefox默认会在新标签页中打开页面。但是,我希望页面在新窗口中打开,而不是在新标签页中打开。 我该怎么做? 问题答案: 给窗口一个“ specs”参数,该参数的宽度/高度为 有关所有可能的选项。 指定宽度/高度时,它将在新窗口(而不是选项卡)中打开它。