Ich hatte ja kürzlich hier einen Tipp zum youtube-Download verbreitet. Der ein oder andere wird, so wie ich, sicher auch Interesse an dem ein oder anderen youtube-Channel habe. Aber nervt euch auch dieses permanente Auffordern am Ende der Videos den Kanal zu abonnieren und die „Glocke“ zu drücken? Bin ich ein Pawlow’scher Hund, den man mit Glocke konditionieren muss? Die Zeiten von Erinnerungs- und Benachrichtigungsmails von Hinz und Kunz sind eigentlich vorbei. Nicht jeder will einen youtube/Google-Account oder möchte datensparsam youtube nutzen, ohne dass über seinen Account Nutzungsdaten erhoben werden.
Dafür ist ein RSS-Feed als Pull-Medium eigentlich ideal. Damit kann man ohne Registrierung sich die neusten Beiträge einer Website anzeigen lassen, bekommt einen Überblick und kann dann auswählen. Daten- und traffic-sparsam, übersichtlich in einem Feed-Reader alle öffentlichen Blogs, News, whatever in der eigenen RSS-Feed-Zeitung mit Chefredakteur und Leser in Personalunion. Wär doch schön wenn das auch mit youtube ginge, statt diesem Glocke-Bimbam, oder?
Die gute Nachricht: es geht. Youtube bietet selbst einen RSS-Feed für alle Channels an und zwar in der Form
https://www.youtube.com/feeds/videos.xml?channel_id=
der allerdings nirgends auf den Channel-Seiten zu finden ist.
Nur sieht das in meinem Feed-Reader (Sage) doch sehr bescheiden aus. Nicht mehr als Überschrift und Datum. Keine Beschreibung oder Zusammenfassung. Irgendwie schade.
Aber auch hier: es geht besser. Denn wenn man sich den XML-Quelltext des youtube-channelfeeds ansieht, dann sieht man, dass die Beschreibungsinfos, die immer unter den Videos drunter stehen, sehr wohl enthalten sind, allerdings unformatiert und in einer Syntax, die wohl manche Feed-Reader nicht zu interpretieren verstehen.
Aber auch hier kann der gewiefte User youtube austricksen. Wenn man auf seinem Computer (oder im Netz) einen Webserver mit PHP-Modul laufen hat, dann kann man damit den HTML/XML-Code beliebiger Webseiten verändern. Brauch man ein paar PHP-Grundkenntnisse und genug Spieltrieb für kontruktive Ergebnisse. Ein einfaches Beispiel, das Bilder aus einem RSS-Feed entfernt:
$url=$_GET["url"];
$test = file_get_contents($url);
$test = str_replace("img src", "! img src", $test);
$test = str_replace("jpg", "xxx", $test);
$test = str_replace("jpeg", "xxx", $test);
$test = str_replace("png", "xxx", $test);
echo $test;
Das ist sehr praktisch wenn der RSS-Feed von merkbefreiten Deppen-Admins programmiert und gefüttert wird und irgendwann eine Mega-Seite mit Dutzenden hochauflösenden Bildern immer wieder abgerufen wird. Wenn ich Bilder sehen will ruf ich die Seite auf. Beim Überblick stören die nur.
Nun ein etwas komplizierteres Beispiel, das die Syntax des youtube-Feeds manipuliert und den Beschreibungstext formatiert:
$url = $_GET["url"];
$test = file_get_contents($url);
$test = str_replace("media:", "", $test);
$test = str_replace("<group>", "", $test);
$test = str_replace("</group>", "", $test);
$test = str_replace("<description>", "<content type=\"html\"><![CDATA[<p>", $test);
$test = str_replace("</description>", "</p>]]></content>", $test);
$test = str_replace("
", "</p>\n<p>", $test);
$test = str_replace("\n", "<br />\n", $test);
$test = str_replace("><br />", ">", $test);
$test = str_replace(" <br />", " ", $test);
echo $test;
Das sollte bei einer Vielzahl von youtube-Feeds die Beschreibung lesbar machen. Kann im Einzelfall natürlich anders sein.
Da ich in letzter Zeit öfters nach in diesen Zeiten interessanten Quellen gefragt wurde, demnächst an dieser Stelle eine Auswahl von Websites, die RSS-Feeds anbieten und die sich anbieten in die eigene Zeitung einzubauen.
Gerade herausgefunden: man kann sich mit dem youtube-Feed auch einzelne playlist-Feeds erzeugen lassen. Einfach in der obigen URL „channel“ durch „playlist“ ersetzen und natürlich die playlist_id angeben. Das Problem dabei ist allerdings, dass darin kein „alternative“ Link zur Playlist-Seite mehr enthalten ist. Mein Feed-Reader-Addon (Sage) kann dann den Titel nicht mehr verlinken.
Es sind aber alle notwendigen Informationen enthalten und daher kann man auch hier den Quelltext manipulieren:
Ob die playlist_id immer genau 34 Stellen hat, hab ich jetzt noch nicht überprüft. Ggf. müsste man auch das Ende der playlist_id dynamisch ermitteln
Es ist mal wieder soweit: die Deppen-Admins haben wieder zugeschlagen.
Ich interessiere mich ja ausbildungsbedingt noch für den ein oder anderen Wissenschaftsbereich u.a. für Astronomie und folge da zwei Blogs auf einer Wissenschaftswebsite, die es leider nicht mehr wert ist genannt zu werden. Wer nicht ganz auf den Kopf gefallen ist, wird aber leicht herausfinden von welcher Wissenschaftswebsite ich spreche.
Rein inhaltlich sind die Blogs interessant, aber die technische Umsetzung eine Katastrophe, wofür die Autoren der Blogs dort nur bedingt etwas können, denn sie sind dort auch nur User ohne Adminrechte. Nichtsdestotrotz glänzten diese gleichermaßen durch technische Merkbefreitheit und kommunikative Inkompetenz. Akademische Bildung schützt eben nicht vor Elfenbeinturmmentalität.
Nachdem ich im Supportblog dieser Website von den Admins grundlos nur angepflaumt wurde, hatte ich es ja schon lange aufgegeben da irgendwas für die Pflege des RSS-Feeds zu erreichen, weshalb ich diesen auch durch meinen PHP-Filter laufen liess um einen brauchbaren Feed zu bekommen. Als ich jetzt allerdings nach einem Monat (da in meinem Monats-Feedordner) wieder reinschaue, sehe ich nur noch eine weiße Seite. Da schienen wieder die Deppen-Admins am Werk, den einen Monat zuvor ging es noch. Und nach längerem experimentieren bestätigte sich das: die Deppen-Admins hatten die gesamte Website auf HTTPS umgestellt und irgendwie haben sie es geschafft, die gesamte Website mit einem gültigen Zertifikat zu versehen, nur den RSS-Feed nicht. m( Die Feed-URL ist nur noch mit HTTPS aufrufbar, aber es wird kein gültiges Zertifikat übertragen und da bricht das PHP-Script wegen unsicherer Verbindung einfach ab.
Im PHP-Script nicht so ohne weiteres erkennbar, aber mit curl
Was bei curl noch mit -k/–insecure als Option relativ einfach ist, sieht für PHP etwas komplizierter aus:
Damit funktionierten meine Scripte wieder. Und da der eine Blog den ganzen August mit einem nervigen Sommerrätsel zugepflastert war gleich noch der Code mit dem man nach Stichwörter Feed-Einträge herausfiltern kann:
Da nun auch der youtube-Kanal von Rubikon von youtube ohne Ankündigung oder Begründung seitens youtube/Google gelöscht wurde, geht es auf bitchute weiter und der RSS-Feed hat die Form
Wichtig: der Channelname ist nicht die kryptische ID sondern der „Realname“ des Channels also im Fall von Rubikon
Neben bitchute ist auch LBRY eine Alternative zur youtube-Zensur. Die Feeds haben die Form