• 19.07.2025, 02:03
  • Registrieren
  • Anmelden
  • Du bist nicht angemeldet.

 

trummlerator

Full Member

Python Tool

Samstag, 17. Dezember 2005, 19:15

Hallo

Y0Gi hat mir mal vor einem Jahr ein kleines Tool in Python geschrieben. Das Tool hat die Interpreten von mp3 Files eingelesen und Verzeichnisse mit dem Namen der Interpreten erstellt. Ausserdem wurden alle mp3's in das entsprechende Verzeichnis verschoben. Das Tool ist ultra nützlich und hat mir einen Haufen Arbeit gespart. Vielen Dank nochmals für das Y0Gi !

Nun hab ich ein weiteres Problem. Ich möchte nun von jedem Album ein eigenes Verzeichnis erstellen und dort drin die Playlist und die dazugehörigen mp3's haben.

Ich hab heute selbst versucht das Tool umzuschreiben hab es aber partout nicht fertiggebracht. dachte das wäre ein kleines Problem, bin aber beim umschreiben im Zusammenhang mit RE (regular Expressions) gescheitert. Hab auch in die doku geschaut. Diese ist leider nur auf englisch verfügbar und hat mir nicht viel geholfen.

Vielleicht kann ja einer von euch Programmier Gurus die Lösung aus dem Ärmel schütteln.


Nun so sehen alle meine Playlisten aus: Interpret - Album.m3u
und so alle meine mp3 Files: Interpret - Track.mp3

Das Programm müsste also den Teil nach dem Bindestrich bis zum Dateiformat auslesen und genau an diesem Problem bin ich gescheitert.


Hier der Code des Tools:

Quellcode

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
29
30
31
32
33
34
35
#!/usr/bin/env python

"""mp3sort.py -- Version 17-Oct-2004

Tries to extract the artist name from each mp3 file in the directory and moves
the file to a subdirectory with the artist's name. Feel free to change the
file mask and artist search expression to fit your needs.

Copyright (c) 2004 Jochen Kupperschmidt <webmaster@homework.nwsnet.de>
Released under the terms of the GNU General Public License
  _                               _
 &#124; &#124;_ ___ _____ ___ _ _ _ ___ ___&#124; &#124;_
 &#124;   &#124; . &#124;     &#124; ._&#124; &#124; &#124; &#124; . &#124;  _&#124; . /
 &#124;_&#124;_&#124;___&#124;_&#124;_&#124;_&#124;___&#124;_____&#124;___&#124;_&#124; &#124;_&#124;_\
   [url]http://homework.nwsnet.de/[/url]
"""

import glob
import os
import os.path
import re


pattern = re.compile('(.+) - .*')
for filename in glob.glob('*.m3u'):
    if not os.path.isfile(filename):
        continue
    try:
        dirname = pattern.match(filename).group(1).strip()
    except AttributeError:
        pass
    else:
        if not os.path.isdir(dirname):
            os.mkdir(dirname)
        os.rename(filename, os.path.join(dirname, filename))



Grüsse Paranoid Android
Es gab mal einen Weg es den Bossen zu zeigen der nannte sich Rock 'n' Roll! Aber was war dann? Oh Nein den haben die Bosse auch kaputt gemacht mit einem kleinen Ding Namens MTV! - Jack Black, School of Rock

trummlerator

Full Member

Re: Python Tool

Samstag, 17. Dezember 2005, 19:36

Juhuu

Hab nun gerade herausgefunden wies funktioniert.

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import glob
import os
import os.path
import re


pattern = re.compile('.* - (.+).m3u')
for filename in glob.glob('*.m3u'):
    if not os.path.isfile(filename):
        continue
    try:
        dirname = pattern.match(filename).group(1).strip()
    except AttributeError:
        pass
    else:
        if not os.path.isdir(dirname):
            os.mkdir(dirname)
        os.rename(filename, os.path.join(dirname, filename))



Jetzt muss ich es nur noch fertig bringen die m3u's auszulesen und die files in das entsprechende Verzeichnis zu verschieben. Aber ich glaub das kann man als blutiger Anfänger vergessen einfach so schnell mal...


Gruss PA
Es gab mal einen Weg es den Bossen zu zeigen der nannte sich Rock 'n' Roll! Aber was war dann? Oh Nein den haben die Bosse auch kaputt gemacht mit einem kleinen Ding Namens MTV! - Jack Black, School of Rock

r1ppch3n

Moderator

Re: Python Tool

Sonntag, 18. Dezember 2005, 01:40

the godfather
macht das und noch viel mehr
manb muss ja ned immers rad neu erfinden ;)

Y0Gi

God

Re: Python Tool

Sonntag, 18. Dezember 2005, 01:57

Lass ihn doch ruhig was tun. Erfahrungen muss man auch selbst machen. Wer zu blöd ist, kann ja gerne fertige Tools benutzen ;)

r1ppch3n

Moderator

Re: Python Tool

Sonntag, 18. Dezember 2005, 02:17

das zu blöd möcht i ma überlesen haben
ich für meinen teil wär da einfach nur zu faul ;D