Python Quvi

Posté par  (site web personnel) . Modéré par baud123. Licence CC By‑SA.
27
25
sept.
2011
Python

La bibliothèque Quvi permet d'analyser le contenu de plus de 40 sites de médias tels que YouTube, Dailymotion, Google Video… Cette bibliothèque fournit aussi un outil en ligne de commande, nommé « quvi » qui permet d'analyser et récupérer les informations de la page depuis un terminal.

Le projet Python-Quvi vise à permettre l'accès à cette API depuis Python.

Utiliser différents sites de médias pour y voir des vidéos streamées est aujourd'hui un acte récurrent et presque naturel. Mais bien souvent, devoir passer par un navigateur et devoir utiliser un greffon flash pour lire les vidéos… ce n'est pas forcément la panacée. Il existe déjà un programme fort intéressant, minitube, qui est une interface très pratique pour rechercher et voir des vidéos youtube. Un outil en ligne de commande nommé clive (et cclive) qui permet d'analyser et récupérer des liens de vidéo ainsi que les informations propres au média visé. La bibliothèque Quvi est utilisée dans ces deux projets. Elle permet, entre autre, via une API C, de récupérer les informations utiles pour lire les média (récupération de titre, durée, URL du média, URL de la page…)

Il existe déjà une API enveloppe pour Perl nommé WWW::Quvi. Autant dire qu'il manque donc encore pas mal de soutien pour avoir accès à cette API via d'autres langages. Python en fait partie. C'est donc le but du projet python-quvi, proposé par Patrice FERLET (oui, moi…). Le projet est à son stade le plus jeune mais permet déjà d'analyser et lire l'ensemble des informations d'une page de média.

Le développement est basé sur Cython, un sur-langage proche de python qui permet de remonter les fonctions de la bibliothèque codée en C vers une librairie compilé pour Python. La page propose deux exemples, dont un indiquant une méthode utilisant des threads.

Des retours d'expériences et de l'aide seront les bienvenus.

Aller plus loin

  • # Facile à étendre

    Posté par  . Évalué à 3.

    À noter qu'il est assez facile de rajouter le support pour d'autres sites dans quvi. La documentation est très bien faite sur ce point, avec un tutorial pour montrer comment rajouter le support pour un site simple ou plus compliqué. Et vu la quantité de sites déjà supporté, il est également possible de s'inspirer du support déjà existants pour les autres sites.

  • # Weboob

    Posté par  (site web personnel) . Évalué à 10.

    Comment se situe ce projet par rapport à Weboob ?

    Commentaire sous licence LPRAB - http://sam.zoy.org/lprab/

    • [^] # Re: Weboob

      Posté par  . Évalué à 5.

      • Weboob supporte moins de sites
      • Weboob tend à supporter des interactions plus complexes avec les sites web afin de pouvoir implémenter des clients lourds génériques. Il a donc une architecture plus complexe et il est plus difficile d'implémenter un backend Weboob que de rajouter un site à Quvi.
      • Weboob fournit bien d'autres fonctionnalités que l'interaction avec des sites de vidéos (gestion de comptes en banques, passerelle vers des forums et sites de nouvelles, gestion de profil sur des sites de rencontre, etc.)
    • [^] # Miro

      Posté par  (site web personnel, Mastodon) . Évalué à 2.

      Et par rapport à Miro ?

  • # arte ? pluzz ?

    Posté par  (site web personnel) . Évalué à 2.

    tiens je viens de voir des scripts pour arte et pluzz dans le rep de quvi pourtant en ligne de commande, il me dit qu'il ne supporte pas du tout ces derniers.
    pourquoi ?

    • [^] # Re: arte ? pluzz ?

      Posté par  . Évalué à 1.

      chez moi ils y sont bien (je le découvre d'ailleurs, cool !):

       ~  quvi --category-all --support            
      ...
      pluzz.fr    default
      ...
      videos.arte.tv  default|best
      
      
      • [^] # Re: arte ? pluzz ?

        Posté par  (site web personnel) . Évalué à 1.

        ah ba en fait c'est parce que je passe par cclive qui connait pas l'option --category-all

        faudra attendre quvi 0.2.20 si j'ai bien compris

  • # modifier le deuxième lien

    Posté par  . Évalué à 2.

    quelqu'un peut modifier le second lien et le positionner à la vraie adresse ?

  • # typo

    Posté par  (site web personnel) . Évalué à -1.

    Je suppose qu'il faut remplacer
    Le développement est basé sur Cython
    par
    Le développement est basé sur CPython

    Si il y a Pluzz et Arte, je suppose que l'on peut aussi essayer les autres replays des chaînes télés ?

    ウィズコロナ

    • [^] # Re: typo

      Posté par  . Évalué à 5.

      Non, Cython existe bien.

      « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

    • [^] # Re: typo

      Posté par  (site web personnel) . Évalué à 5.

      Comme le dit Xavier, Cython existe bien. J'ai d'ailleurs fait une petite présentation de Cython à cet adresse:
      Cython - Pour optimiser vos scripts

      C'est un "sur-langage" qui permet de faire des libraires compilées, j'ai préféré ce modèle que SWIG (que je trouve très puissant aussi). La raison de ce choix se trouve ici:
      Python-Quvi - Le choix Cython

      Voilà :)

  • # Oui, vu entre temps

    Posté par  (site web personnel) . Évalué à 2.

    Donc acte.
    Je vais essayer ce soir cette libraire, beau projet, merci.

    ウィズコロナ

    • [^] # Re: Oui, vu entre temps

      Posté par  . Évalué à 3.

      "dont acte" est la formule finale consacrée, avant les signatures officielles, d’un acte juridique et se trouve être l’ellipse de "ce dont il est pris acte"

Suivre le flux des commentaires

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