zoukankan      html  css  js  c++  java
  • 定位元素被隐藏了要怎么操作?

    ####

    操作隐藏元素
    隐藏元素可以正常定位到,只是不能操作。操作元素是click,clear,send_keys这些方法。
    隐藏输入框元素输入文本:隐藏元素用send_keys()方法会抛异常 ElementNotVisibleException。这个报错是说元素不可见,不可以被操作。
    
    JS操作隐藏元素
    selenium是无法操作隐藏元素的(但是能正常定位到),本身这个框架就是设计如此。如果非要去操作隐藏元素,那就用js的方法去操作,selenium提供了一个入口可以执行js脚本。
    js和selenium不同,只要页面上有的元素(在dom里面的)都能正常的操作。
    
    js点击hidden元素
    js = 'document.getElementById("baidu").click()'
    driver.execute_script(js)
    运行完之后,会发现页面正常点击了
    
    备注:百度搜到的可能方法是先用js去掉hidden属性,再用selenium操作,这样有点多此一举了。既然都已经会用js了,何必不一次性到位直接click呢?

    ###

  • 相关阅读:
    python 格式化 json输出
    python
    回顾2013
    C扩展Python
    C扩展Python
    Python
    Python interview preparing
    Python用smtplib发送邮件
    Python 安装路径, dist-packages 和 site-packages 区别
    nginx worker_cpu_affinity使用方法
  • 原文地址:https://www.cnblogs.com/andy0816/p/14551114.html
Copyright © 2011-2022 走看看