fix: no fallar con usuario sin tickets
This commit is contained in:
parent
cea3be083f
commit
2d9ce9f97c
|
|
@ -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)
|
||||
|
||||
|
|
|
|||
|
|
@ -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)}")
|
||||
|
|
|
|||
Loading…
Reference in New Issue