text per div von ner page nehmen

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Benutzeravatar
habbi
Mitglied
Beiträge: 548
Registriert: 04.05.2005 16:20
Wohnort: Schweiz
Kontaktdaten:

text per div von ner page nehmen

Beitrag von habbi »

für bilder per div von einer page nehmen geht diese code:

Code: Alles auswählen

<?php
$s = file_get_contents("http://seite.ch/");
if (!stristr($s,'<div class="irgendnediv1">')){
  echo "Status nicht verfügbar";
}else{
  $dat = split('<div class="irgendnediv1">',$s);
  $dat = split('<div class="irgendnediv1">',$dat[1]);
  $dat = split("src=\"",$dat[0]);
  $dat = split("\"",$dat[1]);
  echo "<img src='http://seite.ch/".$dat[0]."'>";
}
?>
was was brauche ich für einencode für den text?
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

Am besten du bittest den Autor der Seite, dir die Inhalte in einem leicher zu parsenden Format (z.B. XML) zur Verfügung zu stellen.
KB:knigge
Benutzeravatar
habbi
Mitglied
Beiträge: 548
Registriert: 04.05.2005 16:20
Wohnort: Schweiz
Kontaktdaten:

Beitrag von habbi »

das machen die ee nicht :D
Xwitz
Mitglied
Beiträge: 1104
Registriert: 21.06.2005 21:41

Beitrag von Xwitz »

Kannst Du die Position (Anfang und Ende) des Textes im Quelltext durch irgendwelche Schlüsselwörter beschreiben?
Benutzeravatar
habbi
Mitglied
Beiträge: 548
Registriert: 04.05.2005 16:20
Wohnort: Schweiz
Kontaktdaten:

Beitrag von habbi »

jep

Code: Alles auswählen

	
<div class="profile-motto">
		Ferie:)
		<div class="clear"></div>
	</div>

		<div class="clear"></div>
		</div>
	</div>
ich möchte gerne das ferie:) automatisch von http://www.habbo.ch/home/so-la auslesen..
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Beitrag von gn#36 »

Wie wäre es mit etwas wie

Code: Alles auswählen

$ergebnis = preg_replace("#(.*?)<div class=\"profile-motto\">(.*?)<div class=\"clear\">(.*?)#is",'//2',$eingelesener_text);
Das ließe sich vermutlich noch verfeinern, aber generell sollte sowas in der Art gehen. Ob es eine gute Idee ist Inhalte anderer Seiten gegen den Willen des Autors zu verwenden ist eine andere ungleich wichtigere Frage... Ich würde es nicht machen, jedenfalls nicht ohne vorher zu fragen.
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Benutzeravatar
habbi
Mitglied
Beiträge: 548
Registriert: 04.05.2005 16:20
Wohnort: Schweiz
Kontaktdaten:

Beitrag von habbi »

dochdoch man darf das..
aber wie funktioniert dein code?
kann mir bitte jemand einen zusammenstellen?
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

Beitrag von fanrpg »

Code: Alles auswählen

<?php
preg_match("#". preg_quote('<div class="profile-motto">', '#') . "(.*?)" . preg_quote('<div class="clear"></div>', '#') . "#is", $data, $result);
echo $result[1];
?>
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Beitrag von gn#36 »

Wie du einen Text einliest hast du doch schon oben in etwa gepostet. Dann musst du nur den eingelesenen Text an die Funktion verfüttern (ich denke die Namen die den Variablen gegeben wurden sind einigermaßen selbsterklärend) und bekommst als Ergebnis den gewünschten Text.
Was du dann mit dem Text machst ist deine Sache, ich bin ja kein Hellseher und da es sich hier um Coding und Technik drehen soll gehe ich davon aus, dass du selbst in der Lage bist deinen eigenen Code zu modifizieren, ist ja nicht viel. Im Prinzip brauchst du ja nur die erste Zeile deines Skriptes zu verwenden + die gepostete.
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Benutzeravatar
habbi
Mitglied
Beiträge: 548
Registriert: 04.05.2005 16:20
Wohnort: Schweiz
Kontaktdaten:

Beitrag von habbi »

fanrpg hat geschrieben:

Code: Alles auswählen

<?php
preg_match("#". preg_quote('<div class="profile-motto">', '#') . "(.*?)" . preg_quote('<div class="clear"></div>', '#') . "#is", $data, $result);
echo $result[1];
?>
öhm..
danke aber es muss doch noch irgendwie die seite laden

---edit---
gn#36 hat geschrieben:Im Prinzip brauchst du ja nur die erste Zeile deines Skriptes zu verwenden + die gepostete.
ups nicht gesehen ;)
öhm und dann sollte das ganze gehen?
Antworten

Zurück zu „Coding & Technik“