selenium多个窗口切换

造成新打开一个窗口,但是selenium不会自动跳转到新的串口,需要自己切换:

# 你打开的浏览器,谷歌
browser = webdriver.Chrome()
# 你中间的操作
...
# 获取当前浏览器所有的窗口
handles = browser.window_handles
# handles为一个数组:handles = [窗口1,窗口2,...]
# 窗口切换,切换为新打开的窗口
browser.switch_to.window(handles[-1])
# 切换回最初打开的窗口
browser.switch_to.window(handles[0])
# 新增一个窗口打开url
newwindow=‘window.open("https://www.baidu.com");‘
browser.execute_script(newwindow)
# 关闭当前窗口
browser.close()
# 关闭所有窗口
browser.quit()

原文地址:https://www.cnblogs.com/peng-lan/p/9670228.html

时间: 2024-10-08 09:33:03

selenium多个窗口切换的相关文章

selenium入门14 窗口切换

窗口切换: 当前窗口句柄 current_window_handle 所有的窗口句柄 window_handles 切换窗口 switch_to_window() #coding=utf-8 #切换窗口 from selenium import webdriver import time dr = webdriver.Firefox() dr.get("http://www.baidu.com") dr.find_element_by_link_text("登录")

selenium测试(Java)--多窗口切换(十三)

如果遇到点击按钮或链接后出现新窗口的情况,就需要使用窗口切换的方法. 本例中就是先打开百度搜索界面,然后利用js打开一个百度新闻界面,然后通过selenium提供的窗口切换方法切换窗口 1 package com.test.windows; 2 3 import java.util.Iterator; 4 import java.util.Set; 5 6 import org.openqa.selenium.By; 7 import org.openqa.selenium.Javascript

selenium webdriver窗口切换

selenium webdriver窗口切换,有时候在做自动化的时候需要打开很多很多的页面, 当在操作不同的页面的时候需要切换窗口,下面是如何切换到前后页面窗口的操作: package test20161206; import org.openqa.selenium.By; import org.openqa.selenium.Keys; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; im

selenium 窗口切换(多表单切换)

在web应用中,前台网页的设计一般会用到iframe/frame表单嵌套页面的应用.简单的就是一个页面签嵌套多个HEML/JSP文件.selenium webdriver  只能在同一页面识别定位元素,可以狭隘的理解成只能识别当前所在位置的页面上的元素.对于不同的iframe/frame表单中的元素是无法直接定位的.需要结合switchTo().frame()方法切换到指定的frame/iframe中.switchTo().frame()默认的是取表单的ID和name属性.如果没有id和name

Selenium弹出新页面无法定位元素问题(Unable to locate element)--多窗口切换

最近学习到多窗口切换,在页面操作过程中有时点击某个链接会弹出新的窗口,这时需要先切换到新窗口才能对其进行操作.Webdriver提供了switch_to.window( ) 方法实现在不同窗口中切换. 查阅相关资料,得到两种方法来定位到当前页面: 方法一: browser.switch_to_window(browser.window_handles[1]) 方法二:直接定位当前最新弹出的窗口 for handle in browser.window_handles:#方法二,始终获得当前最后的

Selenium多窗口切换方法快速入门

问题描述:执行脚本时遇到最多的一个问题就是Unable to find element in selenium...,除了排除页面加载时间原因外,对于初学者常犯的一个错误是,点击某个按钮跳转到新页面的问题.若在当前页面打开,给予足够的加载时间即可.但若是新窗口打开页面时,Selenium是不会自动识别到新窗口去查找元素的,所以需要我们去模拟人为切换到新窗口.WebDriver 提供了 switchTo().window()方法可以实现在不同的窗口之间切换. 解决方案: 1.首先,确认在哪个ste

selenium 多窗口切换

selenium 多窗口切换 知识点: 1.current_window_handle:获取当前窗口句柄 2.window_handles:返回所有窗口的句柄到当前会话 3.switch_to.window():用于切换到相应的窗口.  与switch_to.frame()类似. switch_to.window()是用于不同窗口的切换.switch_to.frame()是用于不同表单的切换. 示例; #selenium 窗口切换 from selenium import webbrowser

Selenium 3----定位一组元素+多表单切换+多窗口切换

定位一组元素 和定位单个元素类似,WebDriver提供了8种用于定位一组元素的方法.定位一组元素的方法与定位单个元素的方法类似,唯一的区别是在单词element后面多了一个s表示复数. find_elements_by_id() find_elements_by_name() find_elements_by_class_name() find_elements_by_tag_name() find_elements_by_link_text() find_elements_by_partia

Selenium 2自动化测试实战16(多窗口切换)

一.多窗口切换 在页面操作过程中有时候点击某个链接会弹出新的窗口,这时就需要主机切换到新打开的窗口上进行操作.WebDriver提供了switch_to.window()方法.可以实现在不同的窗口之间切换.以百度和百度注册页为例,在两个窗口之间切换 #coding:utf-8 from selenium import webdriver from selenium.webdriver.common.keys import Keys import time driver=webdriver.Chr