2016-05-01 8 views
0


Ich versuche, ein Skript in Python geschrieben, die ein Archiv (in diesem Fall eine Zip) zu erforschen, und rekursiv erhält alle Metadaten von Dateien.
Ich verwende den folgenden Befehl in der Regel Meta-Daten zu erhalten:zipfile - python: wie man Metadaten von Dateien in komprimierten Ordner

(mode, ino, dev, nlink, uid, gid, size, atime, mtime, ctime) = os.stat(fname) 

Das Problem ist, dass ich nicht wollen, die Dateien aus dem zip zu extrahieren, so habe ich nicht einen Weg zu os bereitzustellen .stat(). Das einzige, was ich tun kann, ist:

z=zipfile.ZipFile(zfilename,'r') 
    for info in z.infolist(): 
     fname = info.filename 
     data = z.read(fname) 

Kann ich die "Daten" verwenden, um Informationen zu bekommen, die ich brauche? oder sollte ich einen anderen Ansatz verwenden?

Antwort

0

Das ZIP-Format enthält nicht annähernd so viele Metadaten wie eine Datei im Dateisystem (und muss es auch nicht). Sie können alle Metadaten aus einer Zip-Datei extrahieren, ohne den Dateiinhalt zu dekomprimieren.

Die ZipFile.infolist() method gibt Ihnen eine Liste von ZipInfo instances, die Ihnen Zugriff auf diese Metadaten gibt.

Verwandte Themen