参考资料

  1. XPath 使用路径表达式在 XML 文档中选取节点
  2. xpath定位
  3. 常用正则表达式
  4. XPath 轴(Axes)
  5. XPath 基本语法
  6. XPath定位元素技巧
  7. xpath中的节点有多重类型不包括
  8. XPath 选取若干路径

XPath定位多个相同元素的方法

  1. 基本定位方法:

  • 使用元素标签名直接定位://tagname

  • 使用索引定位:[n](n从1开始)

  1. 常用属性定位:

  • @id://*[@id='value']

  • @class://*[@class='value']

  • @name://*[@name='value']

  • @type://*[@type='value']

  • 自定义属性://*[@attribute='value']

  1. 组合定位语法:

  • 逻辑与://*[@a and @b]

  • 逻辑或://*[@a or @b]

  • 包含://*[contains(@attr,'value')]

  • 开头匹配://*[starts-with(@attr,'value')]

  • 结尾匹配://*[ends-with(@attr,'value')]

  1. 位置定位方法:

  • 第一个://tagname[1]

  • 最后一个://tagname[last()]

  • 倒数第n个://tagname[last()-n]

  • 范围选择://tagname[position()>n and position()<m]

  1. 文本定位:

  • 完全匹配://*[text()='value']

  • 包含文本://*[contains(text(),'value')]

  1. 示例:

//div[@class='item'][1]  # 定位第一个class为item的div
//input[@type='text'][last()]  # 定位最后一个type为text的input
//li[contains(@class,'active')]  # 定位class包含active的li元素
//a[text()='登录']  # 定位文本为"登录"的a标签
//div[@id='main']//p[position()>1 and position()<5]  # 定位id为main的div下第2-4个p元素