Q01
到底该用 XML 模式还是 HTML 模式?
严格结构文档用 XML;真实网页源码或浏览器容错场景更适合 HTML 模式。
在 XML/HTML 上执行 XPath 查询
Quick CTA
先贴 XML / HTML 和 XPath 表达式,首屏直接看命中结果;解析模式说明放在 Deep。
下一步(Workflow)
Deep 展开踩坑、配方、片段、FAQ 与相关工具,适合排查问题或继续深入。
该工具用于在 XML 或 HTML 文本上执行 XPath 查询,并快速展示命中节点、属性或文本结果。适合抓取规则调试、XML Feed 提取验证、规则型转换配置核对等场景。你可以在严格 XML 与宽松 HTML 解析模式之间切换。所有处理都在浏览器本地完成。
Q01
严格结构文档用 XML;真实网页源码或浏览器容错场景更适合 HTML 模式。
Q02
常见原因是文档解析树和你想的不一样,或者 XPath 指向的节点 / 属性 / 文本根本不存在。
失败输入:/html/body/div[3]/div[2]/span
失败表现:页面轻微调整后抓错节点。
修复:改用语义锚点和条件谓词的相对路径。
失败输入:对带命名空间 XML 直接写无前缀 XPath。
失败表现:明明有节点却返回空结果。
修复:先注册命名空间,再使用显式前缀查询。
失败输入:生产规则依赖 `/html/body/...` 全路径。
失败表现:页面微调即出现 0 匹配。
修复:改用基于稳定属性的相对 XPath。
失败输入:忽略默认命名空间导致匹配为空。
失败表现:结果看似可用,但在下游消费阶段失败。
修复:执行最终处理前先统一输入并增加预检。
失败输入:脆弱绝对路径在轻微结构变更后失效。
失败表现:同一源数据在不同环境产出不一致。
修复:明确兼容约束,并用独立消费端做回归校验。
XPath 测试器 更适合放在真实输入与发布决策链路中使用,优先关注「一次性排查或临时调试」这类高风险场景。
目标:在把 XPath 放进爬虫、转换脚本或 QA 流程前,先确认它对真实样本有效。
结果:你可以在交互式环境里把选择器逻辑调顺,而不是在大流程里盲猜。
目标:在轻微结构改动后仍能稳定提取。
结果:解析鲁棒性更高,维护成本更低。
目标:让关键假设在进入生产流程前先被验证。
结果:返工减少,交接摩擦显著下降。
目标:把不稳定故障转成可重复诊断流程。
结果:恢复速度提升,值班差异降低。
原因:XML 解析很严格,而很多网页源码并不完全符合 XML 规则。
修复:网页源码优先试 HTML 模式,结构化 XML 再用 XML 模式。
原因:像 //a 和 //a/@href 返回的结果完全不同。
修复:先明确目标是元素、属性还是 text(),再定 XPath。
xpath
//a/@hrefXML 模式
适合严格 XML 规则和命名空间语境。
HTML 模式
适合网页源码、抓取片段和浏览器容错解析场景。
补充:解析模式本身会改变文档树,所以会直接影响 XPath 结果。
绝对路径
适合一次性调试固定页面。
相对稳健路径
适合长期抓取和自动化任务。
补充:相对路径比索引堆叠的绝对路径更抗页面改版。
文本匹配
适合文案稳定且无多语言变体场景。
属性匹配
适合多语言或 A/B 频繁变动页面。
补充:稳定属性通常能减少选择器抖动。
快速处理
适合时效优先且回滚成本低的场景。
受控流程
适合生产、合规或跨团队交付场景。
补充:XPath 测试器在有明确验收校验时最稳定。
一步执行
适合本地实验和一次性测试。
分阶段+复核
适合会影响下游系统或用户数据的结果。
补充:分阶段校验可避免静默漂移进入生产。
建议选:可用快速选择器定位问题后即弃用。
谨慎用:不要把临时路径直接放入生产任务。
建议选:采用属性驱动选择器并配回归测试。
谨慎用:避免长期依赖绝对索引路径。
建议选:相对 XPath + 语义锚点 + 备用规则。
谨慎用:避免与纯视觉层级强耦合的绝对路径。
建议选:使用快速处理并配轻量验证。
谨慎用:避免把探索结果直接升格为生产产物。
建议选:采用分阶段流程并保留验证记录。
谨慎用:避免无可回放证据的一步执行。
可以,切换为 HTML 模式即可对非严格 XML 内容执行查询。
XML 模式要求语法严格正确,例如闭合标签和实体转义必须完整。
支持,表达式使用 text() 时会返回匹配到的文本节点内容。
可以,例如 //@href 或 //item/@id 都可使用。
当前主要覆盖常见无命名空间场景,复杂命名空间建议使用专用解析方案。
不会,解析与查询都在浏览器本地完成。
继续浏览