iframe 多表单切换与alert弹框
iframe多表单切换
通常通过传id, name, index,以及selenium的WebElement对象来切换frame:
1.id: 传入字符串的参数: 以126邮箱登录为例
driver.switch_to.frame('id')
2. name: 传入字符串的参数:
driver.switch_to.frame('name')
3. index: 传入整型的参数
driver.switch_to.frame(0)
4. WebElement传入selenium.webelement 参数
driver.switch_to.frame(driver.find_element_by_xpath('xpath'))
5. 切回上一级表单
driver.switch_to.parent_frame()
6. 切回最外层界面(原界面)
driver.switch_to.default_content()
Alert弹框
切换到 alert 弹窗:alert = driver.switch_to. alert
点击确认:alert.accept()
点击取消:alert.dismiss()
代码:
def test_alert(): driver = webdriver.Chrome() driver.get('https://www.runoob.com/try/try.php?filename=jqueryui-api-droppable') # 切换到iframe表单 driver.switch_to.frame('iframeResult') ele_drag = driver.find_element_by_id('draggable') ele_drop = driver.find_element_by_id('droppable') action = ActionChains(driver) action.drag_and_drop(ele_drag,ele_drop) action.perform() # 切换到alert弹框,点击确认按钮 driver.switch_to.alert.accept() # 切回到上一级表单 driver.switch_to.parent_frame()

浙公网安备 33010602011771号