如何等待内容(文本)非空的元素出现?我尝试使用//*[@id="test" and text() != ""]
通过xpath选择,但是WebDriverWait#until
的返回没有检索到元素。在
我的代码:
selector = '//*[@id="test" and text() != ""]'
element = WebDriverWait(driver, timeout).until(
expected_conditions.presence_of_element_located((By.XPATH, selector))
)
我想得到元素的文本内容。我试过了:
^{pr2}$如果我只打印element
,输出是<selenium.webdriver.remote.webelement.WebElement(session="xxx", element="xxx")>
。怎么了?在
我要找的那个div有这样的结构:
<div>
Test:
<div id="test"><b>this text here</b></div>
</div>
在这种情况下,
text()
xpath函数没有帮助,因为它不考虑子元素的文本。实际上,您需要在预期的条件下调用.text
。You can create a custom one:用法:
^{pr2}$您可以通过xpath等一个非空文本的元素,如下所示:
source
相关问题 更多 >
编程相关推荐