2010-07-07 9 views
7

Est-il possible d'ouvrir un fichier mp3 en python (possible en utilisant POPEN) et je ne veux pas l'exécuter dans le programme que je veux dire comme une fenêtre séparée dans le lecteur multimédia ou tout simplement pour l'ouvrir quand j'appelle la fonction et si oui comment. Merci beaucoup.Peut python ouvrir un fichier mp3

+0

liées: [? Y at-il un équivalent indépendant de la plate-forme de os.startfile()] (http://stackoverflow.com/q/17317219/4279) – jfs

Répondre

11

Ouverture d'un fichier avec l'application associée (de Windows uniquement):

import os 
os.startfile('my_mp3.mp3') 

Un lien vers la documentation can be found here.

+0

cool. Je n'étais pas au courant de ça. –

+0

il a jeté une erreur il a dit: Traceback (dernier appel dernier): Fichier "C: \ Utilisateurs \ matt \ Desktop \ 1.py", ligne 3, dans os.startfile ('C: \ Users \ matt \ Desktop \ test.mp3 ') WindowsError: [Erreur 2] Le système ne trouve pas le fichier spécifié:' C: \\ Utilisateurs \\ matt \\ Bureau \ test.mp3 ' – DonJuma

+0

Voici le script os.startfile ('C: \ Utilisateurs \ matt \ Desktop \ test.mp3') – DonJuma

1

Vous pouvez également utiliser subprocess. Ensuite, vous devrez spécifier le chemin d'accès à l'exécutable que vous souhaitez exécuter, ce qui peut ne pas être utile si vous voulez que cela fonctionne sur l'ordinateur de quelqu'un d'autre, mais c'est généralement une technique assez puissante.

Utilisation:

import subprocess 
PLAYERPATH = "C:/Program Files (x86)/VideoLAN/VLC/vlc.exe" 
subprocess.call([PLAYERPATH, FILEPATH]) 
+0

Ceci s'applique uniquement à Windows; sur les systèmes POSIX (Linux, etc.) 'subprocess' honore toujours' $ PATH'. –

0

Ce script choisir une chanson aléatoire dans le répertoire courant. Et ignorera tout fichier qui n'est pas un fichier .mp3. Vous pouvez ajouter des extensions supplémentaires à la liste à ouvrir par exemple: ext3 = ['. Mp3', '.mp4'] et ainsi de suite.

import random,os,sys 

folder=os.listdir(os.getcwd()) 
file=random.choice(folder) 
ext3=['.mp3'] 
print('First random pick: '+file) 

while file[-4:] not in ext3 : 
    print('Not an MP3 file : '+file) 
    file=random.choice(folder) 
else: 
    os.startfile(file) 
    print('Song name: '+file) 

sys.exit() 

##os.startfile(random.choice(folder)) 
+0

fonctionne comme un charme après quelques réglages:) – Mrk

1

Si vlc est déjà installé sur votre système, vous pouvez utiliser la commande cvlc.

import os 
os.system('cvlc path/to/foo.mp3') 

Cela fonctionnera. J'espère que cela aide.

1
import mp3play,time 
data= r'pathname' 
clip = mp3play.load(data) 
clip.play() 
time.sleep(20) 
clip.stop() 
1
# Just listen to all the mp3 files in order 
import os 
folder=os.listdir(os.getcwd()) 
for files in folder: 
    if files.endswith(".mp3"): 
     os.startfile(files)