• selnium无法定位到元素时检查三种情况


    无法定位到元素时,一般检查三种情况可以解决百分之九十九的问题:

    1.检查定位的元素的父级是否存在frame,如果有,先swith_to.frame()切入。
     (检查方法:直接在元素中搜索frame关键字)

    2.检查定位的书写正确性,如果使用ID、NAME无法定位时,请使用XPATH的定位方式定位元素。
     (XPATH有时定位单一标签无法定位,请使用双重定位,例://*[@id="Province"]/a/span[@id="searchBtn"])

    3.假设上述两种方法均未解决定位问题,请在定位之前添加强制等待time.sleep(3)
      (以上方法均尝试后问题仍未解决,请返回至1、2重新检查)

    注意:如果是使用js写的,请使用js定位方法去进行定位

    js = 'document.getElementByID("su").click();'
    driver.excute_script(js)

    以下总结了5种js定位的方法

    除了id是定位到的是单个element元素对象,其它的都是elements返回的是list对象

    1.通过id获取

    document.getElementById(“id”)

    2.通过name获取

     document.getElementsByName(“Name”)

    返回的是list

    3.通过标签名选取元素

    document.getElementsByTagName(“tag”)

    4.通过CLASS类选取元素

    document.getElementsByClassName(“class”)

    兼容性:IE8及其以下版本的浏览器未实现getElementsByClassName方法

    5.通过CSS选择器选取元素

    document.querySelectorAll(“css selector")
  • 相关阅读:
    活用 %取余 用于变量循环
    jquery滚动条固定在某一位置
    jquary中各种相似操作介绍
    jquary中滚动条滚动到底部
    JSON到字符串之间的解析
    ecshop删去版权等信息
    分享代码和网页地图
    ecshop版权的修改,头部,底部
    ECSHOP中transport.js和jquery的冲突的简单解决办法
    从Eclipse迁移到Android Studio碰到的问题记录
  • 原文地址:https://www.cnblogs.com/xianyulouie/p/11041798.html
Copyright © 2020-2023  润新知