• STATISTIQUES
  • Il y a eu un total de 1 membres et 5997 visiteurs sur le site dans les dernières 24h pour un total de 5 998 personnes!


    Membres: 2 458
    Discussions: 3 571
    Messages: 32 817
    Tutoriels: 77
    Téléchargements: 38
    Sites dans l'annuaire: 58


  • ANNUAIRE
  • [FR] Le site du zero
    Découvrez gratuitement la programmation (C, C++, PHP, MySQL, XHTML, CSS...), Linux, le Mapping, la modé...
    Programmation
    [EN] Packet Storm
    Packet Storm est un site qui combine nouvelles de la sécurité informatique, téléchargemen...
    Vulnérabilités
    [FR] Asp-php
    Tutoriaux sur ASP, PHP, ASP.net, XML, SQL, Javascript, HTML, VML - Scripts et ressources pour webmasters - Forums d&#...
    Programmation
    [FR] Developpez.net
    Un forum communautaire qui se veut pour les développeurs en générale. Avec presque 500 000 membr...
    Programmation
    [EN] Rosecode
    Programming: 36, Math: 29, Probability: 5, Sequence: 7, Crypto: 4, Brainf**k: 13, TimeRace: 4, Hack: 9
    Challenges
    [FR] Microcontest
    Cryptographie: 7, Mathématiques: 8, Image Son Vidéo: 5, Intelligence artificielle: 3, Réseau: 2, Divers: 7, Phy...
    Challenges
    [EN] osix
    Site de challenge qui utilise un système de level on chaque épreuve doit être réussie avant d'accédÃ...
    Challenges

  • DONATION
  • Si vous avez trouvé ce site internet utile, nous vous invitons à nous faire un don du montant de votre choix via Paypal. Ce don servira à financer notre hébergement.

    MERCI!

    €



Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
[Python] Encoder les noms de ses fichiers
23-02-2013, 14h16 (Modification du message : 23-02-2013, 14h18 par InstinctHack.)
Message : #1
InstinctHack Hors ligne
Posting Freak
*



Messages : 1,365
Sujets : 184
Points: 299
Inscription : Dec 2011
[Python] Encoder les noms de ses fichiers
Salut,

J'ai eu besoin d'encoder les noms de mes fichiers, car je devrais les sauvegarder sur un support dont le système de fichier n'autorisé pas certains caractères utilisés par quelque uns de mes fichiers, alors plutot que faire comme l'abrutit moyen et de renommer à la main j'ai coder ça :

ça parcours le répertoire "transfert" qui se trouve dans le répertoire courant (modifier à votre sauce :p ) et cela de manière récursif, et encoder nom de fichiers mais également répertoire, j'ai juste faire en sorte de conserver les extensions pour les fichiers qui en possède.

critiques, conseil, et autres, je prend Wink
Code PYTHON :

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import os,base64,sys

def parcours_rep(rep,number):
    for element in os.listdir(rep):
        if os.path.isdir(rep+element):
            parcours_rep(rep+element+"/",number+1)
        if sys.argv[1]=="1":
            new_name=element
        elif sys.argv[1]=="2":
            if "." in element:
                new_name=base64.b64encode(".".join(element.split('.')[0:-1]).encode()).decode()+"."+element.split('.')[-1]
            else:
                new_name=base64.b64encode(element.encode()).decode()
            os.rename(rep+element,rep+new_name)
        elif sys.argv[1]=="3":
            if "." in element:
                new_name=base64.b64decode(".".join(element.split('.')[0:-1]).encode()).decode()+"."+element.split('.')[-1]
            else:
                new_name=base64.b64decode(element.encode()).decode()
            os.rename(rep+element,rep+new_name)
        print(("\t"*number)+element+"\t"+"deviens : "+new_name)

           

if len(sys.argv)>1:
    if sys.argv[1] in ["1","2","3"]:
        parcours_rep(os.getcwd()+"/transfert/",0)
    else:
        print("Paramètre incorrect")
else:
    print("Lancer ce script avec un paramètre")
    print("1 pour juste liste l'arborescence")
    print("2 pour encoder les noms des fichiers/répertoires")
    print("3 pour les décoder")

 
Citation :un jour en cours de java j'ai attrapé les seins d'une fille mais elle m'a frappé en disant "c'est privé !!"
j'ai pas compris pourquoi, je croyais qu'on était dans la même classe
+1 (0) -1 (0) Répondre


Sujets apparemment similaires…
Sujet Auteur Réponses Affichages Dernier message
  [Python]Situer mon niveau. InforMods 19 12,159 10-11-2016, 00h03
Dernier message: ZeR0-@bSoLu
  [PYTHON] un bot IRC basique darcosion 1 2,150 13-06-2016, 20h40
Dernier message: Yttrium
  [python] ANBU ::: TCP Session Hunter St0rn 2 2,616 25-02-2016, 18h45
Dernier message: otherflow
  [Python] Une autre façon de gérer les Virtualenv et Packages thxer 2 2,442 18-01-2016, 12h06
Dernier message: thxer
  [Python] rot script ark 9 5,775 08-03-2015, 00h37
Dernier message: ark
  [Python] Todo Manager ark 5 3,650 03-03-2015, 10h55
Dernier message: ark
  [python] Un décorateur pour inventorier les objets b0fh 1 2,473 04-12-2014, 17h50
Dernier message: thxer
  [python] UPnP Scanner St0rn 2 2,474 29-10-2014, 14h50
Dernier message: St0rn
  [python] Buffer Overflow : EBP et EIP St0rn 0 1,708 25-10-2014, 12h58
Dernier message: St0rn
  [Python] QuickHex thxer 9 5,377 15-08-2014, 20h26
Dernier message: sakiir

Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)
N-PN
Accueil | Challenges | Tutoriels | Téléchargements | Forum | Retourner en haut