祖先元素下的XPath联合元素

时间:2019-05-09 04:06:42

标签: selenium selenium-webdriver xpath

Xpath可以在祖先元素下找到span和div元素。

ancestor_element
    ---------------//span
    ---------------//div
    ---------------//input

假设xpath是ancestor_element的a_very_complex_xpath_to_find_the_ancestor_element。这很复杂。

(a_very_complex_xpath_to_find_the_ancestor_element//span) | (a_very_complex_xpath_to_find_the_ancestor_element//div)

以上结合大大降低了性能。有更好的Xpath工会吗?尝试了以下内容:

a_very_complex_xpath_to_find_the_ancestor_element//(span | div)

它不起作用。

1 个答案:

答案 0 :(得分:0)

需要对您的xpath进行一些微调。

a_very_complex_xpath_to_find_the_ancestor_element//*[local-name()='span' or local-name()='div']

在这里,我们根据标签名称span或div查找元素。

<html><head></head><body>
      <div id="ancestor">
			   <a>
          <label>inner</label>
         </a>
			  <span> span under ancestor </span>
			  <label> label under ancestor </label>
			  <div> div under ancestor </div>
		</div>
</body></html>

enter image description here