Red de conocimiento informático - Problemas con los teléfonos móviles - Programación de tuplas

Programación de tuplas

ziprar.py

__Autor_ _? =?willyday

#!/usr/bin/env? python3

¿Importar? Sistema Operativo (Operating System)

¿Importado? [Cálculo] Comando de copia del sistema (abreviatura de sistema)

¿Importar? Hora

¿Importar? Shutier

¿Importado? zipfile

¿Desde dónde? archivo zip? ¿importar? ZIP _deflate

#Clase de procesamiento de archivos Zip

¿Clase? ArchivoZ(objeto):

def? __init__(self, fname,?mode='r',?basedir=""):

self.fname? =?fnname

self.mode? =?¿Cómo

Si? ¿modo.automático? ¿existir? (‘w’, ?a’):

self.zfile? =?archivo zip. ZipFile(fname, modo, ?compression=ZIP_DEFLATED)

otro:

self.zfile? =?archivo zip.

ZipFile(fname, self-mode)

self.basedir? =?basedir

Si? ¿No es así? self.basedir:

self.basedir? =?os.path.dirname(fname)

def? addfile(self, ruta,? arcname=Ninguno):

¿Ruta? =?path.replace('//',?'/')

¿Si? ¿No es así? arcname:

¿Y si? path.startswith(self.basedir):

arcname? =?Ruta[len(self.basedir):]

En caso contrario:

arcname? =?''

self.zfile.write(ruta,?arcname)

def? addfiles(self, ruta):

¿Para qué? ¿camino? ¿existir? Ruta:

¿Y si? isinstance(ruta, tupla):

self addfile(*ruta)

De lo contrario:

self.addfile(ruta)

definición? close(self):

self.zfile.close()

def? extract_to(self,?path):

¿Para qué? ¿pag? ¿existir? self.zfile.namelist():

Autoextraíble (p, ? ruta)

def? extraer(self, ?fname, ?path):

si ? ¿No es así? fname.endswith('/'):

fn? =?os.path.join(ruta,?fname)

ds? =?os.path.dirname(fn)

¿Si? ¿No es así? os.path.exists(ds):

os.makedirs(ds)

¿Qué usar? abierto(nota, WB')? ¿Como? Mujer:

f.write(self.zfile.read(fname))

#Crear un archivo Zip

def? createZip(zarchivo, archivo):

z? =?ZFile(zfile,?w')

z.addfiles(file)

Close()

#Extraiga el archivo Zip al archivo especificado Clip

¿definitivamente? extraerZip(archivoz, ruta):

z? =?ZFile

z.extract_to(path)

Close()

#Extraer rar a la carpeta especificada

def? extractRar(archivoz, ruta):

rar_command1? =?"WinRAR.exe?x?-IBUK?%s?%s "? %?(zfile,?ruta)

rar_command2? =?r " " C:\ winrar .exe "?x?-ibuk?%s?"%s"?%?(zfile,?path)

Pruebe:

res? =? sistema operativo (rar_command1)

if? res? ==?0:

Imprimir("¿Ruta? OK.")

Excepto:

Prueba:

res?=?os(rar_command2)

if?res?=?0:

Imprimir("Éxito ? ¿A dónde ir? ¿Descomprimir? ¿Ese archivo?

format(path))

Excepto:

Print('Error:? ¿Puede ser? ¿No? ¿unrar? ¿Ese? archivo? {}'. format(path))

#?Extraiga varios archivos comprimidos en una carpeta temporal.

¿definitivamente? Extraer archivos (lista de archivos):

¿Newdir? =?str(int(time.time()))

¿Para qué? fn? ¿existir? Lista de archivos:

subdirectorio? =?os.path.join(newdir,?fn)

Si? ¿No es así? os.path.exists(subdirectorio):

os.makedirs(subdirectorio)

¿Y si? fn.endswith('.zip'):

extractZip(fn, subdial)

Elif? fn.endswith('.rar’):

extractRar(fn, subdial)

¿Volver? Newir

#?Encuentra algunos archivos en la carpeta. Devuelve un archivo cuyo contenido contiene todas las cadenas en findtr_list.

¿definitivamente? findstr_at(basedir, file_list,?findstr_list):

¿Archivo? =?[]

¿Para qué? r,? ds,? fs? ¿existir? os.walk(basedir):

¿Para qué? fn? ¿existir? fs:

¿Y si? fn? ¿existir? Lista de archivos:

¿Qué usar? abrir(os.path.join(r,fn))? ¿Como? Mujer:

s? =?Leer()

Si? all(i? in? s? ¿para qué? i? in? findstr_list):

files.append(os.path.join(r,fn))

¿Regresar? Archivo

¿Y si? __nombre__? ==?__main__ ':

¿Archivo? =?[¿Yo? ¿para qué? ¿I? ¿existir? sys.argv[1:]? ¿si? ¿No es así? I.Comenzar con ('-')]

¿Descomprimir el archivo? =?[¿Yo? ¿para qué? ¿I? ¿existir? ¿documento? ¿si? i.endswith('.zip')? ¿aún? i.endswith('.rar')]

archivos xml? =?[¿Yo? ¿para qué? ¿I? ¿existir? ¿documento? ¿si? i.endswith('.xml')]

save_unzipdir? =?¿En serio? ¿si? -¿Sí? ¿existir? sys.argv? ¿De lo contrario? ¿Mal

findstr incorrecto? =?[i.split('=')[-1]? ¿para qué? ¿I? ¿existir? sys.argv? ¿si? I.Empezar con ('- find=')]

¿buscar cadena? =?',?'. join(['`{} `'. ¿Formato (1)? ¿para qué? ¿yo? en? findstr])

¿Nuevodir? =?Extraer archivos (descomprimir archivos)

Resultado=? findstr_at(newdir,xmlfiles,?findstr)

¿Si? ¿No es así? Resultado:

¿MSG? =?No? ¿de? ¿eso? ¿documento? ¿Incluir? ¿eso? ¿Dado? ¿Cadena? {}.'

print(msg.format(findstring))

De lo contrario:

¿MSG? =?'{}?Archivo? ¿Incluir? ¿eso? ¿Dado? ¿Cadena? {}:'

print(msg.format(len(resultado),?findstring))

Imprimir(' \n '.

unirse([i.replace(newdir+os.sep,?'')?¿para qué?i?in?sorted(resultado)])

si? ¿No es así? save_unzipdir:

shutil.rmtree(newdir)$? ¿Python3? ziprar.py? aaa.zip? aaa2.zip? aaa3.zip? aaa.xml? aaa1.xml? aaa2.xml? - find="¿Fue? ¿Fue"? - find="cuando "

¿No? ¿de? ¿eso? ¿documento? ¿Incluir? ¿eso? ¿Dado? ¿Cadena? "¿Es? es`,? "cuándo".

$?python3?ziprar.py?aaa.zip?aaa2.zip?aaa3.zip?aaa.xml?aaa1.xml?aaa2.xml ? - buscar="¿Eso? ¿Era "? - find="I "

2? ¿el archivo? ¿contiene? ¿eso? ¿la cadena dada? "? ¿Es así? `I`:

aaa.zip/aaa2.xml

aaa2.zip/aaa2.xml

$?python3? ziprar.py? aaa.zip? aaa2.zip? aaa3.zip? aaa.xml? aaa1.xml? aaa2.xml? - find="¿Fue?

2?¿Archivo? ¿Incluir? ¿eso? ¿Dado? ¿Cadena? "¿Era? Era `:

aaa.zip/aaa2.xml

aaa2.zip/aaa2.xml