使用XPath解析包含冒号的元素名称

Chi*_*ins 6 xpath

所以我试图用XPath 解析一些WootAPI.我遇到的一个问题是,其中一些元素的名称中包含冒号,例如woot:pricewoot:condition.现在,尝试使用XPath //rss/channel/item/woot:price不会抓取元素的内容woot:price,因为冒号,我想.无论如何我还能做些什么呢?

Mad*_*sen 11

冒号是因为元素具有名称空间前缀并绑定到Woot名称空间.

您应该阅读XML命名空间以及它们如何影响XPATH和XSLT.

如果要在XPATH中引用Woot元素,您需要:

  1. 声明Woot命名空间,http://www.woot.com/以便在XPATH中使用该命名空间前缀时,可以理解它.
  2. 使用更通用的XPATH语句,该语句使用使用local-name()namespace-uri()匹配元素的谓词过滤器.
    • //rss/channel/item/*[local-name()='price' and namespace-uri()='http://www.woot.com/']