Envíos Gratis +200€ | Consultas: 622 83 09 83

Despiece ARISTARCO - Aliseo 422-428

Referencia Producto
PI-003Contactor mini 4Kw 230V 20A
LV-2106Cesto cubiertos Ø9.5x10.5cm plástico
CONSULTARProgramador 120s 2 micros
LV-2114Cesto vasos 40x40x11cm alambre
CONSULTARTirante puerta passport
LV-2375Perno puerta passport
LV-1879Pulsador unipolar Ø10mm
LV-155Insertador platos pequeño 27cm
CONSULTARGiratorio lavado vasos
CONSULTARJunta goma 40x27x1.5mm
CONSULTARFiltro cuba
LV-3022Casquillo eje puerta
LV-6188Tuerca tirante puerta
LV-3350Guía tirante puerta
LV-166Cierre puerta lavavajillas
CONSULTARTuerca 1/4 fijación cierre puerta
LV-983Interruptor bipolar redondo
CONSULTARInterruptor bipolar
CONSULTARPiloto verde Ø16mm 230V
CONSULTARPiloto ambar Ø16mm 230V
LV-9968Piloto cristal Ø16mm 230V 14717
CONSULTARMicrointerruptor 1 polo
LV-1759Presostato horizontal 123/75
LV-1795Termostato calderín 90ºC fijo
LV-2452Relé 20A
LV-4054Racor dosificador detergente
LV-3813Resistencia membrana 100W 230V
CONSULTARBomba desagüe 230V
LV-1715Válvula antirretorno
CONSULTARSoporte cesto

Carrocería Aliseo 422-428

despiece carrocería aristarco aliseo 422-428
Referencia Producto
PI-003Contactor mini 4Kw 230V 20A
LV-2106Cesto cubiertos Ø9.5x10.5cm plástico
CONSULTARProgramador 120s 2 micros
LV-2114Cesto vasos 40x40x11cm alambre
CONSULTARTirante puerta passport
LV-2375Perno puerta passport
LV-1879Pulsador unipolar Ø10mm
LV-155Insertador platos pequeño 27cm
CONSULTARGiratorio lavado vasos
CONSULTARJunta goma 40x27x1.5mm
CONSULTARFiltro cuba
LV-3022Casquillo eje puerta
LV-6188Tuerca tirante puerta
LV-3350Guía tirante puerta
LV-166Cierre puerta lavavajillas
CONSULTARTuerca 1/4 fijación cierre puerta
LV-983Interruptor bipolar redondo
CONSULTARInterruptor bipolar
CONSULTARPiloto verde Ø16mm 230V
CONSULTARPiloto ambar Ø16mm 230V
LV-9968Piloto cristal Ø16mm 230V 14717
CONSULTARMicrointerruptor 1 polo
LV-1759Presostato horizontal 123/75
LV-1795Termostato calderín 90ºC fijo
LV-2452Relé 20A
LV-4054Racor dosificador detergente
LV-3813Resistencia membrana 100W 230V
CONSULTARBomba desagüe 230V
LV-1715Válvula antirretorno
CONSULTARSoporte cesto

Lavado-Aclarado Aliseo 422-428

despiece lavado-aclarado aristarco aliseo 422-428
import re import pandas as pd import requests from bs4 import BeautifulSoup URL = "https://www.eunasa.com/es/articulo/despiece_eunasa/lavavajillas/aristarco/679_lavado_aclarado" CSV_EQ = "equivalencias_sku_eunasa.csv" # tu fichero # 1) Cargar equivalencias eunasa_ref -> sku eq = pd.read_csv(CSV_EQ, dtype=str).fillna("") eq["eunasa_ref"] = eq["eunasa_ref"].str.strip() eq["product_sku"] = eq["product_sku"].str.strip() map_e2sku = dict(zip(eq["eunasa_ref"], eq["product_sku"])) def eunasa_to_sku(ref: str) -> str: ref = str(ref).strip() if ref in map_e2sku: return map_e2sku[ref] z6 = ref.zfill(6) if z6 in map_e2sku: return map_e2sku[z6] return "" # no match html = requests.get(URL, timeout=30).text soup = BeautifulSoup(html, "html.parser") # 2) Extraer bloques de producto # Nota: esto depende de la estructura; aquí hago un enfoque robusto por patrón "Ref:" text = soup.get_text("\n") # Localiza líneas tipo: "Nombre ... Ref: 116" # (En la página se ve ese patrón) items = [] lines = [ln.strip() for ln in text.splitlines() if ln.strip()] for i, ln in enumerate(lines): m = re.search(r"\bRef:\s*(\d{2,6})\b", ln) if m: ref = m.group(1) # el nombre suele estar 1-2 líneas arriba; buscamos hacia atrás el primer “título” razonable name = "" for back in range(1, 6): if i-back >= 0 and len(lines[i-back]) > 6 and "Ref:" not in lines[i-back] and "Cantidad" not in lines[i-back]: name = lines[i-back] break sku = eunasa_to_sku(ref) or "CONSULTAR" items.append((sku, ref, name)) # 3) Generar HTML rows = "\n".join( f'{sku}{ref}{name}' for sku, ref, name in items ) out = f"""

Aristarco · ALISEO 422-428 · Lavado-Aclarado

{rows}
Mi ref. Ref. despiece Producto
""" with open("despiece_transformado.html", "w", encoding="utf-8") as f: f.write(out) print("OK -> despiece_transformado.html")
import re import pandas as pd from playwright.sync_api import sync_playwright URL = "https://www.eunasa.com/es/articulo/despiece_eunasa/lavavajillas/aristarco/679_lavado_aclarado" CSV_EQ = "equivalencias_sku_eunasa.csv" eq = pd.read_csv(CSV_EQ, dtype=str).fillna("") eq["eunasa_ref"] = eq["eunasa_ref"].str.strip() eq["product_sku"] = eq["product_sku"].str.strip() map_e2sku = dict(zip(eq["eunasa_ref"], eq["product_sku"])) def eunasa_to_sku(ref: str) -> str: ref = str(ref).strip() return map_e2sku.get(ref) or map_e2sku.get(ref.zfill(6)) or "" with sync_playwright() as p: browser = p.chromium.launch(headless=True) page = browser.new_page() page.goto(URL, wait_until="networkidle", timeout=60000) # HTML renderizado html = page.content() # Extraer items por patrón "Ref: NNN" text = page.inner_text("body") items = [] lines = [ln.strip() for ln in text.splitlines() if ln.strip()] for i, ln in enumerate(lines): m = re.search(r"\bRef:\s*(\d{2,6})\b", ln) if m: ref = m.group(1) name = "" for back in range(1, 6): if i-back >= 0 and len(lines[i-back]) > 6 and "Ref:" not in lines[i-back] and "Cantidad" not in lines[i-back]: name = lines[i-back] break sku = eunasa_to_sku(ref) or "CONSULTAR" items.append((sku, ref, name)) # (Opcional) extraer también el si existe map_html = "" maps = page.query_selector_all("map") if maps: map_html = maps[0].evaluate("el => el.outerHTML") browser.close() rows = "\n".join(f"{sku}{ref}{name}" for sku, ref, name in items) out = f"""

Aristarco · ALISEO 422-428 · Lavado-Aclarado

{rows}
Mi ref.Ref. despieceProducto
""" with open("despiece_transformado.html", "w", encoding="utf-8") as f: f.write(out) print("OK -> despiece_transformado.html")