如果行包含使用Selenium Python的X值,请选择表中的复选框

时间:2017-08-03 13:51:06

标签: python html selenium

我正在使用Selenium浏览报告网站。

我登录并导航到我可以搜索特定人员的页面,然后我获得了一个信息表。

每行都有一个复选框,我可以单击该复选框并对该特定记录执行操作。

我希望点击一年中等于17-18的行中的复选框。但是,如果另一个元素满足特定值,我无法弄清楚如何选择一个元素

1 个答案:

答案 0 :(得分:0)

您可以找到包含 17-18 文本的所有行,然后您可以使用该元素查询带有该行的复选框

rows = driver.find_elements_by_xpath("//td[@class='academicYearColumnValue' and text()='17-18']/..")
for row in rows: 
    checkbox = row.find_element(".//input[@type='checkbox']")
    checkbox.click()

或者您可以使用xpath简单查询您感兴趣的所有复选框。

all_checkboxes = driver.find_elements_by_xpath("//td[@class='academicYearColumnValue' and text()='17-18']/../input[@type='checkbox']")
for checkbox in all_checkboxes:
    checkbox.click()