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()