如何找到另一个元素旁边的元素?

How to find element next to another element?

有没有办法找到另一个元素旁边的元素,如下例所示?我试图通过首先找到单词 "Frequency of Update" 来检索单词 "Daily"。我认为 XPath 是唯一的方法,但我不确定如何使用它,因为它不是子元素。

图片:(http://i.imgur.com/UWI3nLy.png)

如果它是元素的同级元素,则应使用以下 xpath:

/following-sibling::td


element = <the element you retrived by locating "Frequency of Update">
element.find_element_by_xpath('/following-sibling::td')

试试这个 xpath:

//*[contains(text(),'Frequency of Update')]/ancestor::td/following-sibling::td

这将首先在 DOM 中找到具有 innerHTML/text 'Frequency of Update' 的元素,然后从其所有祖先中找到 'td' 元素,然后找到 'td' 元素是其兄弟元素,具有 'Daily' 文本

您可以找到这样的元素:

element = driver.find_element_by_xpath('//td[//*[contains(text(),"Frequency of Update")]]')
next_element = element.find_element_by_xpath('./following-sibling::td')

如果要通过定位元素查找另一个元素,

Xpath should start with ' . '