keskiviikkona, syyskuuta 08, 2004

MP3-tiedostojen nime�misest�

Niin vaikea asia kuin tiedostojen soittaminen aakkosnumeerisessa j�rjestyksess� onkin (siis ei ollenkaan), monet mediasoittimet tuntuvat suoriutuvan siit� ilman mink��nlaisia vaikeuksia. Siksi olinkin v�h�n yll�ttynyt, kun huomasin, ett� Creative MuVo soittaa tiedostot ilmeisestikin k��nteisess� j�rjestyksess�.

Ajattelin tallettaa kaiken olennaisen tiedon mp3-tiedoston nimeen ja siksi ohjeistin WMP:n nime�m��n tiedostot tyyliin artisti-levyn nimi-raidan numero-laulun nimi.mp3.

T�m� on siis liian vaikea rasti pikkukoneelle.

Kirjoitin p�tk�n pythonia, jolla nime�n tiedostot tyyliin raidan numero-laulun nimi.mp3


import sys
import os
import os.path

mymusic = os.path.join(os.environ['HOMEDRIVE'],
os.environ['HOMEPATH'],
'My Documents',
'My Music')
for root, dirs, files in os.walk(mymusic):
mp3files = [f for f in files if f.endswith('.mp3')]
for f in mp3files:
os.rename(os.path.join(root, f),
os.path.join(root, '-'.join(f.split('-')[2:])))


Tottakai sen voi tehd� hienomminkin, mutta kun olen vasta aloittelija Pythonin kanssa. (Parannettuja versioita voi l�hett�� t�nnep�in.) Ja tied�n, Perlill� tuo olisi ollut one-liner. Mutta kun Perli� ei ollut asennettuna juuri nyt.

Katsotaanpas miss� j�rjestyksess� MuVo nyt soittelee piisit.

1 kommentti:

Anonyymi kirjoitti...

Eip� koskaan tullut mieleenk��n tallentaa biisej� muuten kuin Artisti/Levy/KplN - Biisin nimi.mp3

Ihan tarpeeksi siistilt� tuo n�ytt��.
Perlin mukana tosiaan tulee 'rename' -utilita jolla olisi voinut kokeilla jotain regexi�