gpt4 book ai didi

python - 如何验证元素包含任何文本?

转载 作者:太空狗 更新时间:2023-10-29 22:15:56 26 4
gpt4 key购买 nike

我经常需要等待 AJAX 调用,以便在页面上的元素完成加载后将文本添加到它们中。我了解如何使用 WebDriverWait 等待特定文本出现在元素中,但我不知道如何等到出现任何文本。我试图避免 while 循环不断检查元素的文本是否不是 == ''

这是我用来查找特定文本的方法:

try:
WebDriverWait(self.driver, 10).until(EC.text_to_be_present_in_element((By.ID, 'myElem'), 'foo'))
except TimeoutException:
raise Exception('Unable to find text in this element after waiting 10 seconds')

有没有办法检查任何文本或非空字符串?

最佳答案

您可以使用 By.XPATH 并检查 xpath 表达式中的 text() 是否为非空:

EC.presence_of_element_located((By.XPATH, '//*[@id="myElem" and text() != ""]'))

仅供引用,我正在使用 presence_of_element_located()这里:

An expectation for checking that an element is present on the DOM of a page. This does not necessarily mean that the element is visible.

完整代码:

try:
WebDriverWait(self.driver, 10).until(EC.presence_of_element_located((By.XPATH, '//*[@id="myElem" and text() != ""]')))
except TimeoutException:
raise Exception('Unable to find text in this element after waiting 10 seconds')

关于python - 如何验证元素包含任何文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24705205/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com