Journal lm (list movies): reprise du développement

Posté par (page perso) . Licence CC by-sa
24
20
fév.
2012

Bonjour à tous,

Il y a quelque temps j'avais parlé ici d'un petit script que j'avais fait sur un coup de tête: lm pour list movies. Ce script récupère les métadonnées de films sur IMDb et permet de les afficher en console à la manière d'un ls. Vous pouvez ainsi afficher vos films triés selon leur note, ou les filtrer (n'afficher que les films fantastiques par exemple).

Cependant, je n'avais pas le temps de m'occuper de ce projet, étant beaucoup trop pris par mon projet principal, Salut à Toi.

J'ai eu la bonne surprise d'être contacté par un développeur qui a repris le projet et l'a bien amélioré: Guillaume Garchery (aka Red Rise).

Il a apporté de nombreuses améliorations, avec en particulier:

  • le support des hash d'OpenSubtitle, chose qui avait déjà été demandée dans le journal cité plus haut

  • la possibilité de télécharger les sous-titres via ce même site

  • la génération d'une page HTML avec les affiches et des liens directs vers les bandes annonces

  • améliorations diverses notamment au niveau de la méthode de nettoyage du nom de fichier (méthode utilisée quand rien n'est trouvé sur OpenSubtitle), ou des filtres (ajout de pays, taille de fichier)

  • la documentation: il a soigné le README en détaillant bien l'utilisation de la commande

Voilà un projet qui serait probablement mort s'il n'avait pas été libre. Merci à Red Rise d'avoir repris le dév, et de m'avoir contacté pour être sûr de ne pas faire d'impair.

Je suppose qu'il appréciera tout retour de votre part si vous l'utilisez :)

Le billet sur le blog de Red Rise: http://redrises.blogspot.com/2012/02/lm-list-movies-command-line-tool-lm.html

  • # Weboob

    Posté par . Évalué à  1 .

    • [^] # Re: Weboob

      Posté par . Évalué à  4 .

      Euh ?

      Et sinon ta vie ça se passe bien ?

      Je suis dans ma tour d'ivoire (rien à foutre des autres, dites moi un truc pour moi), si je ne pose pas explicitement une question pour les 99%, les kévin, les Mm Michu alors c'est que je ne parle pas d'eux.

    • [^] # Re: Weboob

      Posté par . Évalué à  4 .

      Puisque mon commentaire précédent se fait moinssé je vais expliciter un peu mieux.

      Je ne vois pas le rapport entre lm et weboob. Quand on regarde la liste des application il y a (Q)Videoob qui travail sur les vidéos, mais ce qu'il fait n'a aucun rapport : videoob télécharge des vidéos alors que lm ne fait que récupérer des informations sur des vidéos que tu possède déjà.

      Alors peut être que ce que tu souhaite c'est qu'il crée une nouvelle application weboob, mais je ne vois vraiment pas l'intérêt. Il me semble que l'intérêt de weboob c'est de montrer qu'on peut utiliser des sites web sans navigateur. Si c'est pour tout faire passer ensuite par weboob, je ne pense pas que l'objectif de weboob soit atteins.

      Je suis dans ma tour d'ivoire (rien à foutre des autres, dites moi un truc pour moi), si je ne pose pas explicitement une question pour les 99%, les kévin, les Mm Michu alors c'est que je ne parle pas d'eux.

      • [^] # Re: Weboob

        Posté par . Évalué à  10 .

        C’est que moules a l’exclusivité des applications en cli qui accèdent a des sites web, pour en extraire des informations.
        Donc, là nous assistons à la première étape, un rappel à l’ordre.
        Si l’auteur du script n’obtempère pas, moules et sa famille passeront à l’étape deux, l’intimidation:
        Titre de l'image

        Depending on the time of day, the French go either way.

      • [^] # Re: Weboob

        Posté par . Évalué à  7 .

        Alors en fait, d'une part lm extrait des informations de plusieurs sites web, donc il pourrait être tout à fait envisageable et en accord avec l'objectif de Weboob d'écrire des modules pour imdb et opensubtitle, et lm, sans forcément être intégré à Weboob, pourrait utiliser ce dernier comme une bibliothèque (qu'elle est) pour interagir avec ces sites.

        L'intérêt de Weboob est de factoriser en son sein le support d'un maximum de sites web pour être réutilisé par plusieurs applications, plutôt que chacun ne fasse ses propres scrapping dans son coin.
        Le module opensubtitle pourrait être réutilisé par weboorrents par exemple pour automatiquement récupérer les sous-titres associés à un film (libre de droit évidement) que l'on vient de télécharger.

        D'autre part, Goffi s'est rapproché de Weboob depuis peu, donc c'est un peu une joke entre nous.

        Mais sinon, je te trouve un peu aigri vis à vis de Weboob ces derniers temps, tu as un problème ?

        • [^] # Re: Weboob

          Posté par (page perso) . Évalué à  8 .

          plutôt que chacun ne fasse ses propres scrapping dans son coin.

          PAN !

        • [^] # Re: Weboob

          Posté par . Évalué à  3 .

          C'est tout de même mieux une fois explicité.

          D'autre part, Goffi s'est rapproché de Weboob depuis peu, donc c'est un peu une joke entre nous.

          Les privates joke faut pas être surpris si elles ne sont pas comprises :)

          Mais sinon, je te trouve un peu aigri vis à vis de Weboob ces derniers temps, tu as un problème ?

          Tu te trompe (comme les éléphants), je l'étais. Je le suis un peu moins maintenant. Dans le temps on voyais un tas d'utilisateurs de weboob formater leur message en 72 ou 80 colonnes. J'aime l'idée d'utiliser le web sans navigateur, mais il s'agissait là de « violer » l'un des fondement du web : html.

          Ensuite pour une raison que j'ignore, je n'ai pas d'attirance particulière pour ce logiciel, mais je le respect.

          Je suis dans ma tour d'ivoire (rien à foutre des autres, dites moi un truc pour moi), si je ne pose pas explicitement une question pour les 99%, les kévin, les Mm Michu alors c'est que je ne parle pas d'eux.

          • [^] # Re: Weboob

            Posté par . Évalué à  3 .

            Tu te trompe (comme les éléphants), je l'étais. Je le suis un peu moins maintenant. Dans le temps on voyais un tas d'utilisateurs de weboob formater leur message en 72 ou 80 colonnes. J'aime l'idée d'utiliser le web sans navigateur, mais il s'agissait là de « violer » l'un des fondement du web : html.

            Et ce problème avait été entendu puisque ce comportement a disparu.

            En tous cas nous sommes tombés d'accord, serrons nous la main.

            • [^] # Re: Weboob

              Posté par . Évalué à  2 .

              Et ce problème avait été entendu puisque ce comportement a disparu.

              D'où l'usage de l'imparfait ^^

              En tous cas nous sommes tombés d'accord, serrons nous la main.

              En effet. J'ai toute fois une remarque à faire au sujet de weboob.

              La vision que j'en ai moi qui ne suis jamais allé farfouillé dans les sources du bouzin. C'est que weboob est un logiciel avec des modules qui viennent se greffer dessus.

              Peut être qu'il faudrait mettre plus en avant se coté bibliothèque réutilisable. Par exemple en scindant weboob en liboob (ou python-boob ou python-liboob je ne connais pas les usages en python) et weboob, pour que les applications python qui souhaitent réutiliser cette bibliothèque puissent ne dépendre que de liboob (peut être que c'est déjà fait).

              Je suis dans ma tour d'ivoire (rien à foutre des autres, dites moi un truc pour moi), si je ne pose pas explicitement une question pour les 99%, les kévin, les Mm Michu alors c'est que je ne parle pas d'eux.

              • [^] # Re: Weboob

                Posté par . Évalué à  4 .

                Le problème réside justement dans la clarté pour l'utilisateur final. Initialement on présentait bien les choses comme telles, et ça avait tendance à embrouiller plus qu'autre chose.

                Néanmoins, il faut voir que dans le packaging Debian de Weboob, il y a trois paquets :

                • python-weboob-core (la bibliothèque)
                • weboob (les applications cli)
                • weboob-qt (les applications Qt)

                Il est donc possible pour lm de ne dépendre que de python-weboob-core en bénéficiant des modules sans installer toutes les applications Weboob.

                En outre, à destination des développeurs, cette explication est peut-être plus claire : https://symlink.me/projects/weboob/wiki/Development

          • [^] # Re: Weboob

            Posté par . Évalué à  1 .

            J'aime l'idée d'utiliser le web sans navigateur, mais il s'agissait là de « violer » l'un des fondement du web : html.

            Peut-être que mon message d’il y a quelques jours est passé inaperçu, mais je réitère car sur ce point j’étais sérieux : c’est linuxfr qui ne respecte pas Markdown. Corrigez moi si je me trompe…

            Je comprends bien que le retour à la ligne ignoré dans l’éditeur de commentaire de linuxfr a été très perturbant pour nombre de personnes (dont moi) au tout début de la version Ruby. Par contre lorsqu’on écrit un mail texte, il me semble que le retour à la ligne est d’usage.

            Du coup pour contourner le problème, ne serait-il pas adéquat que la partie smtp de monboob reformate quelque peu le message avant de l’envoyer ? Ça éviterait que les nouveaux utilisateurs du logiciels se fassent rembarrer régulièrement sur lfr, nan ?

            • [^] # Re: Weboob

              Posté par . Évalué à  1 .

              Peut-être que mon message d’il y a quelques jours est passé inaperçu, mais je réitère car sur ce point j’étais sérieux : c’est linuxfr qui ne respecte pas Markdown. Corrigez moi si je me trompe…

              Tu as raison. Néanmoins il est d'usage de prévisualiser ses messages avant de les envoyer à fin de vérifier le formatage.

              weboob (ou le navigateur) ou linuxfr ne devraient pas être tenu pour responsable du mauvais formatage.

              Je suis dans ma tour d'ivoire (rien à foutre des autres, dites moi un truc pour moi), si je ne pose pas explicitement une question pour les 99%, les kévin, les Mm Michu alors c'est que je ne parle pas d'eux.

          • [^] # Re: Weboob

            Posté par . Évalué à  2 .

            Dans le temps on voyais un tas d'utilisateurs de weboob formater leur message en 72 ou 80 colonnes. J'aime l'idée d'utiliser le web sans navigateur, mais il s'agissait là de « violer » l'un des fondement du web : html.

            Leur "messages" ? Sur LinuxFR tu veux dire ?

            S'ils ont été postés via un client mail bien configuré via Weboob c'est normal :]

            THIS IS JUST A PLACEHOLDER. YOU SHOULD NEVER SEE THIS STRING.

        • [^] # Re: Weboob

          Posté par . Évalué à  2 .

          L'intérêt de Weboob est de factoriser en son sein le support d'un maximum de sites web pour être réutilisé par plusieurs applications, plutôt que chacun ne fasse ses propres scrapping dans son coin.

          Pourquoi dans ce cas ne pas se rapprocher des scrapper de xbmc qui sont bien plus complets.

          • [^] # Re: Weboob

            Posté par . Évalué à  5 .

            Ce serait plutôt les scrappers de xbmc qu'il faudrait rapprocher de Weboob.

            D'un point de vue technique, weboob n'est qu'une bibliothèque assez light qui permet de charger des modules et propose des capabilities (des API pour regrouper les sites par type (vidéo, news, torrent, wiki, bugtracker, etc.) que chaque module peut ou non implémenter.

            Il fournit également tout un tas d'outils (weboob.tools) qui permettent aux modules de faire le job le plus facilement possible.

            La partie émergée de l'iceberg étant les applications qui sont distribuées avec Weboob mais qui ne sont pas obligatoires (et sont packagées séparément), et c'est ce qu'on présente tout de même sur http://weboob.org ou dans les dépêches car c'est ce qui intéresse les utilisateurs.

            Mais pour les développeurs weboob n'est qu'une lib leur proposant le maximum de supports de sites avec des API stables et communes qu'ils peuvent réutiliser pour ne pas scrapper pour la énième fois tels ou tels sites.

            Et l'architecture de Weboob permet que lorsqu'un module est rajouté, toutes les applications (qui supportent une des capabilities qu'il implémente) en bénéficient immédiatement sans la moindre adaptation du code.

            Pour ce qui est de xbmc, voilà à quoi ressemble le code d'un module IMDB :

            https://github.com/xbmc/xbmc/blob/master/addons/metadata.common.imdb.com/imdb.xml

            Très lisible, très évolutif, très générique. J'espère au moins qu'ils utilisent un générateur.

            Et Weboob permet non seulement d'extraire des objets, mais aussi d'interagir avec les sites.

  • # Nepomuk?

    Posté par . Évalué à  1 .

    Globalement, lm est un outil de génération et de navigation dans des méta données associées à des fichiers de films.

    C'est à rapprocher des projets sémantiques comme Nepomuk dans KDE 4.

    Sebastian Trüg, le contributeur principal de Nepomuk, a fait une série de billets sur son blog détaillant de petites expérimentations utilisant Nepomuk pour gérer des séries TV, de la musique (il y a aussi eu une discussion autour des films dans les commentaires).

    TV Shows
    More Fun With TV Shows
    Just For The Fun Of It: Browsing Music With Nepomuk
    (et d'autres: 1, 2, 3).

    En résumé, il a créé un petit outil qui enrichie Nepomuk avec toutes les informations qu'il peut récupérer sur les fichiers via divers services web. Ensuite, pour la partie utilisation des métadonnées: un simple KIO Slave: ça présente directement dans Dolphin une hiérarchie virtuelle de fichiers, tous les épisodes étant bien rangés, gratuitement.

    Séries TV avec Nepomuk

    On peut imaginer d'autres hiérarchies virtuelles, et un usage similaire pour les films, comme le propose lm.

    Il existe aussi Bangarang, un lecteur multimédia entièrement basé sur les informations présentes dans Nepomuk, un rapprochement de ces expérimentations avec Bangarang serait fortement intéressant.

    Malheureusement je n'ai pas pu jouer avec tout ça: des fichiers headers nepomuk manquent aux paquets -dev sous debian et ubuntu, ce qui empêche de compiler ces programmes.

    • [^] # Re: Nepomuk?

      Posté par . Évalué à  0 .

      des fichiers headers nepomuk manquent aux paquets -dev sous debian et ubuntu

      Nepomuk est dans kdelibs, il faut donc installer les fichiers de developpement des kdelibs. (kdelibs5-dev sous debian)

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.