如何找到另一个元素旁边的元素?
How to find element next to another element?
有没有办法找到另一个元素旁边的元素,如下例所示?我试图通过首先找到单词 "Frequency of Update" 来检索单词 "Daily"。我认为 XPath 是唯一的方法,但我不确定如何使用它,因为它不是子元素。
如果它是元素的同级元素,则应使用以下 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 ' . '
有没有办法找到另一个元素旁边的元素,如下例所示?我试图通过首先找到单词 "Frequency of Update" 来检索单词 "Daily"。我认为 XPath 是唯一的方法,但我不确定如何使用它,因为它不是子元素。
如果它是元素的同级元素,则应使用以下 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 ' . '