【发布时间】:2018-08-03 13:24:11
【问题描述】:
我正在尝试检查状态从"Running" 更改为"Success" 的<td> 元素的状态。状态更改可能需要大约 1 分钟或每隔几秒钟我需要重试检查元素的状态。有人可以帮助我如何实现这一点,以下是我正在尝试的 html 结构和 sn-p。
跑步
<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 = 60
maxtime = time.time() + timeout
result = None
while 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
【问题讨论】:
标签: python selenium selenium-webdriver xpath css-selectors