Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: Bestanden hernoemen  (gelezen 8211 keer)

Offline vliegje20

  • Lid
Bestanden hernoemen
« Reactie #25 Gepost op: 2007/08/14, 12:45:22 »
Inderdaad nu je het zegt kheb geen schrijf rechten heel t bestand staat op me fat 32 partitie hoe zet ik die rechten even om?

Offline vliegje20

  • Lid
Bestanden hernoemen
« Reactie #26 Gepost op: 2007/08/14, 15:58:40 »
Ik krijg nu deze foutmelding:

Traceback (most recent call last):
  File "zzz.py", line 53, in
    Rename()
  File "zzz.py", line 15, in __init__
    titel = bestandSplit[1][:-4].strip()
IndexError: list index out of range


Ik heb even een work around gevonden voor de rechten:

de letters een voor een naar mijn home map zetten

Offline Rulus

  • Lid
Bestanden hernoemen
« Reactie #27 Gepost op: 2007/08/14, 16:25:16 »
Die had ik daarstraks al gevonden en opgelost, dat komt voor als er bestanden bij zijn zonder een "-" in de naam.

Dit zou het moeten oplossen:
=== modified file 'rename.py'
--- rename.py   2007-08-14 12:19:05 +0000
+++ rename.py   2007-08-14 12:19:23 +0000
@@ -11,7 +11,12 @@
         for bestand in files:
             if bestand[-4:] == '.mp3':
                 bestandSplit = bestand.split("-")
+
                 artiest = bestandSplit[0].strip()
+                if artiest[-4:] == '.mp3':
+                    #er zit geen streepje in de bestandsnaam
+                    continue
+
                 titel = bestandSplit[1][:-4].strip()
 
                 newTitel = self.sentenceCase(titel)
Of de hele nieuwe versie:
#!/usr/bin/python

import os
import sys

class Rename:
    def __init__(self):
        workingDir = sys.path[0]
        files = os.listdir(workingDir)
       
        for bestand in files:
            if bestand[-4:] == '.mp3':
                bestandSplit = bestand.split("-")

                artiest = bestandSplit[0].strip()
                if artiest[-4:] == '.mp3':
                    #er zit geen streepje in de bestandsnaam
                    continue

                titel = bestandSplit[1][:-4].strip()

                newTitel = self.sentenceCase(titel)
                newArtiest = self.artiestStrip(artiest)

                print newArtiest
                print newTitel
                print ' '

                nieuwBestand = newArtiest + " - " + newTitel + ".mp3"
                os.rename(bestand, nieuwBestand)
   
        enter = raw_input('Press key to quit.')

    def sentenceCase(self, string):
        words = string.split()
        wordsSentence = []
        i = 1
        for word in words:
             if i != 1:
                 word = word.lower()
             else:
                 word = word[0].upper() + word[1:]
             word.strip()
             wordsSentence.append(word)
             i += 1
        return ' '.join(wordsSentence)

    def artiestStrip(self, string):
        words = string.split()
        strippedWords = []
        for word in words:
            word = word[0].upper() + word[1:]
            word.strip()
            strippedWords.append(word)
        return ' '.join(strippedWords)

if __name__ == "__main__":
    Rename()

Offline vliegje20

  • Lid
Bestanden hernoemen
« Reactie #28 Gepost op: 2007/08/14, 17:06:53 »
Ok sorry niet gezien. Je bent fantastisch! Dit bespaart mij een paar dagen ;)

Als je ook nog weet hoe ik op mijn sda4 alle rechten kan krijgen ben ik helemaal gelukkig

Offline Rulus

  • Lid
Bestanden hernoemen
« Reactie #29 Gepost op: 2007/08/14, 17:11:43 »
Geen dank. Normaal moet je op een fat partitie (anders dan op een ntfs patitie) gewoon kunnen schrijven. Als dat toch niet lukt best een nieuw topic openen.