ich habe gestern auch verzweifelt versucht den Text-Parser mal wieder zu nutzen und komme IMMER auf das Rule1 failed, selbst bei einer ganz einfachen Seite mit nur ~20 Zeichen um die 36 auszuschneiden
Sicher, dass es nicht irgendwelche Sonderzeichen gibt, die nicht sofort erkennbar sind? Oder Umlaute die nicht UTF-8 kodiert sind, können auch Schwierigkeiten machen
Versucht mal was „simpleres“ abzuschneiden, falls die volle Zeichenkette nicht geht.
also ich habe gestern bestimmt 4 std. damit zugebracht, etwas auszuschneiden. Meine anderen Textparser funzen einwandfrei. Es kann also wirklich nur an den Zeichen liegen, dass da irgendwas nicht passt.
Gerade noch mal einen neuen angelegt und mit funktionierenden Daten befüllt: läuft einwandfrei
das Problem sitzt vorm IPS
Ich benutze schon lange folgende Funktion, ist auch irgendwo im Forum und habe ich noch etwas angepasst. Damit parse ich „alles“.
// Diese Funktion trennt die relevanten Bereiche aus dem Ausschnitt heraus $string ist dabei der zu durchsuchende Gesamtstring,
// in $Mark sind durch "*" getrennt der Beginn des zu suchenden Strings und das Ende des zu suchende Abschnittes. Beispiel für den Text "<div>*</div></li>"
function get_mark($string,$mark) {
$ausgabe = array();
$template = explode("*",$mark);
$mark = $template[0];
$end = $template[1];
$string = strstr($string,$mark);
$temp = explode($mark,$string);
$a = 1;
foreach ($temp as $tempx) {
$tempx = explode($end,$tempx);
$tempx = $tempx[0];
if ($tempx) {
array_push ($ausgabe,$tempx);
}
}
return $ausgabe;
}
Beispiel Aufruf mit dem vorher geholten HTML (file_get_contents oder teilweise inzwischen CURL) in $Antwort
$datum = get_mark($Antwort, '<h4>*</h4>');
Die Elemente zum Filtern sollten eindeutig sein, sonst kommt ein Array zurück.
besten dank für das Script. Hatte ich auch schon darüber nach gedacht mir selber ein Script zu entwickeln, frage ist aber tatsächlich warum die Textparser im ersten Moment den Anschein haben nicht zu funktionieren.
Ist natürlich viel schöner eine Instanz zu haben wenn man mit viel mehr irgendwelche Datenstreams arbeitet.