CSV-Dateipfad korrigiert

This commit is contained in:
2025-03-17 21:22:41 +01:00
parent 0e9a1156e2
commit 88d33b1a30

24
app.py
View File

@@ -12,7 +12,7 @@ logging.basicConfig(level=logging.DEBUG)
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
# Version der Anwendung # Version der Anwendung
VERSION = "1.0.1" VERSION = "1.0.2"
# Pfad zur CSV-Datei # Pfad zur CSV-Datei
CSV_FILE = "data/customers.csv" CSV_FILE = "data/customers.csv"
@@ -32,7 +32,7 @@ def load_data():
logger.error(f"CSV-Datei '{CSV_FILE}' nicht gefunden!") logger.error(f"CSV-Datei '{CSV_FILE}' nicht gefunden!")
return None return None
df = pd.read_csv(CSV_FILE, encoding='utf-8') df = pd.read_csv(CSV_FILE, sep=';', encoding='utf-8')
df = clean_dataframe(df) df = clean_dataframe(df)
logger.info(f"CSV-Datei erfolgreich geladen. {len(df)} Einträge gefunden.") logger.info(f"CSV-Datei erfolgreich geladen. {len(df)} Einträge gefunden.")
return df return df
@@ -62,7 +62,7 @@ def get_weather(city):
'description': data['weather'][0]['description'] 'description': data['weather'][0]['description']
} }
except Exception as e: except Exception as e:
print(f"Fehler beim Abrufen der Wetterdaten: {e}") logger.error(f"Fehler beim Abrufen der Wetterdaten: {e}")
return None return None
@app.route('/') @app.route('/')
@@ -89,22 +89,18 @@ def search():
if not any([name, ort, kundennummer, fachrichtung, telefon]) and query: if not any([name, ort, kundennummer, fachrichtung, telefon]) and query:
# Suche in allen relevanten Feldern # Suche in allen relevanten Feldern
mask = ( mask = (
df['Vorname'].str.contains(query, case=False, na=False) | df['Name'].str.contains(query, case=False, na=False) |
df['Nachname'].str.contains(query, case=False, na=False) |
df['Ort'].str.contains(query, case=False, na=False) | df['Ort'].str.contains(query, case=False, na=False) |
df['Nummer'].astype(str).str.contains(query, case=False, na=False) | df['Kundennummer'].astype(str).str.contains(query, case=False, na=False) |
df['Fachrichtung'].str.contains(query, case=False, na=False) | df['Fachrichtung'].str.contains(query, case=False, na=False) |
df['Tel'].astype(str).str.contains(query, case=False, na=False) df['Telefon'].astype(str).str.contains(query, case=False, na=False)
) )
else: else:
# Spezifische Suche # Spezifische Suche
mask = pd.Series(True, index=df.index) mask = pd.Series(True, index=df.index)
if name: if name:
name_mask = ( name_mask = df['Name'].str.contains(name, case=False, na=False)
df['Vorname'].str.contains(name, case=False, na=False) |
df['Nachname'].str.contains(name, case=False, na=False)
)
mask &= name_mask mask &= name_mask
if ort: if ort:
@@ -112,7 +108,7 @@ def search():
mask &= ort_mask mask &= ort_mask
if kundennummer: if kundennummer:
kundennummer_mask = df['Nummer'].astype(str).str.contains(kundennummer, case=False, na=False) kundennummer_mask = df['Kundennummer'].astype(str).str.contains(kundennummer, case=False, na=False)
mask &= kundennummer_mask mask &= kundennummer_mask
if fachrichtung: if fachrichtung:
@@ -120,7 +116,7 @@ def search():
mask &= fachrichtung_mask mask &= fachrichtung_mask
if telefon: if telefon:
telefon_mask = df['Tel'].astype(str).str.contains(telefon, case=False, na=False) telefon_mask = df['Telefon'].astype(str).str.contains(telefon, case=False, na=False)
mask &= telefon_mask mask &= telefon_mask
results = df[mask].to_dict('records') results = df[mask].to_dict('records')
@@ -143,4 +139,4 @@ def search():
return jsonify({"error": str(e)}), 500 return jsonify({"error": str(e)}), 500
if __name__ == '__main__': if __name__ == '__main__':
app.run(debug=True) app.run(debug=True, port=5001)