我想檢查的狀態(tài)<td>具有從狀態(tài)變化元件"Running"來(lái)"Success"。狀態(tài)更改可能需要大約1分鐘或每隔幾秒鐘,我需要重試檢查元素的狀態(tài)。有人可以幫助我如何實(shí)現(xiàn)這一目標(biāo),以下是我正在嘗試的html結(jié)構(gòu)和代碼段。跑步<tbody id="workflows"><tr id="row8ff2244a64f3e7180164ff637c574d24" class="selected"><td><span class="wf-status running" id="status8ff2244a64f3e7180164ff637c574d24">Running</span></td><td>Copy of Discovery v4madhu-test3-automate</td><td>03 Aug 16:14</td><td>autotest</td><td>dmatarget14.hpeswlab.net</td><td></td><td></td></tr></tbody>成功<tbody id="workflows"><tr id="row8ff2244a64f3e7180164ff637c574d24" class="selected"><td><span class="wf-status wfsuccess" id="status8ff2244a64f3e7180164ff637c574d24">Success</span></td><td>Copy of Discovery v4madhu-test3-automate</td><td>03 Aug 16:14</td><td>autotest</td><td>dmatarget14.hpeswlab.net</td><td></td><td></td></tr></tbody>樣例代碼timeout = 60maxtime = time.time() + timeoutresult = Nonewhile result is "SUCCESS": try: # connect result = driver.find_element_by_xpath('//td[contains,"dmatarget14.hpeswlab.net"] and td[contains,"Success"]/ancestor::tr') time.sleep(5) except: if time.time() > maxtime: raise Exception
3 回答

瀟瀟雨雨
TA貢獻(xiàn)1833條經(jīng)驗(yàn) 獲得超4個(gè)贊
要驗(yàn)證<td>
元素的狀態(tài)以將文本從“運(yùn)行”更改為“成功”,您可以使用以下解決方案之一:
text_to_be_present_in_element
和CSS_SELECTOR
:element = WebDriverWait(driver, 20).until(EC.text_to_be_present_in_element((By.CSS_SELECTOR, "tbody#workflows>tr.selected>td>span.wf-status.wfsuccess"), "Success"))
text_to_be_present_in_element_value
和CSS_SELECTOR
:element = WebDriverWait(driver, 20).until(EC.text_to_be_present_in_element_value((By.CSS_SELECTOR, "tbody#workflows>tr.selected>td>span.wf-status.wfsuccess"), "Success"))

喵喵時(shí)光機(jī)
TA貢獻(xiàn)1846條經(jīng)驗(yàn) 獲得超7個(gè)贊
您可以嘗試以下代碼:
WebDriverWait(driver, 60).until( EC.presence_of_element_located((By.XPATH, '//td[contains,"dmatarget14.hpeswlab.net"] and td[contains,"Success"]/ancestor::tr'))
添加回答
舉報(bào)
0/150
提交
取消