【问题标题】:How to identify the preceding sibling through xpath in selenium如何通过硒中的xpath识别前面的兄弟姐妹
【发布时间】:2018-12-17 11:52:13
【问题描述】:
这是使用兄弟姐妹后的代码,我无法单击复选框。它有什么问题?
代码:
checkbox1 = driver.find_element_by_xpath("td/nobr/a[text()='192.168.50.120']/../preceding-sibling::td/input[@class='checkbox']")
【问题讨论】:
标签:
python
selenium
selenium-webdriver
xpath
【解决方案1】:
你没有得到正确的元素,你试图得到td。正确的 xpath 应该是:
//td[nobr/a[text()='192.168.50.120']]/preceding-sibling::td/input[@class='checkbox']
【解决方案2】:
要选择所需的复选框,即引用<a> 节点的<input> 节点,文本为192.168.50.120,您可以使用以下解决方案:
checkbox1 = driver.find_element_by_xpath("//td//nobr//a[contains(@href,'nodeinfo?nodeid') and text()='192.168.50.120']//preceding::input[1]")