jeudi 6 octobre 2016

[Tuto] SickRage: téléchargement automatique d'épisodes de séries TV

Il y a peu, je recherchais une solution pour récupérer des épisodes de séries sans avoir à répéter chaque semaine le parcours site de torrent, téléchargement du .torrent, envoi sur la seedbox. Certes, c'est rapide, mais répétitif. Je me suis dit qu'il devait y avoir une solution.

Je suis alors tombé sur Flexget. Pratique, mais requiert un tracker supportant les .torrent flux RSS; il y en a peu, ces derniers voyant sans doute un manque à gagner à ne plus voir les visiteurs venir admirer leurs pubs ou faire vivre la communauté. Pas de RSS sur FTDB ou T411 par exemple.

J'ai ensuite trouvé...

clip_image002

Il est parfait, il fait tout: recherche en fond de la sortie de votre dernier épisode, téléchargement des sous-titres si besoin, notification sur PC, Android ou iOS quand le téléchargement s'effectue. En plus, il supporte beaucoup de trackers: T411, FNT, BlueTigers, FTDB, Libertalia et Cpasbien pour les français mais aussi les plus gros américains: TPB, Broadcast the net, FreshonTV... Ainsi que les newsgroup: NZBs.org, NZBMatrix, NZBs'R'Us, Newzbin, Womble's Index, NZB.su.

Le tout est agrémenté d'informations issues de TVDB et TVRage.

Vous pouvez l'installer sur à peu près tout: votre NAS, votre PC sous Linux ou Windows. Ici, je vais m'intéresser à l'installation sur une seedbox Debian (fonctionnera aussi sur Ubuntu et ses dérivés)

On commence par installer python, son module cheetah et git. Si vous ne les avez pas, ça donne ça:

apt-get install git-core python python-cheetah

On télécharge et installe SickRage:

git clone git://github.com/SickRage/SickRage.git /chemin/vers/votre/installation/sickrage

cd /chemin/vers/votre/installation

On met des permissions si nécessaire sur le dossier qui a été créé (si vous n'êtes pas root par exemple):

chown -R <user>:<user> /chemin/vers/votre/installation

Maintenant, on va faire en sorte que SickRage se lance à chaque démarrage du système: copie du fichier de configuration et on rend ce dernier exécutable.

sudo cp /chemin/vers/votre/installation/sickrage/runscripts/init.debian /etc/init.d/sickrage

sudo chmod +x /etc/init.d/sickrage

On crée ensuite un fichier qui va contenir les paramètres de notre installation:

nano /etc/default/sickrage

On y met:

SR_USER=votreutilisateur

SR_HOME=/chemin/vers/votre/installation/sickrage/

SR_DATA=/chemin/vers/votre/installation/sickrage/

SR_GROUP=votregroup

Il faut remplir le groupe sans quoi vous aurez des problèmes de permissions! Le plus souvent, votre groupe = votre nom d'utilisateur.

On ajoute ensuite SickRage à la séquence de démarrage, puis on le lance!

update-rc.d sickrage defaults

service sickrage start

Tout devrait se passer sans erreur. Allez sur IPserveur:8081 et SickRage se lance.

Je vous recommande de passer l'installation en reverse proxy, c'est à dire pouvoir y accéder depuis IPserveur/SickRage. Vous pourrez aussi y mettre une protection par mot de passe via le panneau d'administration SickRage.

Pour Nginx, on ajoute à /etc/nginx/sites-available/default le contenu suivant:

location /sickrage {

proxy_pass http://127.0.0.1:8081;

#auth_basic Restricted Area; # Si vous voulez protéger...

#auth_basic_user_file htpasswd; # ... par mot de passe, décommentez

proxy_redirect off;

proxy_set_header Host $http_host;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

}

Une version plus complète de ce reverse proxy est donnée ici: https://gist.github.com/Thermionix/3375989

Redémarrez nginx, arrêtez SickRage :

nginx -s reload

service sickrage stop

L'arrêt de SickRage permet de modifier le fichier de configuration. Ouvrez  /chemin/vers/votre/installation/sickrage/config.ini, et modifiez la ligne 8 (web_root) comme ceci:

web_root = /sickrage

On peut désormais redémarrer SickRage.

service sickrage start

Allez à IPserveur/sickrage, tout devrait être bon.

Enfin, pour empêcher l'accès par IPserveur:8081, si vous avez IPTables, vous pouvez lancer

iptables -A INPUT -p tcp --dport 8081 -s localhost -j ACCEPT

iptables -A INPUT -p tcp --dport 8081 -j DROP

On peut ensuite configurer la bête.

clip_image004

Allez dans Search Settings (depuis les engrenages en haut à droite), effacez les "ignore words" et mettez "vostfr, subfrench" dans les "required words": Ainsi, on force SickRage à ne télécharger que de la VOSTFR, c'est à dire des torrents contenant le mot "VOSTFR" ou "subfrench" dans leur nom. Vous pouvez aussi rajouter des mots, comme "french" ou "VOSTEN" par exemple. A vous de voir clip_image005

clip_image006

Depuis les engrenages, allez dans Search Providers pour mettre vos comptes sur les trackers. Sélectionnez vos trackers par ordre de priorité (glisser-déposer), cochez ceux que vous voulez activer et rentrez vos informations de compte dans l'onglet Provider Options.

clip_image007

Spécifiez ensuite quelle méthode de téléchargement vous préférez dans l'onglet Torrent Search. Je vous recommande rTorrent ou le Black Hole (envoi des .torrents dans un répertoire particulier, habituellement un dossier "watch"). J'ai choisi le Black Hole bien qu'utilisant rTorrent, car les torrents envoyés par cette méthode ne démarraient jamais, sans raison. A vous de tester et voir ce qui vous convient le mieux!

clip_image008

Voilà, il ne vous reste plus qu'à ajouter vos séries par le bouton Add show dans la page d'accueil. Vous pouvez alors choisir la qualité préférée ainsi que la langue.

Vous avez aussi une option pour télécharger automatiquement les sous-titres depuis Addic7ed, U-Sub, Sous-Titres.eu et d'autres clip_image009

Vous pouvez aussi vous faire envoyer une notification Pushbullet, Notifymyandroid ou autre depuis le panel. Une option pour indiquer vos épisodes comme vus sur Trakt ou BetaSeries est aussi disponible, de même pour Plex ou votre xbox... Vous pouvez même vous faire envoyer un SMS si vous êtes chez Free Mobile. Les possibilités sont grandes.

Bonus track: l'appli smartphone! J'utilise l'application DroidBeard qui me permet de garder un œil sur mon installation depuis mon téléphone (marche derrière un htpasswd et reverse proxy nginx) clip_image009[1]

clip_image011

Aucun commentaire:

Enregistrer un commentaire