selenium+webdriver+python定位不到元素的原因及解决办法

在定位元素过程中,总会遇到这样那样的问题,下面就最近遇到的4大类问题,得到的解决方法,来做个总结。 1. xpath描述错误的 这个是因为在描述路径的时候没有按照xpath的规则来写 造成找不到元素的情况出现 2.动态id定位不到元素 在工作过程中,有时候会遇到类似这样的动态id //*[@id=”listbg00.42585085760747465”]/td[3]/img
摘要由CSDN通过智能技术生成

在定位元素过程中,总会遇到这样那样的问题,下面就最近遇到的4大类问题,得到的解决方法,来做个总结。

  1. xpath描述错误的
    这个是因为在描述路径的时候没有按照xpath的规则来写 造成找不到元素的情况出现
    2.动态id定位不到元素
    在工作过程中,有时候会遇到类似这样的动态id
    //[@id=“listbg00.42585085760747465”]/td[3]/img
    相应的直接copy xpath 的方法得到:
    //
    [@id=“listbg00.46422763314941284”]/td[3]/img
    对于此类方法,不能通过id 以及简单的copy path去准确定位元素,因为他们是动态变化的。
    解决方法:
    采用xpath定位方法中,属性+层次相结合的方法可以得到,比如:
    这里写图片描述
    find_element_by_xpath("//td[class=‘tessdoperate’]/img")
  2. 点击速度过快 页面没有加载出来,就需要点击页面上的元素
    对于这种情况,,解决此方法:
    只需要加合理的时间等待。
    诸如:time.sleep(3)
  3. 不在同一个frame里边查找元素
    我们会遇到使用id/xpath/name都不能准确定位元素,主要是因为使用到了frame框架。
    那么如何去定位元素,如何去找元素?
    通过IDE去模拟,然后再找到该元素所在的frame。<
  • 6
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值