说明:在Selenium中封装了如何切换frame框架的方法
当打开一个页面时,光标的定位是在主页面中,如果页面是由多个frame组成的,那么无法直接定位到具体的元素,需要切换到自己所需要的frame中,再查找该元素
定位frame:
1.当frame有id或name时且id或name唯一时,可以直接使用driver.switch_to.frame(‘XXX’)来进入到该frame中。如:
driver.switch_to.frame('frame1')
2.当frame没有id和name属性时,则需要WebElement来定位,例如frame的属性为,则需要先定位到frame元素,再切换。如下使用xpath来定位:
driver.switch_to.frame(driver.find_element_by_xpath('/html/frameset/frame[1]'))
从frame中切回主页面:
driver.switch_to.default_content()
注意:在frame中操作其他页面,必须先回到主页面,才能再进一步操作
frame的嵌套
当遇到frame的嵌套时,如果想进入子frame中,需要从主页面一层一层的切进去。
driver.switch_to.frame("frame1")
driver.switch_to.frame("frame2")
如果想从子frame切换到父frame,可以使用driver.switch_to.parent_frame()。