Ich habe einen Ordner mit über 700 Unterordnern. In jedem Unterordner befinden sich *.json.gz Dateien, die ich unzippen und als .txt abspeichern möchte. Mit dem folgenden Code kann ich die .gz Dateien unzippen:
import os
import gzip
import shutil
search_path = os.getcwd()
file_type = ".gz"
for fname in os.listdir(path=search_path):
if fname.endswith(file_type):
with gzip.open(fname,'rb') as f_in:
with open(fname+'.txt','wb') as f_out:
shutil.copyfileobj(f_in,f_out)
Wie kann ich nun den Code anpassen, dass er die .gz Dateien in allen Unterordnern unzipped?
Vielen Dank für die Hilfe!
Unzippen in Unterordner
- __blackjack__
- User
- Beiträge: 13110
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@stef94: Warum änderst Du die Endung in *.txt statt *.json?
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
- __blackjack__
- User
- Beiträge: 13110
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@stef94: Mit der `pathlib.Path.glob()`-Methode, wie sparrow schon geschrieben hat.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
@Sirius3: Ich dachte, ich muss die .gz Dateien zuerst entpacken, um dann mit pandas arbeiten zu können?
Schlussendlich möchte ich alle JSON Dateien in einem pandas Dataframe haben um dann Machine Learning anwenden zu können.
Kann ich direkt die -gz Files aus den Unterordnern in pandas ziehen?
Schlussendlich möchte ich alle JSON Dateien in einem pandas Dataframe haben um dann Machine Learning anwenden zu können.
Kann ich direkt die -gz Files aus den Unterordnern in pandas ziehen?
Nicht fragen, sondern selber hier schauen
https://pandas.pydata.org/pandas-docs/s ... d_csv.html
Beispiel:
Code: Alles auswählen
df = pd.read_csv('sample.tar.gz', compression='gzip')
Ich bin Pazifist und greife niemanden an, auch nicht mit Worten.
Für alle meine Code Beispiele gilt: "There is always a better way."
https://projecteuler.net/profile/Brotherluii.png
Für alle meine Code Beispiele gilt: "There is always a better way."
https://projecteuler.net/profile/Brotherluii.png