Нажмите на текст, используя xpath и selenium python - PullRequest
0 голосов
/ 27 марта 2019

Обычно я использую xpath, чтобы нажимать на текст веб-страниц.Но теперь, может быть, потому что это стол, он не работает.Я хочу нажать на текст «SNOW Microsoft 2019-03-26.csv», который является уникальным в таблице.Мой код:

browser.find_element_by_xpath("//table[@id='grdReports']/div[3]/table/tbody/tr[1]/td[3]").click()

Ошибка: не удается найти xpath

HTML выглядит так:

html

Ответы [ 3 ]

1 голос
/ 27 марта 2019

Попробуйте следующий xpath:

//table[@role='grid']//tbody/tr/td[text()='SNOW Microsoft 2019-03-26.csv']

Примечание: я не уверен, есть ли два пробела между Microsoft и 2019

1 голос
/ 27 марта 2019

Я бы просто использовал

browser.find_element_by_xpath("//td[contains(text(),'SNOW Microsoft 2019-03-26')]").click()
0 голосов
/ 27 марта 2019

Элемент с grdReports идентификатор - это div , а не таблица :

browser.find_element_by_xpath("//div[@id='grdReports']/div[3]/table/tbody/tr[1]/td[3]").click()

Также вы можете попробовать более короткий xpath:

//*[@id='grdReports']//tr[@role='row']/td[3]

Css селектор:

#grdReports tr[role=row] > td:nth-child(3)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...