使用XPath和Selenium Python单击文本

时间:2019-03-27 08:27:06

标签: python selenium xpath

通常,我使用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 个答案:

答案 0 :(得分:1)

尝试以下xpath:

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

注意:我不确定Microsoft与2019之间是否有两个空格

答案 1 :(得分:1)

我会用

browser.find_element_by_xpath("//td[contains(text(),'SNOW Microsoft 2019-03-26')]").click()

答案 2 :(得分:0)

具有 grdReports ID的元素是 div ,而不是

d = foverlaps(df1, df2)[, list(mySum = count(value)), by = Date ]

还可以尝试使用较短的xpath:

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

Css选择器:

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