folgendes Script generiert eine simple M3U-Playliste.
Code: Alles auswählen
#!/usr/bin/python
# -*- coding: utf-8 -*-
"""
M3U-Playlist Generator
----------------------
This script generates a simple M3U playlist from the given directory.
It works recursive. Just type "python playlist.py [--add|--random] <directory> <target>"
Available options:
-a, --add append data to the playlist and don't delete existing data.
-r, --random randomize playlist
Author: 2006 Rafael Weber
License: GNU GPL see LICENSE for details
"""
import os
import glob
import random
import sys
from optparse import OptionParser
musicfiles = []
musicext = ['*.mp3', '*.MP3','*.ogg', '*.OGG','*.wma',
'*.WMA', '*.wav', '*.WAV', '*.aac', '*.AAC', '*.flac', '*.FLAC']
parser = OptionParser()
parser.add_option("-r", "--random", action="store_true")
parser.add_option("-a", "--add", action="store_true")
options, args = parser.parse_args()
def add_music(dir):
for ending in musicext:
musicfiles.extend(glob.glob(os.path.join(dir,ending)))
return musicfiles
def randomize():
random.shuffle(musicfiles)
if len(args) < 1:
print "No directory specified."
elif len(args) != 2:
print "No target specified."
else:
for dirpath, dirnames, filenames in os.walk(args[0]):
add_music(dirpath)
if options.random:
randomize()
if len(musicfiles) == 0:
print "No media files found."
sys.exit()
try:
if options.add:
f = file(args[1], "a")
else:
f = file(args[1], "w")
f.write("\n".join(musicfiles))
f.close()
print "Playlist created successfully."
except IOError:
print "Error while writing file."
Code: Alles auswählen
python playlist.py --random /media/hda6/ Desktop/hda6_playlist.py
MfG
rafael