Hallo, sorry für die späte Antwort.
Okay, anbei das gesamte Stück Code.
Im wesentlichen will ich eine Fernsehprogramm-Webseite scrapen. Dort interessieren mich nämlich genau fünf Sender, deren Programm ich gerne übersichtlich auf einen Blick OHNE Clutter dargestellt bekommen will (sind sonst fast überall zwei bis drei Klicks, einfach ärgerlich).
Ist auch eigentlich keine große Sache, da nur für mich und mein engeres Umfeld als Zielgruppe relevant - trotzdem treiben mich Ausgaben wie Homicide Hunter â[][] Dem Mörder auf der Spur
einfach in den Wahnsinn
$domDoc = new DOMDocument('1.0', 'UTF-8'); // vorher new DOMDocument(), Idee © Raketenwilli
@$domDoc->loadHTMLFile( $siteURL );
/* ~~~~~~~~~~~
Schiefgelaufene Alternativen, die Codierung richtig hinzubekommen:
@$domDoc->loadHTMLFile( mb_convert_encoding('https://www.tele.at/tv-programm/jetzt-im-tv.html', "UTF-8") );
@$domDoc->loadHTMLFile( '<? xml encoding="utf-8" ?>' . 'https://www.tele.at/tv-programm/jetzt-im-tv.html' );
*/
$xPath = new DOMXPath($domDoc);
$bcItems = $xPath->query("//div[@class='bc-item']");
$relevantenProgramme = [];
forEach($bcItems as $bcItem) {
$anchors = $bcItem->getElementsByTagName("a");
$arrayOfSendeinhalte = [];
forEach($anchors as $anchor) {
$arrayOfSendeinhalte[] = $anchor->getAttribute("title");
}
if (in_array("ARD", $arrayOfSendeinhalte) ||
//in_array(...//weitere Sender
) {
$trimmedArray = array_map('trim', $arrayOfSendeinhalte);
$result = array_filter($trimmedArray);
$result = array_values($result);
$relevantenProgramme[] = $result;
}
}
$relevantenProgrammeEncoded = json_encode($relevantenProgramme);
echo $relevantenProgrammeEncoded;