You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何提取含冒号的XPath?Google Sheets IMPORTXML使用场景

Google Sheets IMPORTXML提取带命名空间标签值的解决方法

你的问题出在XML里的g:是命名空间前缀,Google Sheets的IMPORTXML无法直接识别这种带前缀的标签,再加上你用的XPath路径逻辑错误(//title/@g:id完全不符合XML结构,g:id是独立元素而非title的属性),导致提取失败。以下是两种可行的解决方法:

方法一:用local-name()匹配标签本地名

直接忽略命名空间前缀,匹配标签的本地名称:

  • 提取g:id的值:
    =IMPORTXML("你的XML源地址", "//*[local-name()='id']/text()")
    
  • 提取g:title的值:
    =IMPORTXML("你的XML源地址", "//*[local-name()='title']/text()")
    

原理:*匹配任意标签,local-name()='id'筛选出标签本地名为id的元素,/text()获取元素内的文本内容。

方法二:精准匹配带命名空间前缀的标签

如果XML中存在同名但不同前缀的标签(比如同时有<id>和<g:id>),可以用前缀匹配确保只提取目标元素:

  • 提取g:id的值:
    =IMPORTXML("你的XML源地址", "//*[starts-with(name(), 'g:') and substring-after(name(), 'g:')='id']/text()")
    
  • 提取g:title的值:
    =IMPORTXML("你的XML源地址", "//*[starts-with(name(), 'g:') and substring-after(name(), 'g:')='title']/text()")
    

原理:starts-with(name(), 'g:')筛选以g:为前缀的标签,substring-after(name(), 'g:')='id'确保前缀后的标签名是id,精准定位目标元素。

内容的提问来源于stack exchange,提问作者Ron

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 00:10:20