zoukankan      html  css  js  c++  java
  • python selenium 对浏览器标签页进行关闭和切换

    1.关闭浏览器全部标签页

    driver.quit()

    2.关闭当前标签页(从标签页A打开新的标签页B,关闭标签页A)

    driver.close()

    3.关闭当前标签页(从标签页A打开新的标签页B,关闭标签页B)

    可利用浏览器自带的快捷方式对打开的标签进行关闭

    Firefox自身的快捷键分别为:

    Ctrl+t 新建tab

    Ctrl+w 关闭tab

     Ctrl+Tab /Ctrl+Page_Up      定位当前标签页的下一个标签页

     Ctrl+Shift+Tab/Ctrl+Page_Down   定位当前标签页的前一个标签页

     Ctrl+[数字键1-8] 定位所有标签页中最前的第[1-8]个

     Ctrl+数字键9      定位最后一个标签页

    注:如果是在一些Linux发行版系统中,比如Ubuntu,需要将Ctrl键换成Alt键

    from selenium import webdriver

    from selenium.webdriver.common.keys import Keys

    from selenium.webdriver.common.action_chains import ActionChains

    #新建标签页

    ActionChains(browser).key_down(Keys.CONTROL).send_keys("t").key_up(Keys.CONTROL).perform()

    # 关闭标签页

    ActionChains(browser).key_down(Keys.CONTROL).send_keys("w").key_up(Keys.CONTROL).perform()

    4.标签页切换

    from selenium import webdriver


    browser=webdriver.Firefox()

    browser.get('xxxxx')

    # 获取当前窗口句柄(窗口A)

    handle = browser.current_window_handle

    # 打开一个新的窗口

    browser.find_element_by_id('xx').click()

    # 获取当前所有窗口句柄(窗口A、B)

    handles = browser.window_handles

    # 对窗口进行遍历

    for newhandle in handles:

        # 筛选新打开的窗口B

        if newhandle!=handle:

    # 切换到新打开的窗口B

    browser.switch_to_window(newhandle)

    # 在新打开的窗口B中操作

    browser.find_element_by_id('xx').click()

    # 关闭当前窗口B

    browser.close()

    #切换回窗口A

    browser.switch_to_window(handles[0]) 




    知识无穷尽也。

  • 相关阅读:
    希望多年以后的自己不再如此迷茫
    【转载】撒旦(Satan 4.2)勒索病毒最新变种加解密分析
    java单例模式
    关于double/float 两种基本类型精度丢失的总结
    关于ecplise中一些很实用的技巧
    安装SQL Server和卸载SQL Server步骤
    我进入部门的第一周
    mysql数据库在Linux和windows下免安装实现以及框架开发碰到的问题
    jenkins发布docker到mesos
    u盘作为git仓库,完成不同地方的代码同步
  • 原文地址:https://www.cnblogs.com/mapu/p/8533817.html
Copyright © 2011-2022 走看看