renix1

Find archives in dir with Python 3.x

Jul 26th, 2016
135
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.73 KB | None | 0 0
  1. # coding: utf-8
  2. from glob import glob
  3. from os import chdir, system
  4. from functools import lru_cache
  5.  
  6.  
  7. @lru_cache(maxsize=None)
  8. def enc_arquivos(extensao, diretorio): #função feita para encontrar arquivos e retornar numa lista, senão retorna False
  9.     extensao = "*" + extensao
  10.     try:
  11.         try:
  12.             try:
  13.                 chdir(diretorio)
  14.                 arquivos = {}
  15.                 arquivos_achados = []
  16.                 # print("Estamos no diretório %s" % diretorio)
  17.                 for arquivo in glob(extensao):
  18.                     arquivos_achados.append(arquivo)
  19.                     arquivos[extensao] = arquivo
  20.                     for key in arquivos:
  21.                         exte = key[key.find('.') + 1::]
  22.                         filename = arquivos[key]
  23.                         filename = filename[:filename.find('.'):]
  24.                         print('Arquivo com extensão', exte, 'com nome de', filename)
  25.             except IndexError:
  26.                 print('Você não digitou nada!')
  27.                 return False
  28.             return arquivos_achados
  29.         except FileNotFoundError:
  30.             print("Não conseguimos acessar o diretório.\nTalvez ele não exista...")
  31.             return False
  32.     except IndexError:
  33.         print("Você não digitou nada!\n")
  34.         return False
  35. # Demonstração
  36. extensions = ['.gif', '.exe', '.ico', '.txt', '.png', '.jpg', '.iso', '.py', '.zip', '.url', '.msi', '.zip', 'dll']
  37. total=0
  38. for extension in extensions:
  39.     path = "C:\\Windows\\System32" # Use \\ ao invés de só \ (input é mais fácil e você não precisa digitar \\, :D)
  40.     arquivos_encontrados = enc_arquivos(extension, path)
  41.     total+=len(arquivos_encontrados)
  42. print("Arquivos encontrados:", total)
Advertisement
Add Comment
Please, Sign In to add comment