一、确定元素是否被隐藏
link = driver.find_element(*By_xx, 'value').is_displayed()print(link)
如果输出结果为False,说明元素被隐藏了。
二、解决方法
1、修改当前定位元素方式方法(修改定位元素方式,或者修改定位元素的路径等),使用is_displayed()方法定位元素结果为True。
由于webdriver spec的定义,selenium WebDriver只会与课件元素交互,所以获取隐藏元素的文本信息返回为空字符串。
2、通过get_attribute()方法获取元素的文本信息。
在获取隐藏元素的文本信息时,可以使用get_attribute()方法,通过textContent、innerText、innerHTML等属性获取。
innerHTML会返回元素内部的HTML,包含所有的HTML标签。
textContent和innerText置灰得到文本内容,而不会包含HTML标签。textContent是W3C兼容的文字内容属性,但是IE不支持;innerText不是W3C DOM的指定内容,但是FireFox不支持。
from selenium.webdriver.common.by importByfrom test_case.common.home importPageclassCloudMainPage(Page):
username_input= (By.ID, 'username')
password_input= (By.ID, 'password')
loging_button= (By.XPATH, '//*[@