○ 定位某元素同级元素的上一个 preceding-sibling::
○ (//li[@class="el-icon more btn-quickprev el-icon-more"]/preceding-sibling::li)[last()]
○ 定位某元素同级元素的下一个 following-sibling::
○ //li[@class="el-icon more btn-quickprev el-icon-more"]/following-sibling::li[1]
○ 以部分属性值定位某元素
○ start_with
//button[starts-with(@id, "object_")]
○ contains
//button[contains(@id, "_button")]
○ 某元素的所有祖及元素 ancestor::
○ //div[@class="row-content-cell"]/ancestor::div
○ xpath 定位某属性不含某值的标签
○ //div[not(contains(@class, "active"))]
○ 去除元素文本两端的空格和回车,以及将连续的中间空格缩减为一个空格
○ //div[normalize-space(text())='Hello'] 可以选择文本为Hello(不含空格和回车)的div元素
○ Xpath定位某标签下最底层的标签
○ descendant //div[@id='container']/descendant::* 查找id为’container’的div标签下的所有标签
○ last() //div[@id='container']/*[last()] 查找id为’container’的div标签下的最后一个子标签
○ position() //div[@id='container']/*[position()=3] 查找id为’container’的div标签下的第三个子标签