【发布时间】:2020-11-18 14:49:36
【问题描述】:
我正在尝试在 Google 电子表格中创建一个股票列表(PH 股票),其中有一列包含最新价格,并将其与我设定的目标价格进行比较。今天下午我一直在尝试解析这个http://phisix-api.appspot.com/stocks/BPI.xml,但我无法获取标签内的值。
通读 XPath 文档,我认为它很简单:=IMPORTXML("http://phisix-api.appspot.com/stocks/BPI.xml", "//stocks/stock/price/amount") 遵循树的层次结构并跟踪我需要的标记。但这似乎不起作用。然后我尝试了=IMPORTXML("http://phisix-api.appspot.com/stocks/BPI.xml", "//stocks/stock/price/amount/text()"),因为无论如何我需要的是标签内的文本,但没有骰子。
Google 表格是否遵循特殊的编码/标准或格式?我唯一要做的就是通过使用=IMPORTXML("http://phisix-api.appspot.com/stocks/BPI.xml", "//@symbol") 来获得symbol 的值,我没有尝试其他任何方法。
我什至尝试了从https://xmltoolbox.appspot.com/xpath_generator.html 生成的 Xpath,即:/stocks[@xmlns="http://phisix-api.appspot.com/phisix-stocks"]/stock[@symbol="BPI"]/price/amount ,但它不起作用。
有什么建议吗?
【问题讨论】:
-
生成的 XPath 是垃圾——在 XDM 数据模型中,永远不会有一个名为“xmlns”的属性。但它揭示了问题的原因,Yitzhak 已经为您解决了。
标签: xml xpath google-sheets-formula