Я пытаюсь использовать селиниум для подсчета количества строк в таблице.Моя текущая импликация -
table = self.driver.find_element_by_xpath('//*[@id="id"]')
print(len(table.find_elements_by_tag_name('tr')))
в следующей таблице
<table class="grid" id="id">
<tbody>
<tr class="header-row"> </tr>
<tr>
<td class="tdclass"> </td>
<td> </td>
<td> </td>
</tr>
<tr class="alt">
<td class="tdclass"> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td class="tdclass"> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
</tbody>
</table>
Прямой доступ к телу [Если это поможет]:
/html/body/form/div[4]/div[2]/div[3]/div/div/div/div[2]/div/table/tbody
Мой вывод тамВыполнение этого кода выглядит следующим образом:
>>> print(len(table.find_elements_by_tag_name('tr')))
28
Мой ожидаемый результат -
>>> print(len(table.find_elements_by_tag_name('tr')))
4
Теперь, что я нахожу странным, print(len(table.find_elements_by_tag_name('tr')))
возвращает 28 каждый раз.Независимо от того, добавляю я или удаляю строки таблицы, всегда будет возвращаться число 28.
Я предполагаю, что я просто очень глуп, и на самом деле решение находится прямо передо мной, но я просто не вижу его.