selenium06 多层框架/层级定位

本文介绍了在使用Selenium进行网页元素定位时,如果遇到多层frame或内嵌窗口导致定位失败的问题,提出了相应的解决办法。包括通过frame的ID、name属性定位,以及在无ID、name时利用XPath和其他层级元素进行定位。同时推荐了firepath等插件辅助检查frame的存在,并提供了Chrome中使用XPath定位的技巧。

前提:定位元素找不到结果元素

原因:

  • 方法错误
  • 存在frame或内嵌窗口(switch_to_frame、switch_to_window)
  • 页面超时

1、存在多层frame
依据frame中的ID、name定位

#定位iframe1(ID=f1)、iframe2(ID=f2)
driver.switch_to_frame("f1")
driver.switch_to_frame("f2")
driver.find_element_by_id("xx").click()
#定义多层框架后,如若切回上级框架内
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值