selenium对iframe操作小结

selenium获取iframe中内容

selenium提供了三种方法来获取iframe中的内容:

语法:

driver.switch_to_frame()

driver.switch_to.frame()

①iframe有id,传入id获取

②iframe有name,传入name获取

③通过tag_name获取所有的iframe,选择我们要进入的iframe,代码:

#用于页面中有多个iframe并列
#假如我们要进入的是第一个iframe,
driver.switch_to_frame( driver.find_elements_by_tag_name('iframe')[0])

当页面中iframe中还有iframe时,假如此时我们想进入二级iframe,则需要先进入一级iframe,再进入二级iframe。

#iframeId为一级iframe的id
driver.switch_to_frame("iframeId")
#iframeId下有两个并列的iframe,但是他们没有id和name,此时我们可以通过tag_name获取
driver.switch_to.frame(driver.find_elements_by_tag_name("iframe")[1])

这样我们就进入了一级iframeId下的iframe了!

selenium跳出iframe

①从二级iframe跳到一级iframe,即跳到父级:

driver.switchTo().parentFrame();
#或者
driver.switch_to.parent_frame()

②从iframe跳到主窗口

driver.switch_to_default_content()
#或者
driver.switch_to.default_content()
原文地址:https://www.cnblogs.com/qilin20/p/12276170.html