Seite 1 von 1

Überprüfe, ob zip Datei schon entzippt wurde

Verfasst: Donnerstag 8. Oktober 2020, 14:28
von fischer-klaus3
Hallo!

Ich würde gerne überprüfen, ob eine bestimmte zip - Datei bereits entzippt wurde. Meine Idee war es zu schauen welche Dateien in der zip Datei vorhanden sind und dann mit dem Ordner überprüfen, in dem entzippt wurde, oder werden sollte. Weiter unten findet ihr meinen Versuch. Für mich sieht es nicht nach einer eleganten und schnellen Lösung aus. Wie kann ich diese Lösung etwas eleganten umbauen um zu überprüfen, ob bereits eine bestimmte zip Datei entzippt wurde?

Code: Alles auswählen

    with ZipFile(data_dir + "/data.zip", 'r') as zipObj:
        listOfiles = zipObj.namelist()
        for elem in listOfiles:
            print(elem)
            for file in pathlib.Path(data_dir).glob('*.csv'):
Vielen Dank im Voraus.

Re: Überprüfe, ob zip Datei schon entzippt wurde

Verfasst: Donnerstag 8. Oktober 2020, 14:36
von Sirius3
@fischer-klaus3: da fehlen Zeilen im Code.
Warum benutzt Du unten pathlib, aber für die zip-Datei stückelst Du Strings mit + zuammen?

Warum prüfst Du nicht einfach, ob die Dateien schon existieren?

Code: Alles auswählen

data_path = Path("...")
with ZipFile(data_path / "data.zip") as zipfile:
    if all(
        (data_path / filename).exists()
        for filename in zipfile.namelist()
    ):
        print("schon entpackt")

Re: Überprüfe, ob zip Datei schon entzippt wurde

Verfasst: Donnerstag 8. Oktober 2020, 14:40
von fischer-klaus3
Danke, genau auf sowas war ich nach der Suche, nur habe das falsche gesucht! :) Dankesehr für die schnelle Hilfe!