Was @vitusson sagt, stimmt leider nicht zu 100%. Es gibt faktisch bei MediathekView kein eindeutiges equals(), und das ist richtig so: Viele gleiche Sendungen tauchen mehrmals, auch bei verschiedenen Sendern auf, was unvermeidlich ist, denn es reicht ein kleiner Unterschied in der Titel(anzeige), Beschreibung oder URL von Sender zu Sender bei gleichem Video, ganz abgesehen von Wiederholungen oder separaten Filmen für Einzelbeiträge in Reportagen. Ich habe das mit einer eigenen Implementierung mal ausprobiert, und es ist hilfreich das groupBy() erst nachträglich auf die Suchergebnisse anzuwenden, sodass man nach eigenen Kriterien zusammenfassen kann. Am ehesten eignet sich die primäre Video-URL, offenbar mit Ausnahmen von KIka und SRF, wo man dann ausweichen muss.
ID bei verschiedenen Implementierungen:
In mtv_cli:
hashlib.md5((sender+thema+titel+datum+zeit+url).encode('utf-8')).hexdigest()
(but this creates several objects for the same video stream URL)
In MLib:
public String getIndex() {
// liefert einen eindeutigen Index für die Filmliste
// URL beim KiKa und ORF ändern sich laufend!
return (arr[FILM_SENDER] + arr[FILM_THEMA]).toLowerCase() + getUrl();
}
public String getIndexAddOld() {
// liefert einen eindeutigen Index zum Anhängen einer alten Liste
return arr[FILM_SENDER] + repl(arr[FILM_THEMA]) + repl(arr[FILM_TITEL]);
}
Außerdem: Wenn eine Sendung nur bei einem Sender auftaucht, macht dies das Suchkriterium “Sender” sinnlos. Eine gute und vollständige Suche ist das A und O bei MediathekView, was ich auch in Hinblick auf die gekürzte Beschreibung anspreche.