Насколько я знаю, таблица имеет tr
и td
, и, вероятно, вам нужно td
. Таким образом, xPath может быть таким:
driver.find_element(By.XPATH, "//*[@id='reportList']/tbody//td[contains(text(), 'example text')]")
где ...tbody//td...
означает, что он будет искать во всех подузлах td
из tbody
. Так что td
не должно быть прямым потомком tbody
PS Я бы также добавил метод wait
, чтобы убедиться, что элемент присутствует:
# will wait up to 10 seconds until element will be present on the page
element = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.XPATH, "//*[@id='reportList']/tbody//td[contains(text(), 'example text')]"))
)
Примечание: вам нужно сделать несколько импортов:
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC