反馈

xpath测试

元素树:点节点自动生成 XPath
点标签得到元素的 XPath,点属性得到 /@属性,点文本得到 /text();执行后匹配到的节点会高亮。
(先在上面粘贴 XML / HTML)
XPath 2.0 / 3.1 的函数和语法(如 matches()、for … in … return、! 映射、tokenize())在自动模式下会自动切到 3.1 引擎,首次使用需加载约 0.3 MB 的库。
结果显示在这里…

📖 工具说明

1. 这是什么

在浏览器里对一段 XML 或 HTML 试跑 XPath 表达式,立刻看到匹配到哪些节点。写爬虫(Scrapy / lxml / Selenium)或处理 XML 配置时,用来验证路径写得对不对,不用反复跑脚本。


2. 用法

  1. 把 XML 或 HTML 粘进内容框(点「示例」可载入一段书店 XML)。
  2. 选解析方式:按 XML 解析(严格,标签必须闭合)或 按 HTML 解析(宽松,容错,适合网页源码)。
  3. 选引擎:自动(默认,先用浏览器原生 XPath 1.0,遇到不认识的表达式自动改用 3.1 引擎)、XPath 1.0(只用浏览器原生)、XPath 2.0 / 3.1(FontoXPath)。
  4. 在表达式框写 XPath,回车或点「执行」。勾了「实时执行」就边改边跑。
  5. 结果区列出每个匹配节点的类型和内容,顶部显示匹配数量和所用引擎;「复制」把结果文本拷走。
  6. 不想手写表达式:展开「元素树」,点标签得到该元素的 XPath,点属性得到 /@属性,点文本得到 /text();可选「简短(优先 id / class)」或「绝对路径」两种风格。执行后匹配到的节点会在树里高亮。

3. 支持的返回类型

表达式形态 结果
//book/title 节点集,逐个列出元素、属性、文本、注释
//a/@href 属性节点,显示 名称="值"
//title/text() 文本节点
count(//book) 数字
string(//title) 字符串
//book[@category='tech'] 配 boolean(...) 布尔值
//book/title ! upper-case(.)(3.1) 值序列(映射运算符 !)
for $b in //book return $b/price * 2(2.0+) 值序列
//book[matches(title, 'Web')](2.0+) 节点集(正则函数 matches)

节点集超过 500 条时只显示前 500。


4. 说明


相关:JSON 编辑 · XML 格式化 · HTML 格式化 · XML 转 JSON · 正则测试。

只对你粘贴进来的文本求值,不访问真实网页 DOM,也不做带前缀的命名空间解析。

📖 了解原理

📖 相关推荐