selenium多表单切换

 

多表单嵌套的页面必须一层一层往下找,不能直接对内层页面进行操作

假设frame1的id=f1,frame2的id=f2,frame3中为百度页面,我们需要对百度页面进行操作

#当frame有id属性时,可直接定位
dr.switch_to.frame('f1')
dr.switch_to.frame('f2')
dr.find_element_by_id('kw').send_keys('test')
#当frame没有id属性时,可通过xpath或css方式定位
f1 = dr.find_element_by_xpath('任意定位方式')
dr.switch_to.frame(f1)
f2 = dr.find_element_by_xpath('任意定位方式')
dr.switch_to.frame(f2)
dr.find_element_by_id('kw').send_keys('test')

 

在百度操作完之后,退回到上层的frame

dr.switch_to.default_content()   #退回到上一层表单
dr.switch_to.default_content()   #执行两次退回到上上层表单

 

posted @ 2018-11-04 20:48  黄萝卜和吱吱兔  阅读(277)  评论(0编辑  收藏  举报