Studiu de caz
On-Site – extragere de date din catalogul de piese
On-Site este o agenție digitală din Rotterdam, specializată în experiență digitală și e-commerce pentru organizații B2B. Echipa proiectează, construiește și întreține soluții integrate pe platforme consacrate - Umbraco, nopCommerce, Xperience by Kentico - combinate cu instrumente low-code și cu propria platformă de integrare.
O mare parte din activitatea On-Site se învârte în jurul datelor: să se asigure că informațiile despre produse, catalog și clienți rămân consecvente și actualizate pe fiecare canal. Pentru proiectele în care aceste date trebuie colectate din surse externe la scară mare, On-Site colaborează cu specialiști - și aici a intervenit noptech.
Proiectul
Provocarea
On-Site avea nevoie de date de produs structurate, extrase din două cataloage mari de piese ale unor producători - unul din domeniul utilajelor agricole, altul din powersports - în numele propriilor clienți. Aceste cataloage sunt sisteme adânci, ierarhice: un utilaj este căutat după numărul de serie, apoi este descompus nivel cu nivel în ansambluri, subansambluri și piese individuale, fiecare cu propria diagramă în vedere explodată și cu propriul tabel de coduri de piese.
Copierea manuală nu este o opțiune. On-Site avea nevoie de un proces de extragere repetabil și verificabil, care să producă exporturi Excel curate, plus toate imaginile de diagrame asociate - mai întâi ca pilot controlat pe un set mic de date, cu opțiunea de a scala ulterior la întregul catalog.
Abordarea noastră
Am construit un crawler personalizat în C#, peste Selenium WebDriver, care controlează un browser Chromium real, astfel încât navigarea catalogului, puternic bazată pe JavaScript, să se comporte exact ca pentru un utilizator uman. Crawlerul parcurge întreaga ierarhie pentru fiecare număr de serie, captează diagrama pentru fiecare nivel și scrie rezultatul într-un registru Excel structurat - un tab pentru fiecare nivel, ordonat după nivel, cu coduri de piese, descrieri și referința către imaginea corespunzătoare.
Pilotul a rulat dintr-un singur mediu controlat, pentru ca clientul să poată verifica calitatea datelor înainte de a se angaja la volum. Pentru al doilea proiect am integrat Bright Data, mutând stratul de colectare pe o rețea de proxy administrată, cu adrese IP rotative. Astfel, On-Site are o colectare distribuită și controlată, care scalează până la un catalog complet, fără a suprasolicita site-ul sursă de la o singură adresă.
Ce am livrat
- Un crawler C#/Selenium care navighează cataloage de piese pe mai multe niveluri, după numărul de serie, la orice adâncime
- Exporturi Excel exact în formatul cerut de client - taburi sortate după nivel, coloane consecvente, gata de importat în propriile lor sisteme
- Seturi complete de imagini cu diagrame în vedere explodată, corelate unu la unu cu rândurile din export
- Integrare Bright Data pentru colectare distribuită și controlată, la volumul întregului catalog
- Colectare incrementală doar a anilor de model lipsă, astfel încât datele colectate anterior să nu fie reprocesate niciodată
- O trecere de validare la fiecare livrare: imagini lipsă, goluri în ierarhie și abateri de format depistate înainte de predare
Rezultatul
On-Site a primit seturi de date de test suficient de repede pentru a valida abordarea împreună cu propriul client în câteva zile, apoi un pipeline pregătit pentru producție pentru extragerea completă. Datele sosesc exact în structura pe care o așteaptă sistemele lor, ceea ce elimină complet etapa de curățare manuală - iar aceeași arhitectură de crawler poate fi îndreptată către alte cataloage, schimbând doar logica de navigare.
Tehnologii
C#
.NET
Selenium WebDriver
Chromium
Bright Data
Excel automation
headless browser automation