CodeGym /Kurse /Python SELF DE /Daten in den Formaten CSV und Excel speichern

Daten in den Formaten CSV und Excel speichern

Python SELF DE
Level 32 , Lektion 3
Verfügbar

1. Vorbereitung der Daten zum Speichern

In den vorherigen Vorlesungen haben wir bereits gelernt, Daten aus Webseiten mit der Bibliothek BeautifulSoup zu extrahieren. Jetzt ist es an der Zeit, unsere Scraping-Ergebnisse in etwas Nützliches und Praktisches für die Analyse zu verwandeln. Denn wenn die Daten nur in deinem Skript bleiben, bringen sie wenig Nutzen. Heute lernen wir, wie man Daten in den Formaten CSV und Excel speichert, denn, wie man weiß, im Leben eines Programmierers, wie auch im Leben einer Katze, ist das Wichtigste — zu finden, was zu essen ist... äh, ich meine, zu speichern.

Bevor wir beginnen, unsere Daten in lustige Tabellen zu verwandeln, lassen wir uns kurz anhalten und betrachten, wie wir unsere Daten für den Export vorbereiten. Normalerweise werden die Daten, die wir aus Webseiten extrahieren, in Form von Listen oder Dictionaries dargestellt. Man sollte sie so formatieren, dass sie bereit für den Export in ein tabellarisches Format sind.

Beispieldaten

Nehmen wir an, du hast die folgenden Daten über Bücher gesammelt:

Python

books = [
    {"title": "Harry Potter und der Stein der Weisen", "author": "J. K. Rowling", "price": "350.00"},
    {"title": "Der Herr der Ringe", "author": "J. R. R. Tolkien", "price": "500.00"},
    {"title": "Der Meister und Margarita", "author": "M. A. Bulgakow", "price": "450.00"}
]

2. Speicherung im CSV-Format

CSV (Comma-Separated Values) — ist ein einfaches Textformat, das tabellarische Daten speichert. Jede Zeile in CSV stellt einen Datensatz dar, und jede Spalte wird durch Kommata getrennt. Lassen wir uns lernen, wie man unsere Daten in diesem Format speichert.

Verwendung der csv-Bibliothek

Python stellt uns ein praktisches Modul csv zur Verfügung, das das Arbeiten mit CSV-Dateien erheblich einfacher macht. Hier ist, wie du unsere Buchdaten in CSV exportieren kannst:

Python

import csv

with open('books.csv', mode='w', newline='', encoding='utf-8') as file:
    writer = csv.DictWriter(file, fieldnames=["title", "author", "price"])
    writer.writeheader()
    writer.writerows(books)

print("Daten wurden erfolgreich in books.csv gespeichert")

Wichtig: Gib immer newline='' beim Öffnen einer Datei im Modus w an, um zusätzliche Leerzeilen in Windows zu vermeiden.

Daten aus CSV lesen

Der Vollständigkeit halber sehen wir uns an, wie man Daten aus CSV wieder einliest:

Python

with open('books.csv', mode='r', encoding='utf-8') as file:
    reader = csv.DictReader(file)
    for row in reader:
        print(row)

3. Speicherung im Excel-Format

Für die Arbeit mit Excel in Python verwenden wir die Bibliothek pandas. Pandas ermöglicht es uns, unsere Daten leicht in ein DataFrame zu konvertieren und sie in verschiedene Formate, einschließlich Excel, zu exportieren.

Installation von pandas

Wenn du pandas noch nicht installiert hast, kannst du dies mit pip tun:

Bash

pip install pandas openpyxl

Verwendung von pandas zum Exportieren nach Excel

Speichern wir nun unsere Buchdaten in Excel:

Python

import pandas as pd

df = pd.DataFrame(books)
df.to_excel('books.xlsx', index=False, engine='openpyxl')

print("Daten wurden erfolgreich in books.xlsx gespeichert")

Daten aus Excel lesen

Nicht nur das Erstellen, sondern auch die Wiederverwendung erstellter Dateien bereitet Freude! Lassen wir uns lernen, Daten aus Excel zu lesen:

Python

df = pd.read_excel('books.xlsx')
print(df)

4. Fehler und deren Behandlung

Wie in jedem anderen Aspekt der Programmierung können beim Exportieren von Daten Fehler auftreten. Die häufigsten Probleme sind falsche Dateipfade oder das Fehlen benötigter Bibliotheken. Zum Beispiel, wenn man vergisst, openpyxl zu installieren, wird der Export nach Excel scheitern.

Überprüfung der Datei-Existenz

Bevor du versuchst, eine Datei zu schreiben oder zu lesen, ist es nützlich, deren Existenz zu überprüfen. Dies kannst du mit dem Modul os tun:

Python

import os

if os.path.exists('books.csv'):
    print("Datei books.csv existiert")
else:
    print("Datei books.csv nicht gefunden")

Du wirst es kaum glauben, aber der häufigste Fehler von Anfängern ist das versehentliche Überschreiben alter Daten mit neuen. Die Automatisierung der Datei-Historie-Speicherung ist eine wahre Kunst.

Vergiss auch nicht, Fehler mit try-except-Konstruktionen zu behandeln, damit dein Skript nicht beim ersten Problem abstürzt.

Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION