Aller au contenu

T


edlapoignee

Messages recommandés

Bonjour,

Ca faisait un petit brin de temps que je n'avais pas participé a ce forum, et vu que j'ai bien bataillé avec ma problématique, je voulais vous en faire part...

Voilà la problématique :
Je télécharge des films (libre de droits hein) régulièrement sur des sites http download (pas de torrents), mais entre :
- le fait de penser à aller voir les nouveautés
- prendre le temps de faire son choix de films
- faire la procédure de récupération du lien de téléchargement (captcha et autres joyeusetés)
- intégrer le lien dans downloadstation
- renommer le fichier télécharger
... autant dire que je loupais plein de nouveautés !

Et voilà la solution que je cherchais :
- récupérer les dernieres nouveautés de films par flux rss
- être informé par mail dans la matinée pour retirer ceux que je ne voudrais pas télécharger
- télécharger automatiquement ceux qui sont validés
- les renommer correctement pour que videostation les indexe correctement

Voilà donc les outils utilisés :
- flux rss d'un site qui contient obligatoirement les liens de téléchargements http download
- package flexget qui récupère les entrées du flux rss et m'avertit par mail
- package pyload qui télécharge automatiquement
- script bash qui renomme les fichiers

Voilà le détail des étapes :
- Installer Flexget :
Pour installer Flexget, vous devez avoir comme sources de paquet dans votre centre de paquets "https://synocommunity.com/".
Flexget utilise le paquet Python, donc il faut dans un premier temps installer ce paquet "Python" (version 2.7.8-11 a ce jour).
Ne démarrer pas le paquet Flexget, on le lancera en tache planifiée.
Voici mon fichier de configuration pour flexget, que l'on retrouve sous "volume1/@appstore/flexget/var/config.yml" :

tasks:
  automatique:
    accept_all: true
    regexp_parse:
      source: http://www.iomega-films.com/feed
      sections:
        - {regexp: "(?<=<item>).*?(?=</item>)", flags: "DOTALL,IGNORECASE"}
      keys:
        title:
          regexps:
            - {regexp: "(?<=<title>).*?(?=</title>)", flags: "DOTALL,IGNORECASE"}
        url:
          regexps:
            - {regexp: "(?<=<a href=").*?(?=">)", flags: "DOTALL,IGNORECASE"}
    pyload:
      api: http://localhost:8000/api
      username: admin
      password: motdepasse
      queue: yes
      parse_url: no
      hoster: ALL
      multiple_hoster: yes
      enabled: yes
    email:
      from: user@domaine.com
      to: user@domaine.com
      subject: Films
      smtp_host: smtp.domaine.com
      smtp_port: 25
      smtp_username: user
      smtp_password: password

Pour un brin d'explications, ce fichier de configuration contient une tache "automatique" qui depuis la source rss du site iomega-films récupère chaque section <item>[...]</item> en prenant le nom du film <title>[...]</title> et l'url <a href="[...]">.
Ces infos seront envoyées à Pyload (que l'on installera après), et par mail.
Je vous laisse bien entendu remplacer les différentes données par les votres (flux rss, login, mdp, ...)
On va par la suite depuis DSM dans le planificateur des tâches créer une tâche "Script défini par l'utilisateur" :

nom : flexget
utilisateur : root
script : su flexget -c "/volume1/@appstore/flexget/env/bin/flexget execute"

Pour ma part, je la programme donc tous les matins.

- Installer Pyload :
Vous trouverez pyload sur la source de paquet : "http://spk.unzureichende.info".
Avant de l'installer, créez le répertoire volume1pyload et mettez un chmod 775 dessus.
Dans le fichier de configuration "volume1@appstorepyloadvarconfigpyload.conf", je n'ai changé que ces données :

general - "General":
    bool folder_per_package : "Create folder for each package" = False
downloadTime - "Download Time":
    time start : "Start" = 01:30
    time end : "End" = 06:00

La première donnée évite que chaque téléchargement de film génère un nouveau dossier au nom du film, la deuxième indique que les téléchargements s'effectueront de nuit entre 01h30 et 06h00.

- mettre en place un script de renommage de fichier
Les fichiers générés sont nommés de ce genre "IOMEGA-nomdufilm.avi" par exemple, je voulais retirer le "IOMEGA-", pour se faire il faut placer dans "volume1@appstorepyloadvarconfigscriptsdownload_finished" un fichier du type "rename_iomega.sh" avec dedans :

for x in *.*; do mv -- "$x" "${x//IOMEGA-/}"; done

Reste juste à rajouter le chemin volume1pyload a l'indexation multimédia de videostation et on est bon !

Je recois donc le matin un mail qui me donne les films récents du jour.
J'ai pris une application sur mon Iphone "pyLoadiOS", qui me permet de me connecter a Pyload et supprimer de la liste ceux que je ne veux pas télécharger.
Les films que je n'ai pas retirés sont automatiquement téléchargés, renommés et indéxés dans la nuit.

Voilou, désolé pour le peu de détail, c'est de la bricole, mais c'est surtout pour donner des idées d'outils a certains plutot qu'un tutorial étape par étape sans failles :P

Lien vers le commentaire
Partager sur d’autres sites

Bonjour, edlapoignee et merci pour ce magnifique sujet. J'adore que tout se fait automatiquement.

Toutefois, un petit tuto pour les ignorants comme moi serait le bienvenu. En effet, je suppose que le fichier doit être écrit sur un fichier bloc note avec les commandes, les paquets dont tu fais référence sont à placer où, c'est ce type de questions que je me pose. Merci de nous donner plus d'infos.

Lien vers le commentaire
Partager sur d’autres sites

Alors oui, je n'ai pas essayé Couchpotato car il semble faire que les torrents...

Et pour tes questions pitouchon :

- le script bash s'écrit dans un bloc notes effectivement avec la commande copiée dedans et renommée en .sh

- les paquets sont à télécharger depuis l'interface centre des paquets du DSM, il faut juste renseigner les "sources de paquets" en plus, donc l'installation se fait automatiquement

après la configuration des fichiers de configuration de flexget et pyload se font facilement en telnet ou ssh (WinScp pour windows est très facile d'utilisation pour ce genre de manip), ils peuvent aussi se faire depuis l'interface des packages installés, mais j'avoue que ces paquets ne sont pas super bien intégrés au DSM... :)

Lien vers le commentaire
Partager sur d’autres sites

Bonsoir,

Un grand merci pour ta réponse edlapoignee, je vais regarder à tout cela et encore un grand merci pour le travail effectué sur cette petite merveille qui pourrait aussi me faciliter mes téléchargement et classement.

Sans abuser, pourrais-je encore compter sur tes infos si besoin est.

Bonne soirée

Lien vers le commentaire
Partager sur d’autres sites

Faut pas hésiter a demander, c'est fait pour ca un forum !

Après ce que j'aime dans cette solution c'est que flexget est très modulable et peut s'adapter a beaucoup de problématiques.

Là dans mon exemple j'ai vraiment fait un truc simple, mais quand on voit certaines configurations c'est autre chose !

Ne pas hésitez à faire un tour sur les plugins de flexget et son cookbook, ca donne plein d'idées :P

Lien vers le commentaire
Partager sur d’autres sites

  • 2 mois après...

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.