在定位的时候发现有些元素定位不到,最后发现有iframe。
如果ifame 有name或id的话,直接使用switch_to_frame
(“name值”)或switch_to_frame
(“id值”),这是最理想的方法,也是最简单好用的方法。
举例:
要定位到iframe,再定位其他元素。
driver.switch_to_frame("_DialogFrame_0")
问题又来了,iframe我们进来了,那么该怎么出去呢,出不去就没法操作其他元素。
那就该使用:driver.switch_to_default_content()
,返回到主content,也就是主界面中
因为switch_to_frame()只能使用name和id,如果没有name或id应该怎么处理呢?
此时可以使用xpath先对iframe进行定位:
iframe = find_element_by_xpath("//div/iframe")
然后再使用switch_to_frame()函数:
switch_to_frame(iframe)
就是这简单的两步,问题解决!