2017-05-20 10 views
1

Was ich versuche zu tun ist, Daten aus dieser XML extrahieren mit Google Text & Tabellen:Google-Tabelle: ImportXML und XPath

XML File

Nun dachte ich, dass dies eine leichte Aufgabe sein würde, und entschied sich für die ImportXML() Funktion mit folgendem XPath Stachel:

- =IMPORTXML("https://api.eveonline.com/map/FacWarSystems.xml.aspx", "//row[@owningFactionID='500002']") 

, die theoretisch jeden Eintrag in dem Dokument zurückkehren sollte, wo die owningFactionID ist 500002.

Problem ist, dass ich nur # N/A in der Google-Tabelle (leer) bekomme.

Wenn jemand mit dem, was ich hier falsch mache, helfen könnte, wäre ich sehr dankbar.

Antwort

1

Ihre Abfrage ist korrekt, aber die Zeilenelemente, die zurückgegeben werden, sind leer. Ich nehme an, Sie möchten die Attribute in jeder Zeile sehen. Sie müssen etwas wie verwenden:

=IMPORTXML("https://api.eveonline.com/map/FacWarSystems.xml.aspx","//row[@owningFactionID='500002']/@*") 
+0

Perfekt. Genau das wollte ich. – BlubQ

+0

Kleine Folgefrage: Gibt es eine Möglichkeit, dies in einem Array wie Zeile [1] zu Zeile [42] anzuzeigen, um zu sehen, wie viele der Elemente den Anforderungen entsprechen oder einfacher mit regex zu erreichen wären XML-Dokument? – BlubQ

+0

@BlubQ Ich bin nicht vertraut mit IMPORTXML. Ich denke, dass Sie mehr Glück hätten, den Skript-Editor zu öffnen und eine Funktion mit dem Skript apps zu schreiben, das den XML-Code in das gewünschte Format parst. https://developers.google.com/apps-script/guides/services/external#parse_xml –