Я использую Selenium + Python, пожалуйста, не забывайте об этом, когда напишете ответ. число "красная стрелка".
Эти числа всегда генерируются с разными числами. Поэтому я создаю переменную first_value для «красной стрелки» и «second_value» для «зеленой стрелки». И все работает нормально, но я использую уродливый Xpath, поэтому я хочу сделать свой Xpath немного красивее, но не знаю, как я могу это сделать в этом случае.
Вот мой код:
<tr class="GridPager_Default">
<td align="left" valign="top" colspan="27"><span id="Rad305104_ctl01_ctl03_ctl02_StatusLabel" style="float:left;">Ready</span></td>
</tr>
</tfoot>
<tbody>
<tr class="GridAltRow_Default">
<td>77915481</td>
<td style="display:none;">False</td>
<td style="display:none;">False</td>
<td>77915315</td>
<td> </td>
<td>2020-05-27 07:59:47</td>
<td>77915413</td>
...
</tr>
, а также до того, как есть очень большая часть кода, поэтому я не могу вставить его сюда, поэтому я делаю скриншот . Стрелки для сравнения .
Я пробую эти примеры, но все они дают мне сообщение:
Произошло исключение: TimeoutException
PS Для второго я использую уродливый на данный момент Xpath.
first_value = wait.until(EC.visibility_of_element_located((By.XPATH, "//tr[@class=GridAltRow_Default'][2]/td[7]"))).text
second_value = wait.until(EC.text_to_be_present_in_element((By.XPATH, "/html/body/form/div[4]/div[2]/div/table/tbody/tr[4]/td/div[1]/div[2]/div[2]/table/tbody/tr[5]/td/table/tbody/tr[2]/td/div/div/table/tbody/tr[1]/td[1]"), (first_value)))