在Google电子表格中使用XPath选择具有多个类似命名属性的属性值

时间:2016-01-17 04:21:53

标签: xpath google-sheets

我正在尝试选择Google Spreadsheets中某个属性的值来获得棋盘游戏的等级。

https://www.boardgamegeek.com/xmlapi/boardgame/127023?stats=1

在// boardgames / boardgame / statistics / ratings / ranking /下有两个名为“rank”的节点

第一个有type ='subtype',是我想要在'value'属性中返回值的那个(在写这个时它是'67'。

我正在尝试这个:

=IMPORTXML("https://www.boardgamegeek.com/xmlapi/boardgame/127023?stats=1", "//boardgames/boardgame/statistics/ratings/ranks/rank[@value]")

哪个不起作用。 (导入的内容为空)。

我可以选择节点中的值,例如:

=IMPORTXML("https://www.boardgamegeek.com/xmlapi/boardgame/127023?stats=1", "//boardgames/boardgame/statistics/ratings/average")

1 个答案:

答案 0 :(得分:1)

要获取属性value的值,请在@value之前添加斜杠。

"//boardgames/boardgame/statistics/ratings/ranks/rank/[@value]"

请注意,上面的xpath将返回2个值,即67和47。

如果您只想获取rank type="subtype",那么您可以使用以下xpath:

"//boardgames/boardgame/statistics/ratings/ranks/rank[@type='subtype']/@value"