iframe automatisch speichern

(So. Angemeldet. Erster Beitrag. Einiges zittern, ob Forenregeln eingehalten werden. Achso. Die Frage:)

Ich habe da eine Seite, die ich innerhalb eines php-Skripts speichern möchte. Leider geht
PHP:
$filestr = file_get_contents($link);
nicht. Warum auch immer (Ihr seht: Ein echter Profi am Werk.)
Ich kann die Seite aber als iFrame - innerhalb meines php-codes - anzeigen lassen:
HTML:
<iframe src=$link width=\"500\" height=\"200\" name=\"ebox\"><p>Klappt nich mit dem iFrame</p></iframe><br>";
Wie kann ich mittels php, oder auch java, den Inhalt des iFrames in einer Datei ablegen? Die Antwort ergooglen blieb - für mich jedenfalls - erfolglos.
Danke, GWB
(Nurso, weil ich gelesen habe, dass bei iFrames viele Nutzer allergisch reagieren: Meine Anwendung ist richtig banal und legal. Interessiert das jemanden zur Vergewisserung, Motivation oder Abrundung, wofür ich das einsetze?
 
Meine Anwendung ist richtig banal und legal. Interessiert das jemanden zur Vergewisserung, Motivation oder Abrundung, wofür ich das einsetze?

Ja.

Wenn's legal ist, kannst du ja mal den Link posten, den du includen willst.
Wobei ich an der Legalität zweifel, da das Einlesen einer fremden Seite und Darstellen auf der eigenen normalerweise ein unrechtmäßiges zu-eigen-machen fremden Inhalts darstellt...
 
Meine Chefs sind Anwälte und wollen bei neuen Mandanten und deren Prozessgegnern immer einige Standard-Infos recherchiert haben. Bisher machen das die Sekretärinnen immer von Hand: Telefonbucheintrag, website, Handelsregister und ein paar andere öffentlich zugängliche Datenbanken.
Alles, was ich jetzt machen soll, ist, die Daten automatisch abzurufen und in der Mandantenakte zu speichern. Für den Handelsregisterabruf (und weitere Datenbanken) zahlen wir übrigens auch im Zuge des Abrufs. Es geht nur darum, meine Kolleginnen zu entlasten und denen auf Knopfdruck die üblichen Infos zur Verfügung zu stellen. Unverändert übrigens, sonst wären die Infos ja nicht zu gebrauchen.

Den Link, um den es mir geht, kann ich Dir nicht posten, weil der hinter der Zahlung bei handelsregister de liegt: Wir haben gezahlt, dürfen die Zielseite auch nutzen (ausdrücklich speichern, drucken), nur bekomme ich das nicht automatisch hin.

Gruß, GWB
 
wenn du's mit PHP lösen willst: versuch's mal mit "cURL" ...

wie hast du vor, das mit PHP zu lösen? Hast du dort 'ne Windows-Kiste mit XAMPP drauf (welcher dann hoffentlich unter keinen Umständen von außen erreichbar ist - außer er wurde sehr gut von Hand abgesichert) oder 'ne Linux-Kiste mit Apache+PHP oder wie sieht die Ausrüstung so aus?

Bei 'ner Linux-Kiste wäre es ganz einfach, die nötigen curl-libs und das notwendige PHP-Modul über das Repository der Distri nachzuinstallieren.

In wie weit cURL schon im XAMPP dabei ist oder sich möglichst einfach einrichten lässt, müsstest du mal googeln

Und solltest du die Daten auch gleich noch automatisiert auswerten wollen (wenn z.B. die Rückgabe immer im gleichen Format ist), dann solltest du dir noch Reguläre Ausdrücke anschauen
 
Hm. Danke.

Das Skript sitzt auf einem Debian-Rechner, an dem ich nicht rumbasteln darf/will. Ob ich den Betreuer dazu bekomme curl freizugeben, weiß ich nich.

Finde ich aber auch nich so elegant: Die Frameinhalte sind ja da, ich kann sie nur nicht direkt speichern. Erstaunlich, dass das mit php nicht geht.

Mir wäre ja auch mit einem (nicht existenten) Firefox-addon geholfen.

Ich habe das Skript mal ganz schlicht mit wget (lokal, nicht auf dem Debian-Server) ausgeführt. Wenn ich die wget-Download-Datei mit Firefox öffne, sind die iframe-Inhalte gespeichert. Wenn ich mir die Download-Datei mit gedit anzeigen lasse, ist da nix mehr außer den ursprünglichen Links. Wenn ich diese DL-Datei auswerten könnte, wäre für meine Zwecke die Welt in Ordnung.

Dennoch nagt, dass es keine einfache und einigermaßen sichere Möglichkeit zur Ausgabe von iframe-Inhalten in eine Datei zu geben scheint.

Danke jedenfalls für Deinen curl-Verweis.

Gruß, GWB
 
wenn du ein Frameset ziehst, dann musst du selbstverständlich dieses auswerten (z.B. mit regulären Ausdrücken), auf dass du die einzelnen URLs bekommst, welche im Frameset geladen werden und dann musst du die Seite, auf die es ankommt ziehen.

soweit das bei dir auch mit file_get_contents() klappt (solchen Funktionen wird auf vernünftig abgesicherten Servern untersagt, andere Websites zu öffnen... da es bei dir anscheinend nur eine lokale Kiste ist, die nicht von außen erreichbar ist (oder?), ist's ja nicht ganz so tragisch...) kannst du das natürlich auch darüber machen und brauchst nicht extra cURL.

cURL wäre halt eigentlich die sauberere Lösung.

und ja, wget kann auch die Inhalte der Frames speichern, du musst ihm nur die nötigen Parameter übergeben.

"wget --help" bzw. "man wget" sollten da ganz hilfreich sein ;-)
 
hm. versuche es seit vorgestern ausdauernd mit Abwandlungen von:

wget -rH -l1 http://lokaleURLdietatsächlichnichvonaussenzugänglichis --follow-tags=iframe

geht aber nich. Im Firefox sehe ich, wenn ich die URL aufrufe, alle Frames, wget läd nix außer der zusammenfassenden Skriptseite mit den übrigen gesuchten Informationen.

Aber ich stelle die auf der Zunge liegende Frage lieber nicht: Du hast nicht alle erforderlichen Infos und die Frage nach den richtigen Parametern für wget gehört nun wirklich nich hierher.

// Edit by Mackz: Bitte keine farbigen Texte verwenden! Textfarben bitte nur höchstens zum hervorheben einzelner Begriffe verwenden. Denkt bitte daran das wir verschiedene Styles anbieten, auf denen die Texte lesbar sein sollen. In diesem Beispiel: "Silver" auf weißem Hintergrund kommt nicht gut ....
 
Zurück
Oben