google_sheet_handler.py aktualisiert

This commit is contained in:
2025-07-29 14:13:11 +00:00
parent d9a4f051f7
commit ef5154e5b3

View File

@@ -5,14 +5,13 @@ import logging
import gspread
import pandas as pd
from oauth2client.service_account import ServiceAccountCredentials
# KORRIGIERTER IMPORT
from config import Config, COLUMN_MAP, CREDENTIALS_FILE
from helpers import retry_on_failure, _get_col_letter
class GoogleSheetHandler:
"""
Kapselt alle Interaktionen mit dem Google Sheet.
Finale, robuste Version v2.1.1
Finale, robuste Version v2.1.2
"""
def __init__(self, sheet_url=None):
self.logger = logging.getLogger(__name__ + ".GoogleSheetHandler")
@@ -32,7 +31,6 @@ class GoogleSheetHandler:
try:
if not os.path.exists(CREDENTIALS_FILE):
raise FileNotFoundError(f"Credential-Datei nicht gefunden: {CREDENTIALS_FILE}")
# KORRIGIERTER ZUGRIFF
creds = ServiceAccountCredentials.from_json_keyfile_name(CREDENTIALS_FILE, ["https://www.googleapis.com/auth/spreadsheets"])
self.client = gspread.authorize(creds)
spreadsheet = self.client.open_by_url(self.sheet_url)
@@ -44,8 +42,6 @@ class GoogleSheetHandler:
self.client = None
return False
# ... (Der Rest der Methoden bleibt exakt gleich wie in meiner letzten Nachricht)
@retry_on_failure
def load_data(self):
if not self.client and not self._connect(): return False
@@ -69,7 +65,8 @@ class GoogleSheetHandler:
try:
if not self.client and not self._connect(): return None
worksheet = self.client.open_by_url(self.sheet_url).worksheet(sheet_name)
data = worksheet.get_all_records(empty_value_render_option='EMPTY_STRING')
# KORRIGIERTE ZEILE
data = worksheet.get_all_records()
df = pd.DataFrame(data)
self.logger.info(f"{len(df)} Zeilen aus '{sheet_name}' als DataFrame geladen.")
return df