事故缘由,今天对某一个元素用了各种方法没定位到。
解决方法:弹出框 frame 或 iframe
获得技能点,4种弹出框元素的定位(实际感觉只有3种)
1.弹出框是alert类型:
selenium提供switch_to_alert方法:捕获弹出对话框(可以定位alert、confirm、prompt对话框)
自己可以编辑一个网页进行尝试,我下次有时间在更新这个知识点
2.弹出框不是alert类型:
弹出框是div层,跟平常一样定位,不用管弹出框
3.弹出框是iframe
driver.switch_to.frame("frame1")之后进行定位元素

图-iframe
小括号中是iframe的属性
4.多窗口操作
driver.switch_to.window(all_handles[1])
继续:
当你实在无法定位一个元素的时候,可以想下iframe。
iframe存在嵌套和未嵌套的页面。
1.未嵌套页面:百度下吧
· selenium切换到iframe框架中:
1.iframe属性法,推荐ID。 XXX.switch_to_frame('id')
2:索引法,查询所有iframe,找出自己需要的那个。XXX.switch_to_frame(n) n为数字
2.嵌套的frame
多switch几次
3.跳出frame
XXX.switch_to_default_content()