我试图等待直到Web元素将其状态更改为“完成”?有人可以在我做不到的地方查看我的代码吗?
我看到应用程序状态已更改为“完成”,但是代码执行没有继续吗?我收到了TimeOutException。
def check_status(self,myString):
table = self.browser.find_element_by_id(self.table_id)
col= table.find_element_by_xpath(
"//tr[contains(.,'" + myString + "')]//td[5]")
print(col.text)
if col.text=='finished':
return col.text
else:
try:
wait = WebDriverWait(self.browser, 180)
element = wait.until(
EC.text_to_be_present_in_element_value((By.XPATH, "//tr[contains(.,'" + myString + "')]//td[5]"), 'finished'))
print(element)
return col.text
except:
col.text
raise TimeoutException("Not Finished yet")
我希望状态一旦更改为完成,就应该继续执行。
答案 0 :(得分:0)
我必须更改某些内容,但对我来说却很好,我认为可以点击的元素效果更好,并且在元素出现之前它不会做任何事情:
WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.XPATH, "//tr[contains(text(),'your string')]//tr[5]")))
print("Finished")