我正在尝试使用 Google 电子表格在具有特定值时从元素返回@name
属性。<row>
@characterID
尝试使用以下内容时,Google 电子表格会出现“导入内部错误”:
=IMPORTXML(CONCATENATE("http://api.eveonline.com/account/Characters.xml.aspx?keyID=",Summary!$B$10,"&vCode=",Summary!$B$11),"//eveapi/result/rowset/row[contains(@characterID,'94492798')]/@name")
concatenate 函数提供了一个有效的 URL,并且http://www.freeformatter.com/xpath-tester.html在我使用时给出了我想要的东西
/eveapi/result/rowset/row[contains(@characterID,'94492798')]/@name
任何变化也都不起作用。例如//row[@characterID='94492798']/@name
有什么想法可以让它发挥作用吗?
编辑:仅供参考,它似乎不喜欢谓词。如果没有谓词,它将返回所有 3 行带有预期的 @name 属性,但不是我想要实现的。
编辑:根据 dirkk 的建议,这是相关的 XML:
<?xml version='1.0' encoding='UTF-8'?>
<eveapi version="2">
<currentTime>2014-04-23 16:33:25</currentTime>
<result>
<rowset name="characters" key="characterID" columns="name,characterID,corporationName,corporationID,allianceID,allianceName,factionID,factionName">
<row name="Tor Norman" characterID="94488288" corporationName="Brave Newbies Inc." corporationID="98169165" allianceID="99003214" allianceName="Brave Collective" factionID="0" factionName="" />
<row name="Tor Dodi" characterID="94492798" corporationName="University of Caille" corporationID="1000115" allianceID="0" allianceName="" factionID="0" factionName="" />
<row name="Tor Jita" characterID="94506820" corporationName="School of Applied Knowledge" corporationID="1000044" allianceID="0" allianceName="" factionID="0" factionName="" />
</rowset>
</result>
<cachedUntil>2014-04-23 17:28:22</cachedUntil>
</eveapi>