diff --git a/autocompra7.py b/autocompra7.py index cc7a0a5..cbe74c3 100644 --- a/autocompra7.py +++ b/autocompra7.py @@ -95,6 +95,14 @@ columnas = ["fecha", "cantidad", "producto", "precio_unitario", "precio_total"] df = pd.DataFrame(datos, columns=columnas) df.dropna(subset=["fecha"], inplace=True) +if df.empty: + print(f"[info] No hay tickets para el usuario '{args.usuario}'. Creando archivos vacios.") + empty = pd.DataFrame(columns=["producto", "diferencia_dias", "proxima_compra", + "es_estacional", "meses_temporada", + "fecha_estimada_proxima_compra"]) + empty.to_csv(os.path.join(output_dir, "lista_compra_estimado.csv"), index=False) + import sys; sys.exit(0) + # Guardar detalle completo df.to_csv(os.path.join(output_dir, "detalle_productos.csv"), index=False) diff --git a/generar_lista.py b/generar_lista.py index 9ddfee3..923966c 100644 --- a/generar_lista.py +++ b/generar_lista.py @@ -72,6 +72,13 @@ except FileNotFoundError: print(f" Productos en CSV: {len(df)}") +if df.empty: + print("[info] CSV vacio, generando datos.json vacio.") + datos_json = {'generado': datetime.now().strftime('%d/%m/%Y %H:%M'), 'total': 0, 'predicciones': []} + with open(os.path.join(output_dir, 'datos.json'), 'w', encoding='utf-8') as f: + json.dump(datos_json, f, ensure_ascii=False, indent=2) + exit(0) + # Filtrar basura df = df[~df['producto'].apply(es_basura)].copy() print(f" Después de filtrar basura: {len(df)}")