zl程序教程

您现在的位置是:首页 >  其他

当前栏目

定位元素被隐藏了要怎么操作?

定位 操作 怎么 元素 隐藏
2023-09-14 09:00:33 时间

####

操作隐藏元素
隐藏元素可以正常定位到,只是不能操作。操作元素是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呢?

 

 

###