Xairro.com

Playlisten-Generator

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#!/usr/bin/env python

import os
import sys
import types
from os.path import join, splitext, isdir, isfile

base_path = '/home/martin/Music'
extensions = ['.mp3', '.ogg']

def getfiles(dir, exts):
    li = []
    for item in os.listdir(dir):
        if isfile(join(dir, item)) and splitext(item)[1] in exts:
            li.append(join(dir, item))
        elif isdir(join(dir, item)):
            li.extend(getfiles(join(dir, item), exts))
    return li

def render(list):
    return "\n".join(list)

if __name__ == "__main__":
    fn = len(sys.argv) > 1 and sys.argv[1] or "playlist.m3u"
    f = open(fn, "w")
    f.write(render(getfiles(base_path, extensions)))
    f.close()
    print "Playlist generated as %s" % fn