使用IMPORTXML将ECB美元兑欧元汇率导入Google Sheets遇XPATH问题求助
解决Google Sheets IMPORTXML导入ECB美元兑欧元汇率的XPath问题
问题根源
你使用的XPath未适配目标XML的命名空间,ECB提供的这份XML文档中,DataSet、Series、Obs等核心节点都隶属于特定命名空间,直接写绝对路径会导致节点查找失败,最终返回空内容。
正确公式示例
获取日期序列(TIME_PERIOD)
=IMPORTXML("https://www.ecb.europa.eu/stats/policy_and_exchange_rates/euro_reference_exchange_rates/html/usd.xml", "//*[local-name()='Obs']/@TIME_PERIOD")
获取对应汇率值(OBS_VALUE)
如果需要提取汇率数据,使用以下公式:
=IMPORTXML("https://www.ecb.europa.eu/stats/policy_and_exchange_rates/euro_reference_exchange_rates/html/usd.xml", "//*[local-name()='Obs']/@OBS_VALUE")
逻辑说明
通过local-name()函数可以忽略XML的命名空间限制,直接匹配节点的本地名称,绕开因命名空间未声明导致的节点定位错误,确保IMPORTXML能正确抓取目标数据。
内容的提问来源于stack exchange,提问作者Breslau70
相关产品推荐
相关产品推荐

