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

无法使用Selenium网络驱动程序在浏览器中打开新选项卡

慕嘉茂
2023-03-14

我正在尝试使用下面的代码行在selenium中打开新选项卡

driver.findElement(By.cssSelector("body")).sendKeys(Keys.chord(Keys.CONTROL, "t"));

但是标签没有打开。谁能说出这个命令有什么问题?也可以解释一下此命令中使用的“driver.findElement(By.cssSelector(”body“))”?我尝试搜索但没有正确的答案

下面的完成不起作用。它在chrome中的同一选项卡中打开gmail和堆栈溢出,而不是打开新选项卡

package TestCode;

import java.util.concurrent.TimeUnit;

import org.openqa.selenium.By;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.Keys;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;

public class Chrome {

    public static void main(String[] args) throws InterruptedException {
        // TODO Auto-generated method stub

        System.setProperty("webdriver.chrome.driver","C:\\Akash\\Drivers\\chromedriver.exe");
        WebDriver driver = new ChromeDriver();
        driver.get("https://www.gmail.com");
        String selectLinkOpeninNewTab = Keys.chord(Keys.CONTROL+"t"); 
        driver.findElement(By.tagName("body")).sendKeys(selectLinkOpeninNewTab);
        driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
        driver.get("https://stackoverflow.com/");
        System.out.println("Site open");
    }

}

共有2个答案

彭胡媚
2023-03-14

使用< code>control代替< code>chord

driver.findElement(By.cssSelector("body")).sendKeys(Keys.CONTROL +"t");

对于铬,使用此

首先打开标签,然后点击URL

String selectLinkOpeninNewTab = Keys.chord(Keys.CONTROL+"t"); 
driver.findElement(By.tagName("body")).sendKeys(selectLinkOpeninNewTab);
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
driver.get("https://stackoverflow.com/");
System.out.println("Site open");
邓禄
2023-03-14

您可以使用javaScript在Chrome中打开新选项卡。

尝试下面的代码行

  JavascriptExecutor js = (JavascriptExecutor) driver; 
 js.executeScript("window.open('https://www.google.com','_blank');");

请参考此链接:- link

 类似资料:
  • 我试图启动firefox浏览器,并使用selenium webdriver打开一个网页示例< code>google.com。我成功地启动了浏览器,但启动网页时出现了一些问题。我得到的错误是 线程“main”中的异常 org . open QA . selenium . remote . unreachablebrowserexception:无法启动新会话。 可能的原因是远程服务器地址无效或浏览

  • 有人能帮我解决下面代码的问题吗?我的意图是能够在浏览器中打开一个新的标签。脚本通过,但没有真正打开新选项卡

  • 我无法使用selenium webdriver 3.4.0启动Firefox浏览器

  • 无法打开selenium webdriver中具有指定url的firefox浏览器。只有浏览器在没有url的情况下打开。 Firefox版本是47。Selenium版本是2.53。

  • 我在用蟒蛇2。7带有。现在在我的webautomation脚本中,我将打开链接或URL并进入主页。现在我需要点击一些锚定标签来浏览其他页面。我一直到现在。现在,当我要进入一个新页面时,我需要从浏览器中获取新的,因为我需要将其传递给,以便进行网页抓取。所以现在我关心的是如何以动态的方式获得这样的URL? 如果有,请咨询!

  • 我正在尝试切换选项卡并通过导航到url进行操作'http://toolsqa.com/'然后转到演示站点-- 使用的不同代码: 代码1: 代码2: 代码3: 以上是我用来切换标签的方法,但是还没有成功。请在这方面帮助我。