千家信息网

如何过滤掉隐藏的元素

发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,dirver.find_element_by_xpath('//form//input[@class=\'el-input__inner\'and not(contains(@style,\'disp
千家信息网最后更新 2025年02月01日如何过滤掉隐藏的元素

dirver.find_element_by_xpath('//form//input[@class=\'el-input__inner\'and not(contains(@style,\'display:none\'))]'


注意 not(contains(@style,\'display:none\'))就是过滤掉隐藏的元素,但是这种情况使用于元素本身有 这个属性,如果它的父元素或者父父元素有这种属性,它自己本身没有,那么这种写法是过滤不掉隐藏的元素的

还有一种比较可靠的方法,如下所示
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
ec = EC.visibility_of_any_elements_located((By.XPATH,'//form//div[@class=\'el-row\']//input[@class=\'el-input__inner\']'))
elements = ec(driver)

0