mit Javascript Daten aus IFrame auslesen
Max Smily
- javascript
Hallo Forum,
ich möchte in eine Seite eine Wetterinformation einblenden. Dazu nehme ich den Service von wetter.com in Anspruch, möchte aber mein eigenes Design haben. Dafür will ich die Standardausgabe von wetter.com in ein 1x1 Pixel großes Iframe laden, dann die relevanten Daten mit JavaScript auslesen und diese dann neu gestaltet auf meiner Webseite ausgeben.
Soweit die Therorie.
In der Praxis scheitere ich daran, dass ich nicht an die DOM-Struktur des eingebundenen HTML-Dokuments rankomme. Das Dokument selbst wird von wetter.com mittels JavaScript generiert. Über den Dom-Inspektor von Mozilla kann ich jeden Knoten anspringen. Selbst gelingt es mir aber nicht.
ähnliches Beispiel anhand der Google-Seite:
<iframe src="http://www.google.de" width="200" height="200" name="google"></iframe>
<script type="text/javascript">
alert(parent.google.document.getElementsByTagName("form").length);
</script>
Die Alert-Ausgabe müsste ein Form-Tag finden und somit den Wert 1 anzeigen. Tut es aber nicht, es zeigt 0 an. Auf Childs und deren Datas kann ich auch nicht zugreifen.
Geht es vielleicht gar nicht, per JavaScript externe Seiten auszulesen? Oder hab ich einen Denkfehler?
Viele Grüße
Max Smily
Hallo Max Smily,
Die Alert-Ausgabe müsste ein Form-Tag finden und somit den Wert 1 anzeigen.
Du kannst nur auf elemente zugreifen, wenn sie unter der selben Domain zu finden sind. Gehört Dir die Seite nicht, so hast Du kein Recht, etwas dort auszulesen oder zu manipulieren.
Mit freundlichem Gruß
Micha
Hallo Max,
es widerspricht der Same-Origin-Policy der Browser, Daten über Domaingrenzen hinweg mit Javascript auslesen zu wollen, das ist auch gut so. Vergiss es also!
Gruß Gernot