METABYTE
Inapoi la articole

Cum am crawlat documentația tehnică și ce am învățat (spoiler: CI-ul a supraviețuit)

Împărtășim experiența de a face crawl pe documentația tehnică: de la soluții arhitecturale neașteptate până la întâlnirea cu redirecte infinite.

13 mai 20262 min de citit
Cum am crawlat documentația tehnică și ce am învățat (spoiler: CI-ul a supraviețuit)

Dacă credeai că web scraping-ul e doar pentru hackeri din filme, am vești proaste: chiar și documentația tehnică plictisitoare poate deveni un quest. Un dezvoltator și-a împărtășit experiența de a face crawl pe documentație, iar asta seamănă cu asamblarea unei mobile IKEA fără instrucțiuni – pare simplu, dar sunt atâtea capcane încât ai vrea să renunți și să te faci călugăr.

Ce n-a mers bine?

Autorul s-a confruntat cu probleme clasice: redirecte infinite, încărcare dinamică a conținutului prin JavaScript și 404-uri neașteptate. Site-urile pe framework-uri SPA au fost cele mai dificile – crawler-ul trebuie să aștepte ca pagina să se renderizeze, ca și cum ai aștepta să se încarce o nouă versiune de Angular. A trebuit să folosească un headless browser, ceea ce a mărit timpul de încărcare de câteva ori.

Cum s-a rezolvat?

În loc să reinventeze roata, autorul a folosit instrumente gata făcute: Scrapy pentru crawling de bază și Playwright pentru a gestiona JavaScript. Dar chiar și cu ele a fost nevoie de ajustări: configurarea paginării, gestionarea formularelor de autentificare și lupta cu rate limiting – ca și cum ai da un interviu la FAANG, doar că în loc de algoritmi ai excepții infinite.

Concluzii pentru dezvoltatori

  • Nu credeți că documentația este statică – poate fi un SPA cu rute dinamice.
  • Verificați întotdeauna robots.txt, altfel riscați să fiți banați.
  • Folosiți cereri asincrone și throttling pentru a nu încărca serverul – altfel IP-ul vostru va deveni persona non grata.

Comentariul echipei METABYTE: Dacă trebuie să crawlați documentația pentru a construi o bază de cunoștințe pentru produsul vostru, amintiți-vă: chiar și la noi CI-ul a picat uneori din cauza unui redirect neașteptat. Dar suntem mereu aici să vă ajutăm cu automatizarea și să nu lăsăm crawler-ul să înnebunească.

URMATORUL PAS

Ti-a placut abordarea?

Aplicam aceleasi principii in proiectele clientilor: AI, automatizari, produse care nu se sting dupa lansare.