selenium跳转到iframe

2020-08-19  本文已影响0人  S_jie

selenium对iframe的操作有三种,分别是id,name,元素定位。

id

<html>
<iframe id="frame1" src="https://www.sogou.com/" name="slider"></iframe>
</html>

如图上所示,iframe标签里有id的话直接用id定位即可

driver.switch_to.frame("frame1")

name

<html>
<iframe id="frame1" src="https://www.sogou.com/" name="slider"></iframe>
</html>

如图上所示,iframe标签里有name的话直接用id定位即可

driver.switch_to.frame(“slider”)#切换到name为login_frame_qq的iframe中

元素定位

<iframe tab-id="12c8792" frameborder="0" src="xx/xx/xxx.html" scrolling="yes" class="x-iframe" cd_frame_id_="d5234f1"></iframe>

页面找到class值为'.x-iframe'第二个iframe页面

iframe = drvier.find_elements(By.CSS_SELECTOR, '.x-iframe')[1]
drvier.switch_to.frame(iframe)

多个iframe嵌套

<html>
    <iframe id="frame1">
        <iframe id="frame2" / >
    </iframe>
</html>

一层层跳进去

driver.switch_to.frame("frame1")
driver.switch_to.frame("frame2")

跳出iframe

# 1.跳转到iframe后,返回到主窗体
drvier.switchTo().defaultContent()

# 2.存在多个iframe,跳转到二级iframe后,返回上一级的iframe:
drvier.switchTo().parentFrame()
上一篇下一篇

猜你喜欢

热点阅读