Google spreadsheet ImportXML Fehler:"die Abfrage hat keine Daten zurückgegeben"
Ich weiterhin bekomme diese Fehlermeldung, wenn ich versuche, führen diese XPath-Abfrage
//div[@iti='0']
auf diesen link (flight search von google)
https://www.google.com/flights/#search;f=LGW;t=JFK;d=2014-05-22;r=2014-05-26
Bekomme ich so etwas wie dieses:
=ImportXML("https://www.google.fr/flights/#search;f=jfk;t=lgw;d=2014-02-22;r=2014-02-26";"//div[@iti='0']")
Ich überprüft, und der XPath korrekt ist (bekomme ich die Antwort, wollte mit Hilfe von XPath-Helfer, die Antwort wollte sind die Daten relativ zu der ersten gewählten Flug).
Denke ich, dass es ein problem der syntax, aber ich habe versucht, mehr oder weniger alle Kombinationen von groß - /Großschreibung, Interpunktion (austauschen ; , ' ") und ich habe versucht, link-die URI und die XPath-Abfrage, die gespeichert in den Zellen, aber nichts funktioniert.
Jede Hilfe wird geschätzt.
- Google verwendet eine Menge javascript im Grunde überall, und Sie können sich offensichtlich ändern, deutlich den base-HTML-Code. Was verwenden Sie zum abrufen der Seite? Haben Sie das HTML ist, wie erwartet, in welchem Kontext Sie versuchen, anwenden von xpath aus? Und, btw, was ist in diesem Kontext (Sprache/Werkzeug...)?
- gut, ich versuchte es mit mehrere sucht, die -iti='0'- ist der beste Weg, um dieses Element. Trotzdem versuchte ich auch mit einer ähnlichen Abfrage von Kajak und ich bekomme das gleiche problem. Ich glaube wirklich, das Problem liegt in der syntax der ImportXML. In Bezug auf den Kontext, ich bin mit Google-Tabellen, und ich möchte, um zu finden die beste Kombination von Ziel - /Ausgangspunkt für Ausflüge.
- Was ich meine ist, sind Sie sicher, dass die HTML-erhalten Sie in der Tabellenkalkulation ist die gleiche wie die, die Sie verwendet, um zu wählen
iti='0'
für Kriterien. Die Ausgabe von Chrom, nach js Ausführung und iframe abgerufen, werden möglicherweise anders aus, was die Tabellenkalkulation erhält. Haben Sie überprüfen Sie die gesamte Seite ist wie erwartet nach dem Import in die Tabelle? Die syntax der ImportXML scheint funktional auf andere Beispiele. - ok, ich verstehe, was du meinst, ich bin die Erkundung der xml-gesehen aus der Tabelle, es ist eigentlich ganz anders, mal sehen, ob ich etwas finde.
- Ja, ich sah in ihm ein wenig selbst und es scheint, dass die
body
Ihrer Webseite ist fast leer, alles, was erzeugt wird durch javascript in Ihrem browser (BTW wenn Sie die überprüfung in Chrom,F12
zeigt die interpretierten HTML-undCtrl+U
den raw-code). Google mag es nicht, analysiert wird. Lassen Sie mich wissen, wenn du nichts anderes findest, aber das ist wohl Ihr problem. - es jetzt wieder versuchen. Ich habe überprüft dies am 5. Mai und anscheinend gelöst haben, die ImportXML, zumindest die, die ich auf dem alten google sheets sind nun die arbeiten an dem neuen google sheets!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Als eine Angelegenheit von der Tat, vielleicht ist es ein Fehler auf der neuen google sheets oder Sie haben sich verändert, wie die Funktion arbeitet. Ich habe mine aktiviert und wenn ich versuche, mit der ImportXML es einfach nicht funktionieren. Da habe ich einige alte Blätter hier (auf der alten Mechanismus) Sie noch normal arbeiten. Wenn ich kopieren und fügen Sie das Skript von der alten auf die neue, man wird Sie einfach nicht bekommen keine Daten.
Hier ein Beispiel:
Wenn ich dieses auf den alten Mechanismus funktioniert es einwandfrei, aber wenn ich das gleiche auf den neuen Mechanismus, es wird zunächst eintauschen ";" für ein "," und dann wird es ein "#N/a" mit Einer Warnung: "Error: Importierte XML-Inhalte können nicht analysiert werden".
Bearbeiten (05/05/2015):
Ich bin glücklich zu sagen, getestet habe ich diese Funktion heute mal wieder auf die neue Tabellen-und Sie haben es behoben. Ich war die überprüfung, dass alle zwei Monate, und jetzt endlich haben Sie dieses Problem gelöst. Das Beispiel habe ich oben Hinzugefügt, ist jetzt ausgeben von Informationen.
Tut mir Leid, aber Sie nicht in der Lage sein leicht analysieren Google-Ergebnis-Seiten. Der Grund Ihrer Funktion wirft einen Fehler, weil der Inhalt der Seite, die Sie sehen in Ihrem browser erzeugt durch javascript-und Google-Tabelle nicht ausführen js.
Ihre
ImportXML
hat das Recht, syntax, es nichts zurückgibt, weil die Knoten, die Sie suchen gibt es nicht (importXML Parse Error).Haben Sie zu finden eine andere Quelle, wenn Sie wollen dieses Ergebnis in Ihre Tabelle ein. Zur info einige Bibliotheken bereits analysieren, die üblichen Ergebnisseite (http://www.seerinteractive.com/blog/google-scraper-in-google-docs-update zum Beispiel, ob es noch funktioniert), aber ich bezweifle, dass das finden einer für Ihren speziellen Fall leicht sein wird.
Dieser gibt die Antwort (importXML Parse Error), aber es ist nicht ganz offensichtlich.
ImportXML nicht das laden von Javascript. Wenn Sie bauen ImportXML-Abfragen, die auf Google-Ergebnisse zu erzielen, stellen Sie sicher, dass Sie die Prüfung gegen eine version der Seite, die Javascript deaktiviert ist. Sie können dies tun, mit den Chrome DevTools.
(Aber ich Stimme zu, dass ImportXML ist launisch, eigenwillig, und in der Regel Wut-induzierende).