Checagem e remoção de arquivos
Publicado por Émerson Moreira (última atualização em 19/10/2014)
[ Hits: 8.261 ]
Esse script que criei em Python checa seus arquivos de uma pasta e vê se eles estão presentes em outra, se estiverem eles serão excluídos, senão continuam lá.
Fiz ele principalmente por causa das músicas repetidas em outras pastas para assim não precisar fazer esse trabalho manualmente.
# coding: utf-8
######!!!! Este programa checa suas musicas na pasta Musica e as compara com as da pasta Downloads !!!!######
######!!!! Se o nome for igual elas sera EXCLUIDA !!!!#########
#######!!! Se necessario altere os caminhos dos diretorios !!!!######
#######!!! SE quiser ... altere o caminho dos diretorios e tambem a extensao a ser utilizada pelo programa !!!########
import os
import glob
import shutil
def check_dirs():
global dow
global mus
global dow_dir
global mus_dir
print 'Checando diretorios'
dow_dir = os.path.expanduser('~/Downloads')
mus_dir = os.path.expanduser('~/Música')
dow = os.path.exists(dow_dir)
mus = os.path.exists(mus_dir)
while dow & mus == False :
if dow & mus == True :
print "!! Diretorios encontrados !!"
else :
print "!! Diretorios nao encontrados !!"
dow_dir = raw_input('Digite o caminho para a pasta de Downloads : ')
mus_dir = raw_input('Agora digite o caminho para a pasta de suas Musicas : ')
print 'diretorio de Downloads : ' + dow_dir
print 'diretorio de Músicas : ' + mus_dir
dow = os.path.exists(dow_dir)
mus = os.path.exists(mus_dir)
if dow & mus == True :
dow = dow_dir
mus = mus_dir
dow = dow_dir
mus = mus_dir
print '!! TUDO OK CHECAGEM TERMINADA !!'
check_dirs()
os.chdir(dow)
def chec_arq(x = 'mp3'): ## Se voce alterar o mp3 ele procurará pela extensao de tal arquivo
global arq ## a lista de seus arquivos
arq = glob.glob('*.' + x)
print 'estas sao suas musicas :'
print arq
y = 0
z = 0
lista = [] ##lista que ira guardar o valor se existe ou nao o caminho de teus arquivos
lista_apr = [] ## guardar o nome dos arquivos aprovados
print len(arq)
while z != len(arq) :
print arq[z]
lista.append(os.path.exists(mus + arq[z])) ## adiciona o valor booleano a lista TRUE/FALSE
lista[z] = str(lista[z]) ## que em seguida é convertido para string
z = z + 1
print lista
while lista.count('False') != 0 :
lista_apr.append(lista.index('False')) ##adiciona somente os arquivos das posiçoes TRUE
print lista_apr[y]
arq.pop(lista_apr[y]) ## exclui o primeiro item da lista denominado TRUE(de sua posiçao)
lista.pop(lista_apr[y]) ## a msm coisa q a linha d cima
y = y + 1
print 'estes serao excluidos : '
print arq
val = raw_input('digite a extensao das suas musicas(se nao digitar nada sera o padrao mp3) : ')
if val != '' :
chec_arq(x=val)
else :
chec_arq(x = 'mp3')
def rmove(x = len(arq)): ## esta funçao exclui todos os arquivos aprovados nos outros testes
loop = 0
while loop != x :
os.remove(arq[loop])
print 'removendo arquivo : ' + arq[loop]
loop = loop + 1
rmove()
print '!!!! Tudo feito !!!!'
Mini-dicionário de termos em Python e PyQT 4
Criando um rootfs para sistemas embarcados a partir de cópia de um sistema já operando
hicon - Criador de ícones desktop e aplicações do Gnome
SynapSeq - programa para estimular as ondas cerebrais
Por que seu __DIR__ falhou ou o "inferno" dos caminhos no PHP
Preparando-se para certificações da LPI através do LPI Lab
Migração de Arch Linux para repositórios CachyOS (Uso de Instruções v3 e v4)
As diferencas entre o clipboard comum e a selecao ativa
Arch Linux com repos do CachyOS para otimização ou usar Gentoo?
Ativando o modo Quake no XFCE4-Terminal
[Tutorial] Configurando Multimaster no Samba 4 AD (DC02) + Explicação de FSMO Roles
Abrir um arquivo URL pelo Clipper (4)
Eu aprendi o segredo das artes! hahaha (0)
Instalação Dual Boot Linux+Windows 11 [RESOLVIDO] (5)









