EPG-Daten easy herunterladen

The easyEPG Project – Über dieses Projekt

Mein Projekt unterstützen: Paypal Donation

Offizielle GitHub-Page (Source-Code, Downloads)

An dieser Stelle möchte ich Euch mein kostenloses Tool zum Grabben von EPG-Daten präsentieren. Das Open-Source-Projekt dient zur Bereitstellung eines Linux-Programms, mit dem EPG-Daten aus unterschiedlichen offiziellen Quellen (IPTV-Provider, Kabelnetzbetreiber etc.) heruntergeladen und zu einer XML-Datei umgewandelt werden können. Anschließend ist die Datei mit allen gängigen Systemen und Apps kompatibel und beinhaltet zahlreiche Informationen zu den TV-Sendungen, darunter:

  • Sendungstitel
  • Untertitel / Episodentitel
  • Beschreibungstext
  • Bilder
  • Darsteller / Regisseure
  • Erscheinungsdatum / -land
  • Genre
  • Bewertung

HINWEIS: Wir stellen keine bereits vorgefertigten XML-Dateien zum Download bereit.

Das Tool bietet zahlreiche Features, um eine vollständige Senderliste mit umfangreichen Sendungsinformationen bereitzustellen. Die Vorteile liegen auf der Hand:

  • Schnellstmöglicher Download der EPG-Daten (abhängig von der genutzten Quelle)
  • Kombination mehrerer EPG-Quellen zur Erstellung einer einzigen, vollständigen XML-Datei
  • XMLTV-Format mit Kompatibilität für die meisten Systeme und Apps
  • Importierung von XML-Dateien aus externen Quellen (lokal von WebGrab++ oder im Web aus öffentlichen Quellen)
  • Nutzung zusätzlicher Skripts nach Erstellung der XML-Dateien zur nachträglichen/weiterführenden Bearbeitung
  • Automatische Aktualisierung der XML-Dateien (via crontab)

Zurzeit werden über 1000+ Sender aus über 10 Ländern unterstützt, dafür werden momentan die folgenden Anbieter verwendet:

  • Horizon (DE, AT, CH, NL, PL, IE, SK, CZ, HU, RO)
  • Zattoo (DE, CH)
  • Magenta TV (DE)
  • WaipuTV (DE)
  • Swisscom (CH)
  • Radiotimes (UK)
  • tvPlayer (UK)

Installation

HINWEIS: Dieses Projekt befindet sich in der BETA-Phase. Bitte habt Verständnis dafür, dass womöglich noch nicht alle Features voll funktionsfähig sind.

Das Tool ist zur Nutzung unter Linux bestimmt; unterstützt werden u.a. Ubuntu und Debian. Bitte installiert mittels der nachfolgenden Befehle die benötigten Programme auf Euer System. Anschließend könnt Ihr das Skript direkt vom Installationsordner aus ausführen.

# Install all recommended applications to setup the epg environment completely:
sudo apt-get install cron phantomjs dialog curl wget libxml2-utils perl nano perl-doc jq php php-curl git xml-twig-tools unzip liblocal-lib-perl cpanminus build-essential inetutils-ping

# Install CPAN and the required modules to parse JSON files
sudo cpan App::cpanminus
sudo cpanm install JSON
sudo cpanm install XML::Rules
sudo cpanm install XML::DOM
sudo cpanm install Data::Dumper
sudo cpanm install Time::Piece
sudo cpanm install Time::Seconds
sudo cpanm install DateTime
sudo cpanm install DateTime::Format::DateParse
sudo cpanm install utf8

# Create any directory in your desired location, e.g.:
mkdir ~/easyepg

# Download the .zip file and extract the files into your folder:
wget https://github.com/sunsettrack4/easyepg/archive/v0.3.8.zip

# Unzip the file:
unzip v0.3.8.zip

# Move all script files to the created folder
mv ~/easyepg-0.3.8/* ~/easyepg/

# Set system-wide permissions to the folder and its related files
sudo chmod 0777 ~/easyepg
sudo chmod 0777 ~/easyepg/*

# Run the main script from your script folder to enter the setup screen in terminal
cd ~/easyepg
bash epg.sh

Bedienungsanleitung

MAIN MENU

Im Hauptmenü werden alle Features aufgelistet.

Hauptmenü
  1. ADD GRABBER INSTANCE // Neue Provider zum Download-Setup hinzufügen
  2. OPEN GRABBER SETTINGS // Bestehende Provider-Setups verwalten
  3. MODIFY XML FILES // XML-Dateien bearbeiten und zusammenführen
  4. CONTINUE IN GRABBER MODE // EPG-Download + XML-Erstellung fortsetzen
  5. UPDATE THIS SCRIPT // das EPG-Skript mittels GitHub aktualisieren
  6. ABOUT EASYEPG // Weitere Informationen zum Skript abrufen

PROVIDER SETTINGS

Im Provider-Setup werden die Einstellungen für den jeweiligen Download der EPG-Dateien vorgenommen.

Provider-Settings
  1. MODIFY CHANNEL LIST // Kanäle zum Download auswählen
  2. TIME PERIOD // Anzahl der Tage zum Herunterladen auswählen
  3. CONVERT CHANNEL IDs INTO RYTEC FORMAT // Umwandlung der Kanal-IDs
  4. CONVERT CATEGORIES INTO EIT FORMAT // Nutzung der EIT-Genres für tvHeadend
  5. USE MULTIPLE CATEGORIES // Mehrere Kategorien pro Sendung integrieren
  6. EPISODE FORMAT // ONSCREEN für textbasierte Episodenanzeige, XMLTV_NS für tvHeadend
  7. RUN XML SCRIPT // Download-/XML-Erstellungsprozess für den ausgewählten Provider
  8. DELETE CACHE FILES // Datenbank des jeweiligen Providers löschen
  9. REMOVE GRABBER INSTANCE // Provider-Setup löschen

EXTERNAL GRABBER SETTINGS

Die Nutzung externer Quellen (XML-Dateien) zur lokalen Einbindung ist ebenfalls möglich. Dafür geht man im Hauptmenü auf ADD GRABBER INSTANCE und wählt den Punkt EXTERNAL aus. Im Anschluss kann dann eine lokale Datei oder eine öffentlich zugängliche XML-Datei aus dem Internet ausgewählt werden.

MODIFY XML FILES

An dieser Stelle finden die Zusammenführung mehrerer EPG-Quellen sowie die Weiterverarbeitung der XML-Dateien statt.

HINWEIS: Die Datenbanken der jeweiligen Provider müssen aktualisiert werden, damit die aktuelle Kanalliste im Modify-Menü zur Verfügung steht!

Modify-Menü
  1. MODIFY CHANNEL LIST // Kanäle zur XML-Erstellung auswählen
  2. USE ADDON SCRIPTS // vom Entwickler unterstützte Zusatz-Addons (de)aktivieren
  3. ADD/MODIFY PRE SHELL SCRIPT // vor Nutzung der Addon-Skripts ein eigenes Skript verwenden
  4. ADD/MODIFY POST SHELL SCRIPT // nach kompletter Fertigstellung der XML-Datei ein eigenes Skript ausführen
  5. CREATE CHANNEL LIST AS TXT FILE // Kanalliste mit Kanal-IDs als Textdatei speichern
  6. TIME PERIOD // Zeitrahmen für die zu erstellende Datei auswählen
  7. RUN COMBINE SCRIPT // XML-Erstellung ohne Download manuell anstoßen
  8. REMOVE THIS SETUP // ausgewähltes Setup löschen

ADDON SCRIPTS

Hier findet Ihr zusätzlicher Addons, die von weiteren Entwicklern öffentlich in Open Source-Repositories bereitgestellt werden. Ein besonderer Dank geht hierbei an die Entwickler der entsprechenden Addons.

  1. RATING MAPPER (Quelle: GitHub – DeBaschdi) // Ergänzung zusätzlicher Informationen (Erscheinungsjahr, Jahr, FSK, Star-Ratings) im Beschreibungstext
  2. IMDB MAPPER (Quelle: GitHub – DeBaschdi) // Ergänzung der Sendungsinformationen mit HD-Covern und Nutzerbewertungen aus der IMDb-Datenbank