本文内容:

1、嵌套页面iframe的切换

一、报错的提示

找不到要标签元素,
这个是由于你控制的driver对象是外面的窗口,
并未进入到iframe的嵌套页面,导致找不到元素

二、解决办法—-十分简单,切换进iframe页面即可,找到标签或元素

1、定位iframe

1.有id,并且唯一,直接写id

driver.switch_to_frame("x-URS-iframe")
driver.switch_to.frame("x-URS-iframe")

2.有name,并且唯一,直接写name

driver.switch_to_frame("xxxx")
driver.switch_to.frame("xxxx")

3.无id,无name,先定位iframe元素

iframe = driver.find_elements_by_tag_name("iframe")[0]
driver.switch_to_frame(iframe)
driver.switch_to.frame(iframe)

4.通常采用id和name就能够解决绝大多数问题。

但有时候frame并无这两项属性,则可以用index和WebElement来定位:
index从0开始,传入整型参数即判定为用index定位,传入str参数则判定为用id/name定位

WebElement对象,即用find_element系列方法所取得的对象,
我们可以用tag_name、xpath等来定位frame对象

2、返回最外层页面

driver.switch_to.default_content()  # 跳回最外层

0 Comments

Leave a Reply

Your email address will not be published. Required fields are marked *