当前位置: 首页 > 面试题库 >

使用webdriver关闭除第一个标签/主标签之外的所有打开的标签

郑高驰
2023-03-14
问题内容

谁能告诉我如何使用webdriver关闭除第一个标签/主标签之外的所有打开的标签?

我在下面尝试过,但是它同时关闭了所有标签,包括第一个标签。

public static void closeTabs() {
    String wh1=driver.getWindowHandle();
    String cwh=null;
    while(wh1!=cwh)
    {   
    new Actions(driver).sendKeys(Keys.CONTROL).sendKeys(Keys.NUMPAD1).perform();
    driver.findElement(By.tagName("body")).sendKeys(Keys.CONTROL, Keys.TAB);
    cwh=driver.getWindowHandle();
    driver.findElement(By.tagName("body")).sendKeys(Keys.CONTROL+"w");
    }
}

请帮我。


问题答案:

获取所有窗口句柄,然后遍历它们,将webdriver切换到新的句柄,然后调用close方法。显然跳过原始手柄,然后切换回其余手柄。

就像是;

    String originalHandle = driver.getWindowHandle();

    //Do something to open new tabs

    for(String handle : driver.getWindowHandles()) {
        if (!handle.equals(originalHandle)) {
            driver.switchTo().window(handle);
            driver.close();
        }
    }

    driver.switchTo().window(originalHandle);


 类似资料:
  • 在页面中收集各种链接后,我点击这些链接并将其收集成汤。现在的问题是,链接在新标签中打开。我想在代码打开新标签中的下一个链接之前关闭标签。下面是代码片段。收完汤后,请帮我把每个标签关上。 我用python 3.7硒铬驱动

  • 问题内容: 我需要匹配所有这些开始标记: 但不是这些: 我想出了这个,想确保我做对了。我只是捕捉到a-z。 我相信它说: 找到一个小于,然后 查找(并捕获)az一次或多次,然后 找到零个或多个空格,然后 找到零次或多次贪婪的字符,除了/,然后 寻找大于 我有那个权利吗?更重要的是,您怎么看? 问题答案: 您无法使用正则表达式解析[X] HTML。因为正则表达式无法解析HTML。正则表达式不是可用于

  • 问题内容: 这可能是一个愚蠢的问题,但是作为PHP的新手,我想知道在HTML模板代码中频繁打开和关闭PHP标签是否存在任何与性能相关的问题,如果是,那么最佳实践是什么?使用PHP标签? 我的问题不是关闭标签的重要性/正确性,或者不是哪种类型的代码比另一种更具可读性,而是关于文档的解析/执行方式及其对性能的影响。 为了说明,请考虑以下两个极端: 混合使用PHP和HTML标签: 分离PHP和HTML标

  • 我在嵌套的代码周围看到一些奇怪的行为 鉴于: 在Chrome中,这会导致 也就是说,它关闭开始标记并打开结束标记。我(当然)听说过“自动关闭标签”;我从没听说过“自动打开标签”。 IE11采用了一种不同的(可以说是更错误的)方式: 因此,它不会自动关闭打开的标记,但它会自动打开关闭的标记,从而导致不平衡的DOM树。 无论如何,我很好奇解决这个问题的正确途径是什么;我应该打开Chrome和IE错误跟

  • 问题内容: 我需要匹配所有这些开始标签: 但不是这些: 我想出了这个,想确保我做对了。我只是捕捉到a-z。 我相信它说: 找到一个小于,然后 查找(并捕获)az一次或多次,然后 找到零个或多个空格,然后 找到零次或多次贪婪的字符,除了/,然后 寻找大于 *我有那个权利吗?更重要的是,您怎么看? 问题答案: 您无法使用正则表达式解析[X] HTML。因为正则表达式无法解析HTML。正则表达式不是可用

  • 问题内容: 我需要匹配所有这些开始标签: 但不是这些: 我想出了这个,想确保我做对了。我只是捕捉到。 我相信它说: 找到一个小于,然后 查找(并捕获)az一次或多次,然后 找到零个或多个空格,然后 找到零次或多次贪婪的字符,除了,然后 寻找大于 我有那个权利吗?更重要的是,您怎么看? 问题答案: 尽管只有正则表达式的任意 HTML是不可能的,但有时使用它们来解析有限的已知 HTML集合是适当的。