Simple Lanceur, un lanceur multimédia en Python

500px-Python-logo-notext.svg(Mise à jour : 26/04/2014)

Quand j’ai un peu de temps, j’aime bien jouer au programmeur et me confronter à la création de logiciels. Je suis ainsi assez satisfait d’Asobou !, entièrement programmé en VB.net, mais depuis que j’ai un portable sous Mac OS, je suis confronté à la problématique du multi-plateforme…

J’ai donc repris Asobou ! depuis le début, en Java (et une nouvelle version ne devrait pas tarder). En cherchant le langage avec lequel développer la version multi-plateforme d’Asobou !, j’ai un peu joué avec Python, qui s’avère facile à utiliser et très adapté au multi-plateforme. Tant et si bien que je vous propose aujourd’hui un lanceur de fichiers assez basique, mais qui remplit parfaitement sa fonction, j’ai nommé Simple Lanceur (on appréciera l’originalité du titre).

Simple Lanceur se présente sous la forme d’un script affichant une liste à partir de laquelle s’affichent des fiches de présentation très simples et depuis laquelle on peut lancer n’importe quel fichier, en utilisant le programme par défaut de l’OS.

Windows :

Mac OS :

Linux (ici Ubuntu) :

Simple Lanceur n’utilise que la bibliothèque Python standard, y compris pour la GUI (TKinter inside). Si Python est installé sur l’ordinateur de l’utilisateur, Simple Lanceur devrait fonctionner sans difficulté. Comment savoir si Python est installé ? Très simple : depuis la console Windows ou le terminal Mac OS / Linux, il suffit de taper « python » et de valider : si vous obtenez un résultat comparable à ceux présentés ci-après, c’est tout bon. Sinon, un petit tour sur le site officiel de Python permettra de résoudre le problème.

Windows :

Mac OS :Linux (ici Ubuntu) :

Le fonctionnement de Simple Lanceur est basique :

– Placé dans un dossier, il va afficher dans la liste le nom de tous les sous-dossiers (les utilisateurs de Linux remplaceront tous les « dossier » de cet article par « répertoire »…).

– Dans chaque sous-dossier – logiquement listé – il va chercher une image d’illustration nommée « jaquette.gif » qui sera placée en image principale, et trois images nommées « 001.gif », « 002.gif » et « 003.gif » qui seront placées en pied de page.

– En cliquant sur le bouton « REGARDER », le fichier placé dans le sous-dossier visualisé et nommé « film.film » est lancé avec le programme configuré pour lancer les fichiers « .film ».

– Et c’est tout ! Notez que j’ai développé Simple Lanceur pour disposer d’un lanceur léger et basique pour mes divx, mais qu’il peut servir à lancer n’importe quel fichier : si vous voulez lancer un mp3 par exemple, il suffit de modifier le script pour que le fichier à lancer s’appelle « mp3.mp3 » (par exemple)…

Le script est simple et du coup assez limité : je vous propose ci-après une FAQ fictive (dans le sens ou personne n’a posé de question :D) permettant d’éluder la plupart des petits problèmes.

Si Simple Lanceur vous intéresse, n’hésitez pas à télécharger l’archive contenant le script et un dossier exemple : Simple Lanceur (Utilisateur : Acces_ftp, mot de passe JeVeuxCharger).

Mise à Jour 26/4/2014 : J’ai corrigé le script, qui ne fonctionnait pas sous Windows, le fichier à lancer n’étant pas localisé.

En pratique, j’ai remplacé la ligne

fichierALancer = titreSelectionne + "/" + var_film

par

fichierALancer = repertoire_courant + "/" + titreSelectionne + "/" + var_film

Le script est donc vraiment multi-plateformes !

Sinon, j’insère également le script lui-même, qu’il vous suffit de coller tel quel dans un fichier texte brut dont l’extension sera « .py ».

Code HTML :
[ Montrer le script ]

Voilà, n’hésitez pas à me faire part de vos remarques ou suggestions !

Bob Dupneu

P.S. : Le code utilisé pour afficher/masquer le script a été trouvé ici.

SIMPLE LANCEUR – FAQ

1 – Le nom des fichiers contenu dans le dossier est-il important ?

Oui, mais les premières lignes du script proposent de modifier ces noms. Attention : sous Mac OS et Linux, 001.gif et 001.GIF ne sont pas la même chose.

2 – Je veux utiliser Simple Lanceur pour lancer des films et des fichiers word. Est-ce possible ?

Tout à fait, mais pas dans le même dossier. Il faut un dossier contenant un script de Simple Lanceur qui va chercher des fichiers film. film, et un autre contenant un script de Simple Lanceur modifié pour aller chercher des fichiers doc.doc (par exemple).

3 – La fiche est visible, mais il ne se passe rien lorsque je clique sur le bouton.

Les quatre images (l’image principale et les trois images d’illustration) ne doivent pas être présentes dans le dossier. Il faut compléter le dossier avec les images blanches contenues dans le dossier « exemple » de l’archive téléchargeable, car si le script ne trouve pas les quatre images, il ne plante pas mais ne lance pas le fichier, pour une raison que je n’ai pas encore identifiée.

4 – J’ai placé mes images dans le dossier, mais elles ne s’affichent pas.

TKinter, utilisé pour la GUI, se limite à l’affichage des images GIF et PGM/PPM. Vérifiez que vos images sont bien dans un de ces formats, et au besoin convertissez-les avec un logiciel de traitement d’images, comme The Gimp ou XnView.

Vérifiez également que le nom des images correspond bien à ce que recherche le script, et rappelez-vous que sous Mac OS et Linux, la casse est importante (vois question 1)

5 – Le script ne se lance pas, et j’ai le message d’erreur « Wrapper TK non disponible ».

Cela veut dire que TKinter n’est pas installé. Sous Windows et Mac OS, l’erreur ne devrait pas se produire, mais cela arrive sous Linux, qui livre souvent les programmes en pièces détachées. Un « sudo apt-get install python-tk » dans le terminal devrait régler le problème (sous debian-like du moins). Sinon, renseignez-vous sur la façon d’installer TKinter avec votre distribution.

6 – J’ai un autre problème.

Posez votre question dans les commentaires, j’y répondrai et je compléterai cette FAQ.

2 réflexions sur “ Simple Lanceur, un lanceur multimédia en Python ”

  1. Bonjour et merci pour ce script,
    Mais je ne suis pas très doué, aussi pourrais-tu mettre un script déjà modifié et fonctionnel en démonstration, ce serait plus parlant pour trouver le bon endroit des variable à adapter à la configuration.
    Car ton script s’ouvre nickel mais je ne peux rien en faire j’ai beau essayer de mettre des chemins, des noms de fichiers, et tout bloque ou me fait une fenètre sans fin que je doit tuer.
    Merci de ta compréhension.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.