【python】如何用xpath定位iframe里面的元素

一、不动脑子复制xpath找到元素标签

      在用python+selenium定位页面元素的时候,如果不考虑代码复用,最方便的方法如下:

      1 用开发者工具,选择下图红色框的箭头,定位到你要找的页面元素

         

      2  例如选择下图蓝色元素,鼠标右键选择copy-copy Xpath即可

          

     3  但是如果这个标签在iframe里面,用python根本访问不到,会报没有这个元素的错,或者如下错误,那我们怎么才能访问到iframe里面的元素标签呢?

          

二、switch_to.  方法(别漏了那个点)

 1  切换到iframe:

#用id定位
driver.switch_to.frame("iframe")
#用name定位
driver.switch_to.frame("myiframe")
#用webElement对象定位
driver.switch_to.frame(driver.find_element_by_tag_name("iframe"))

    如果有嵌套的iframe,就一直用switch_to.frame()往里套就行,一层一层进去。

2  切到frame中便不能继续操作主文档的元素,这时如果想操作主文档内容,则需切回主文档:

driver.switch_to.default_content()

3  嵌套的iframe以及返回其父iframe的方法:

#嵌套的iframe
driver.switch_to.frame("iframe1")
driver.switch_to.frame("iframe2")
#返回父iframe1,若当前就是iframe1,则返回父无效
driver.switch_to.patent_frame()
  • 8
    点赞
  • 58
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值