Python+Selenium练习篇之8-处理iframe切换

iframe也称作嵌入式框架,嵌入式框架和框架网页类似,它可以把一个网页的框架和内容嵌入在现有的网页中。web应用中经常会遇到frame/iframe表单嵌套页面的应用,webDriver只能在一个页面上对元素识别与定位,对于frame/iframe表单内嵌页面上对元素无法直接定位。这时需要switch_to.frame()方法将当前定位的主体切换到内嵌页面中。此外,

> switch_to.parent_content: 跳出当前一级表单,单一个页面内嵌多个表单时, 则可以通过switch_to.parent_content()方法跳出当前一级表单。

> switch_to.default_content(): 跳出最外层的页面.进入多级表单的情况下,还可以通过switch_to.default_content()跳回最外层的页面。

url ="https://www.126.com"

driver.get(url)

time.sleep(3)

driver.switch_to.window(driver.window_handles[-1])

#driver.switch_to.frame("frameforlogin")  # 切换到iframe by name

driver.switch_to.frame(0)# 切换到iframe by index

driver.find_element_by_xpath("//*[@class='j-inputtext dlemail j-nameforslide']").send_keys("selenium switch test")# 在帐号输入框内输入

time.sleep(2)

driver.quit()

你可能感兴趣的:(Python+Selenium练习篇之8-处理iframe切换)