Das neue Forum ist hier erreichbar:

https://forum.mediathekview.de



Website "mediathekdirekt.de" für Desktop/Smartphone/Tablet

Absprache bei der Programmierung von Erweiterungen/Änderungen,

Moderator: styrol

Website "mediathekdirekt.de" für Desktop/Smartphone/Tablet

Beitragvon martin776 » 31 Mär 2014, 14:07

Hallo,

ich habe eine Website entwickelt, eine Art Web-Frontend für die MediathekView.
Funktioniert in allen Browser (IE ab ca. v10) und insbesondere auch *Tablets und Smartphones*.

So sieht's ungefähr aus:
Bild
Die Links führen direkt zur mp4, daher klappts auf jedem Smartphone, dank MediathekView.

Mediatheken - Suche v0.2

Die Software steht unter der Lizenz GPLv3:
GNU GENERAL PUBLIC LICENSE, Version 3
http://www.gnu.org/licenses/gpl-3.0.txt

Die Mediatheken-Suche besteht aus einem serverseitigen
Python-Skript, das die Daten downloaded und sortiert
als zwei JSON-Dateien speichert, und einer
clientseitigen HTML-Javascript-Seite als "Suchmaschine".

- mediathek.py : serverseitiger täglicher Sammeldienst
- index.html : clientseitige Suchmaschine
- mediathek.xml : Linkliste für Datenquellen
- mediathekensuche.png
- mediathekensuche.svg
- INSTALL.txt (diese Anleitung)

automatisch generiert:
- good.json : sehr relevante Suchdaten (~500 kB)
- medium.json : relevante Suchdaten (~3 MB)
- mediathek.log


Installationsanleitung:

1. Die Dateien aus der angehängten mediathekensuche.tar auf den eigenen Webserver kopieren. Gehen
wir davon aus, die Dateien sind jetzt in /var/www/mediathek_ordner/
Zugriffsreche vernünftig setzen (müsste bei der angehängten mediathekensuche.tar schon stimmen):
Code: Alles auswählen
  cd  /var/www/mediathek_ordner/
  chmod 644 *
  chmod 744 *.py
  chmod 600 full.json


2. Auf dem Server die Abhängigkeiten für mediatheken.py installieren,
z.B. in Ubuntu/Debian:
Code: Alles auswählen
  sudo apt-get install python-lzma python-lxml


3. Zeitgesteuerten dreistündlichen Cronjob hinzufügen:
Code: Alles auswählen
   (crontab -l ; echo "0 */3 * * * cd /var/www/mediathek_ordner/ && ./mediathek.py >> mediathek.log 2>&1")| crontab -

alternativ "crontab -e" ausführen und folgende Zeile von Hand einfügen:
0 */3 * * * cd /var/www/mediathek_ordner/ && ./mediathek.py >> mediathek.log 2>&1
alternativ aus nur täglich sammeln:
Code: Alles auswählen
0 21 * * * cd /var/www/mediathek_ordner/ && ./mediathek.py >> mediathek.log 2>&1


4. Einmal testen:
Code: Alles auswählen
  ./mediathek.py

(sollte keine Fehler werfen)

5. Im Webbrowser die Adresse von index.html ansteuern und
die Mediatheken-Suche verwenden.


Viel Spass damit!
Dateianhänge
screenshot.png
(93.41 KiB) 181-mal heruntergeladen
mediathekensuche.tar
(50 KiB) 187-mal heruntergeladen
martin776
 
Beiträge: 6
Registriert: 31 Mär 2014, 13:50

Re: Website "Mediathekensuche" für Desktop/Smartphone/Tablet

Beitragvon siedlerchr » 01 Apr 2014, 09:36

Hi,

das klingt erstmal cool! Werde das später mal ausprobieren:

Die Links führen direkt zur mp4, daher klappts auf jedem Smartphone, dank MediathekView.

Hi, du weißt schon, dass es einige Filme gibt die nicht als mp4 vorliegen? (FLV-rtmp, m3u8)?

Grüße
siedlerchr
siedlerchr
 
Beiträge: 498
Registriert: 07 Aug 2012, 20:49

Re: Website "Mediathekensuche" für Desktop/Smartphone/Tablet

Beitragvon martin776 » 02 Apr 2014, 14:06

Die HTML-JS-Client-Webseite übernimmt eigentlich nur die Film-URLs von MediathekenView.
Das heißt alle Typen werden als gewöhnlicher Link ausgegeben.
Nur dass mp4 alle modernen Browser, auch Smartphones und Tabletts schön direkt anzeigen
können und für die übrigen Typen vermutlich das Betriebssystem herangezogen wird.

Was ein gutes Feature ist: Ich verwende die Weboberfläche mittlermeile regelmäßig
um auf meinem Android-Tablett mit Firefox ein paar Sendungen zu speichern und dann später
während Zugfahrten etc. in Ruhe zuschauen.
martin776
 
Beiträge: 6
Registriert: 31 Mär 2014, 13:50

Re: Website "Mediathekensuche" für Desktop/Smartphone/Tablet

Beitragvon styrol » 02 Apr 2014, 15:49

martin776 hat geschrieben:Die HTML-JS-Client-Webseite übernimmt eigentlich nur die Film-URLs von MediathekenView.
Das heißt alle Typen werden als gewöhnlicher Link ausgegeben.

Eben genau das ist das Problem, wenn du rtmp-gestreamte Videos oder URLs mit der Endung m3u8 hast (Playlist). Da ist kein direkter Download möglich.

martin776 hat geschrieben:Nur dass mp4 alle modernen Browser, auch Smartphones und Tabletts schön direkt anzeigen
können und für die übrigen Typen vermutlich das Betriebssystem herangezogen wird.

Im besten Falle fühlt sich (auf dem Computer) VLC zuständig, der dann aber Default auch nur abspielt und kein Stream-Dumping macht
rtmp ist das "Flash-Protokoll" - ohne FlashPlayer-Plugin sagt der Webbrowser "kenn ich nicht" und wenn nicht richtig eingebettet, fühlt sich auch das FlashPlayer-Plugin nicht zuständig:
rtmp://gffstream.fcod.llnwd.net/a792/e2 ... _web-l.mp4 (Bsp-Sendung)

Flash gibt's auf iOS nicht. Ob man die URL-Handler auf mobilen Systemen festlegen kann, entzieht sich meiner Kenntnis (zumindest auf Apple Systemen sieht man da wohl in die Röhre).

In der Praxis funktionieren damit die Sendungen des KIKA und des SRF nicht (sowie gewisse Sendungen von anderen Sendern nicht, v.a. ältere Beiträge).
styrol
 
Beiträge: 2343
Registriert: 07 Nov 2010, 11:38

Re: Website "Mediathekensuche" für Desktop/Smartphone/Tablet

Beitragvon zxsd » 03 Apr 2014, 00:23

martin776 hat geschrieben:ich habe eine Website entwickelt, eine Art Web-Frontend für die MediathekView.
...

Die Links führen direkt zur mp4, daher klappts auf jedem Smartphone, dank MediathekView.

Mediatheken - Suche v0.2


Erst, ein ganz großes Lob! Unter GNU weiterzuentwickeln damit Deiner Wünschen in Erfüllung gehen -- und das zu publizieren, damit anderen unter GNU auch davon Gebrauch machen können -- ist wunderbar! :D

Und dann ... (nicht böse gemeint, meine Muttersprache ist Englisch, was zu Mißverständnisse führen kann) ... aber wäre nicht passender?

    MediathekView - Suche v0.2.01
    oder
    MV-Filmliste mal Anders
    oder
    MV-Filmliste für Reisenden
Schließlich sind wohl Mediatheken nicht Ziel des Suchens ... sondern die MV-Filmliste, wenn ich "eine Art Web-Frontend für die MediathekView" richtig kapiert habe. (Anmerkung: Wenn der "serverseitige tägliche Sammeldienst" bedeutet, die ö-r Mediatheken individuell abgetastet werden sollen, damit jede Python-Host seine eigene Filmliste bauen kann, fürchte ich, daß die Sender dieses als lästig empfinden würden, und dementsprechend reagieren würden.)

Erfolgt ein Update in history.txt bei der Anwendung des Systems?

    Wenn schon, dann wann ... und wo? Ich könnte mir vorstellen, nach einem erfolgreichen Download, beim Selektieren einer Sendung, usw. ... aber auf dem Server, oder dem 'Hauptsitz' der MV-Instanz?

    Wenn nicht, wie soll der Anwender Wiederholungen vermeiden? Wenn history.txt aufm Server bestünde, und irgendwie rationalisiert werden könnte, und mehrere Leute vom Server Gebrauch machen, dann wie?
Ich kenne mich mit der Implementierung der Abos-Funktionalität im MV nicht gut aus. Ich nehme an, daß die Rationalisierung der Abos in Deinem App nicht dabei ist ...

Und jetzt, eine Frage. Kann die URLs der MV-Filmliste mit deinem App abgesucht werden? Mit REGEX? Wenn so was möglich ist, würde ein Forum-Mitglieder (oder mehrere) bestimmt das im Visier nehmen.
Trotz mehreren Beschwerden durch Private Nachrichten meinerseits, sind schon wieder ohne Attribuierung einige meinen Wörter (dieses mal in Betreff-Zeilen) vom Moderator editiert worden -- lange bevor derreisende77 Moderator wurde. Servus und Ade.
zxsd
 
Beiträge: 909
Registriert: 04 Jan 2013, 16:27

Re: Website "Mediathekensuche" für Desktop/Smartphone/Tablet

Beitragvon martin776 » 03 Apr 2014, 09:39

styrol hat geschrieben:Im besten Falle fühlt sich (auf dem Computer) VLC zuständig, der dann aber Default auch nur abspielt und kein Stream-Dumping macht
rtmp ist das "Flash-Protokoll" - ohne FlashPlayer-Plugin sagt der Webbrowser "kenn ich nicht" und wenn nicht richtig eingebettet, fühlt sich auch das FlashPlayer-Plugin nicht zuständig:
rtmp://gffstream.fcod.llnwd.net/a792/e2 ... _web-l.mp4 (Bsp-Sendung)

Bei Android klappt Streaming bei mir, die Firefox-App fragt mich mit welcher App ich den Link öffnen möchte, man wählt VLC und es läuft.
styrol hat geschrieben:Flash gibt's auf iOS nicht. Ob man die URL-Handler auf mobilen Systemen festlegen kann, entzieht sich meiner Kenntnis (zumindest auf Apple Systemen sieht man da wohl in die Röhre).
In der Praxis funktionieren damit die Sendungen des KIKA und des SRF nicht (sowie gewisse Sendungen von anderen Sendern nicht, v.a. ältere Beiträge).

Ja, Flash auf iOS ist meiner Ansicht nach clientseitig nicht lösbar, das ist eine technische Grenze.

Nur hat mich das nicht gestört, ich schaue praktisch immer ARD/ZDF/WDR und hab bisher nur mp4-Dateien gefunden.
Die eignen sich sogar zum Download auf mobilen Geräten.
martin776
 
Beiträge: 6
Registriert: 31 Mär 2014, 13:50

Re: Website "Mediathekensuche" für Desktop/Smartphone/Tablet

Beitragvon martin776 » 03 Apr 2014, 10:09

zxsd hat geschrieben:Erst, ein ganz großes Lob! Unter GNU weiterzuentwickeln damit Deiner Wünschen in Erfüllung gehen -- und das zu publizieren, damit anderen unter GNU auch davon Gebrauch machen können -- ist wunderbar! :D
Und dann ... (nicht böse gemeint, meine Muttersprache ist Englisch, was zu Mißverständnisse führen kann) ... aber wäre nicht passender?
    MediathekView - Suche v0.2.01
    oder
    MV-Filmliste mal Anders
    oder
    MV-Filmliste für Reisenden

Dankeschön, freut mich dass die Webseite auf Interesse stößt.
Ihr seid herzlich eingeladen den Quelltext ins Repository mit aufzunehmen oder die Webseite zu hosten.
Was die Bezeichnung angeht, die ist mir nicht so wichtig.
Da ich die Datenquelle von MediathekView verwende, fände ich "MediathekView - Suche" oder "MediathekView - Websuche" ganz treffend.

zxsd hat geschrieben:Schließlich sind wohl Mediatheken nicht Ziel des Suchens ... sondern die MV-Filmliste, wenn ich "eine Art Web-Frontend für die MediathekView" richtig kapiert habe. (Anmerkung: Wenn der "serverseitige tägliche Sammeldienst" bedeutet, die ö-r Mediatheken individuell abgetastet werden sollen, damit jede Python-Host seine eigene Filmliste bauen kann, fürchte ich, daß die Sender dieses als lästig empfinden würden, und dementsprechend reagieren würden.)

Kurz gesagt, das serverseitige Pythonskript wird nur täglich ausgeführt (nicht bei Benutzung der Webseite). Es läd eine bekannte, gültige MV-Filmliste *.xz runter, macht also keinerlei Zugriffe auf die Fernsehsender-Mediatheken. Es läuft also auch nicht notwendigerweise das echte MediathekView-Javaprogramm auf dem Server, obwohl das gut kombinierbar wäre.
Die Hauptaufgabe des Skripts ist Duplikate aus den Sendungen "Filme" zu entfernen und nach Relevanz zu sortieren (relevant sind Datenrate, Länge, Aktualität). Es generiert zwei kleine JSON-Dateien die die relevantesten 10000 Sendungen enthalten (~5MB) und vom Client (asynchron) eingelesen werden.

zxsd hat geschrieben:Erfolgt ein Update in history.txt bei der Anwendung des Systems?
Wenn nicht, wie soll der Anwender Wiederholungen vermeiden? Wenn history.txt aufm Server bestünde, und irgendwie rationalisiert werden könnte, und mehrere Leute vom Server Gebrauch machen, dann wie?

Mit diesem Feature habe ich mich noch nicht mit beschäftigt.
Im aktuellen Verhalten zeigt die "MediathekView - Suche"-Webseite im Prinzip die zuletzt ausgestrahlten Sendungen zu einem Suchwort an (mit leichter Bevorzugung von HD-Sendungen).

zxsd hat geschrieben:Und jetzt, eine Frage. Kann die URLs der MV-Filmliste mit deinem App abgesucht werden? Mit REGEX? Wenn so was möglich ist, würde ein Forum-Mitglieder (oder mehrere) bestimmt das im Visier nehmen.

Ich versteht nicht ganz was du mit "ins Visier nehmen" meinst. Die URLs mehrerer MV-Filmlisten ist und muss dem serverseitigen Skript bekannt sein um die Daten täglich runterzuladen.
Diese steht aber nicht auf der Webseite oder im Client-JavaScript. Sie ist so "geheim" gehalten wie im echten MediathekView. Wenn ich es richtig verstehe, möchtet ihr die Downloadzahlen der MV-Filmlisten-.xz-Dateien gering halten? Ja, das ist der Fall, passiert nur einmal am Tag.
Die HTML-JS-Website nutzt nur eine eigene, kleinere, nach Relevanz sortierte Filmliste vom eigenen Server. Diese kann selbstverständlich durchsucht werden, genau das macht ja das clientseitige Javascript.
martin776
 
Beiträge: 6
Registriert: 31 Mär 2014, 13:50

Re: Website "Mediathekensuche" für Desktop/Smartphone/Tablet

Beitragvon siedlerchr » 03 Apr 2014, 12:10

Vielleicht wäre für die Zukunft ja ein Webinterface für MV toll, mit dem man MV Remote steuern kann.

PS: Es wäre vielleicht noch sinnvoll, dass du dabeischreibst, dass der Code unter Python 2.x läuft (3.x meckert nämlich an einigen Stellen) oder du konvertierst in gleich nach Python 3.x:
https://docs.python.org/2/library/2to3.html
siedlerchr
 
Beiträge: 498
Registriert: 07 Aug 2012, 20:49

Re: Website "Mediathekensuche" für Desktop/Smartphone/Tablet

Beitragvon zxsd » 04 Apr 2014, 00:07

martin776 hat geschrieben:Da ich die Datenquelle von MediathekView verwende, fände ich "MediathekView - Suche" oder "MediathekView - Websuche" ganz treffend.

Ich gehe immer noch davon aus, daß xaver_w mit Deiner Aktion einverstanden ist ... und schlage vor, Ihr untereinander dieses entscheidet.

Ich versteht nicht ganz was du mit "ins Visier nehmen" meinst. Die URLs mehrerer MV-Filmlisten ist und muss dem serverseitigen Skript bekannt sein um die Daten täglich runterzuladen.
Diese steht aber nicht auf der Webseite oder im Client-JavaScript. Sie ist so "geheim" gehalten wie im echten MediathekView. Wenn ich es richtig verstehe, möchtet ihr die Downloadzahlen der MV-Filmlisten-.xz-Dateien gering halten? Ja, das ist der Fall, passiert nur einmal am Tag.

Da ich gewöhnlicher Anwender und überzeugter MV-Fan bin -- nicht ein Entwickler/Verantwortlicher -- wäre "möchtest Du" angebrachter als "möchtet Ihr" in Deinem Text. In MV siehe Hilfe -> Über MediathekView ... ;) Aber Du hast recht. Das Gebrauch von Bandbreite kostet ... und wächst, wie xaver_w schrieb:

Mit "ins Visier nehmen" bezog ich mich auf Postings von Forum-Teilnehmern, wie z.B., benedikt17, die eine noch erweiterte Suchfähigkeit befürwortet haben.
Trotz mehreren Beschwerden durch Private Nachrichten meinerseits, sind schon wieder ohne Attribuierung einige meinen Wörter (dieses mal in Betreff-Zeilen) vom Moderator editiert worden -- lange bevor derreisende77 Moderator wurde. Servus und Ade.
zxsd
 
Beiträge: 909
Registriert: 04 Jan 2013, 16:27

Re: Website "Mediathekensuche" für Desktop/Smartphone/Tablet

Beitragvon xaver_w » 04 Apr 2014, 17:21

Hi,

coole Sache. Unter Arch gibts die lzma-lib nicht, musste erst auf ein anderes System ausweichen (und von Python habe ich auch keine große Ahnung :) und habs zuerst mit Version 3 versucht )

Wenn du das so hosten willst, gerne. Mir wird ein weiteres Projekt zu viel. Ich kann aber gerne wenn möglich, beim Erstellen der Filmliste darauf eingehen (Flag für ... oder ...).

Diese steht aber nicht auf der Webseite oder im Client-JavaScript. Sie ist so "geheim" gehalten wie im echten MediathekView. Wenn ich es richtig verstehe, möchtet ihr die Downloadzahlen der MV-Filmlisten-.xz-Dateien gering halten? Ja, das ist der Fall, passiert nur einmal am Tag.

In den "Einstellungen->Filme laden" werden die URLs aufgelistet. So geheim sind die nicht :) und in der nächsten Version gibts dann die Möglichkeit nur noch eine Diff-Liste zu Laden, das wird die Downloadmenge wieder etwas entspannen. Kannst die Liste also gerne laden.
xaver_w
Site Admin
 
Beiträge: 2498
Registriert: 06 Nov 2010, 15:04

Nächste

Zurück zu Entwicklerforum

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron