selenium(webdriver)绑定浏览器-通过标题判断-切换标签页(切换句柄)

 打开新页面代码

js = "window.open('{}','_blank');" #打开新标签页,打开百度
driver.execute_script(js.format('https://www.baidu.com'))

如果运行上面的代码没反应 请检查浏览器右上角 是否存在此提示

点击 始终允许 显示弹出式窗口即可

 

切换标签页-可复制代码片段如下 

# js = "window.open('{}','_blank');" #打开新标签页,打开百度
# driver.execute_script(js.format('https://www.baidu.com'))

# for i in driver.window_handles: # 遍历所有句柄
#     driver.switch_to.window(i) # 切换到每一个页面
#     print(driver.title) # 如果不知道它们的标题是啥 就可以先输出一下 就知道了

for i in driver.window_handles: # 遍历所有句柄
    driver.switch_to.window(i) # 切换到每一个页面
    if "百度" in driver.title: # 判断标题是否存在
        print(driver.title)
        break # 结束遍历

通过标题判断切换标签页-程序完整代码如下

from selenium import webdriver

def binding_chrome():
    # 目前测试 绑定的不能添加多个 option 但打开浏览器确实可以的
    # C:\Users\Administrator\AppData\Local\Google\Chrome\User Data
    # 绑定已打开的浏览器--cmd输入:  chrome.exe --remote-debugging-port=2000 --user-data-dir="E:\User Data2"
    option = webdriver.ChromeOptions()
    # 绑定端口,绑定浏览器
    option.add_experimental_option('debuggerAddress','127.0.0.1:2000')
    brower = webdriver.Chrome(chrome_options=option)
    return brower

driver = binding_chrome()

# js = "window.open('{}','_blank');" #打开新标签页,打开百度
# driver.execute_script(js.format('https://www.baidu.com'))

# for i in driver.window_handles: # 遍历所有句柄
#     driver.switch_to.window(i) # 切换到每一个页面
#     print(driver.title) # 如果不知道它们的标题是啥 就可以先输出一下 就知道了

for i in driver.window_handles: # 遍历所有句柄
    driver.switch_to.window(i) # 切换到每一个页面
    if "百度" in driver.title: # 判断标题是否存在
        print(driver.title)
        break # 结束遍历

通过标题判断切换标签页-完整图片代码如下

猜你喜欢

转载自blog.csdn.net/STR_Liang/article/details/130925599
今日推荐