id:findElement(By.id("kw"))
name:findElement(By.name("kw"))
class:findElement(By.className("kw"))
tagName:findElement(By.tagName("kw"))
linkText:findElement(By.linkText("kw"))
partialLinkText:findElement(By.partialLinkText("kw"))
在chrome浏览器中可以按下F12,右击copy再copy xpath,但是copy下来的定位,可能每次的表达式不一样,建议用相对定位,以//开头
属性格式(需要加@符号)://标签名称[@属性名称=‘属性值‘],如果需要匹配多个属性需要用 and 连接
例如:根据class属性匹配div标签://div[@class=‘test‘],根据class属性匹配所有元素://*[@class=‘test‘],多属性匹配://*[@class=‘test‘] and [@name=‘testName‘]
文本格式(不需要加@符号)://标签名称[text()=‘测试‘]
例如:根据文本精确查找span标签://span[text()=‘测试‘],根据文本模糊查找所有标签://*[contains()=‘测试‘]
轴名称:
ancestor:祖先结点 包括父
parent:父结点 给g
preceding: 当前元素节点标签之前的所有结点。(html页面先后顺序)
preceding-sibling: 当前元素节点标签之前的所有兄弟结点
following: 当前元素节点标签之后的所有结点。(html页面先后顺序)
following-sibling:当前元素节点标签之后的所有兄弟结点
原文:https://www.cnblogs.com/osmoba/p/14944220.html