Návody · 6 min čtení

Proč scrapery reznou: build vs. buy, když scrapujete stovky e-shopů

Scraper, který funguje, je skript. Scraper, který funguje dál, napříč stovkami e-shopů, každý den, je provozní problém. V mezeře mezi těmi dvěma větami umírá většina datových projektů.

Scrapnout jeden e-shop jednou je opravdu snadné a nebudeme předstírat opak. Jedno odpoledne, sto řádků Pythonu, hotovo. Potíž je, že data z jednoho e-shopu jednou ve skutečnosti nikdo nechce. Cenová analytika, analýzy trhu, feedy pro AI agenta: každé reálné použití znamená hodně e-shopů, obnovovaných podle plánu, donekonečna. A v okamžiku, kdy na tohle kývnete, přestáváte psát scraper a začínáte provozovat flotilu.

Ve zkratce: scrapnout jeden e-shop jednou je snadné; udržet stovky e-shopů každý den správně je provozní práce. Při 99% denní spolehlivosti na e-shop znamená 300 e-shopů zhruba tři selhání každý den. V našem monitoringu 950 e-shopů došlo během pěti dnů u 92 z nich aspoň k jedné změně, která poškodila data, a ta nejdražší selhání nevyhodí žádnou chybu. Pro hrstku stabilních webů si scraper postavte sami; když flotila roste, vyplatí se služba.

Přehrajte si to

Tady je pipeline s 30 e-shopy v mírném tempu. Každý typ výpadku níže pochází z našeho produkčního monitoringu a konkrétní případy jsou skutečné, anonymizované incidenty. Vaše práce je jednoduchá: klikat dál, opravovat dál.

Vaše pipeline · 30 e-shopů · týden 1

Všechno funguje. Cron job běží v 06:00. Káva chutná skvěle.

0
Incidenty
0
Tiché (bez vyhozené chyby)
~0
Odhad hodin na opravách

Proč se to nikdy nepřestane rozbíjet

Nic z tohohle není exotika. E-shopy se vám scraper rozbít nesnaží; prostě jen žijí:

  • Změny markupu. Redesigny, A/B testy, nové slevové štítky, CSS třída přejmenovaná po upgradu frameworku. Vaše selektory byly napsané pro stránku, která už neexistuje.
  • Vykreslování se stěhuje do prohlížeče. Cena, která dřív seděla v HTML, teď přijíždí JavaScriptem. Obyčejný HTTP scraping potichu nevrací nic; nově udržujete farmu prohlížečů.
  • Sílící anti-bot ochrany. Rate limity, fingerprinting, challenge stránky, reputace IP adres. V naší produkční flotile 2 024 e-shopů nejde každý čtvrtý scrapovat obyčejnými HTTP requesty: 13 % potřebuje skutečný prohlížeč a dalších 12 % rezidenční proxy nebo práci navíc, aby stránka zůstala stabilní. Při denním crawlování je to ještě těžší.
  • Sémantické změny. Stránka se pořád renderuje, scraper pořád vrací čísla, a ta čísla jsou špatně: standardní a zlevněná cena si vymění místa, objeví se kupónové ceny, cena varianty přistane u špatného produktu. Žádná výjimka nevyskočí.

Nejdražší jsou ty tiché. Pádu si všimnete ještě to ráno. Špatná cena doteče do vašeho nástroje na přeceňování, do reportu o trhu nebo do odpovědi vašeho agenta, a dozvíte se to od naštvaného zákazníka o týdny později. V našem pětidenním produkčním vzorku byla nejčastěji rozbitá přesně ta pole, na kterých závisí peníze: standardní cena, zlevněná cena, kupónová cena, dostupnost.

Matematika je proti vám

Řekněme, že scrape jednoho e-shopu je v libovolný den z 99 % spolehlivý, což je velkorysé. Jeden e-shop se rozbije zhruba jednou za kvartál: otravné, zvládnutelné. Teď provozujte 300 e-shopů denně při stejné spolehlivosti. To jsou tři očekávaná selhání každý jednotlivý den, navždy. Nebude týden, kdy by fungovalo všechno. Spolehlivost na e-shop se na flotilu nepřenáší; flotila dědí selhání každého člena, každý den.

Naše vlastní čísla, z monitorovací vrstvy, která hlídá kvalitu dat napříč 950 nepřetržitě scrapovanými e-shopy: v jednom pětidenním okně došlo u 92 e-shopů aspoň k jedné změně, která poškodila data, celkem 186 incidentů. Zhruba polovinu opravila samoopravná vrstva automaticky, aniž by se na ně člověk podíval. Pro srovnání: z více než 600 000 scrapovacích běhů skončí pádem jen asi 0,1 %. Práce nevězí v pádech. Práce vězí ve všem, co nespadne.

Co obnáší provozovat scraping pořádně

Tohle je ledovec pod větou „my si to prostě scrapneme sami“:

  • Správa proxy: rezidenční pooly, rotace, routování podle e-shopu, hygiena reputace. Položka v rozpočtu a poloviční úvazek.
  • Renderování v prohlížeči ve velkém: headless flotily pro e-shopy, které je potřebují, s vlastními memory leaky, timeouty a věčnou obměnou verzí.
  • Validace dat: něco musí každý den kontrolovat, že čísla nejsou jen přítomná, ale i uvěřitelná, jinak vám tiché chyby napochodují přímo do databáze.
  • Samooprava (self-healing): když se markup změní, někdo nebo něco se musí stránku naučit znovu. Dělat to ručně napříč stovkami e-shopů je role na plný úvazek; náš engine uloží nové extrakční pravidlo automaticky u zhruba poloviny všech incidentů.
  • Monitoring a alerting: zdraví každého e-shopu, po polích, s historií, jinak se o výpadcích dozvídáte od svých zákazníků.

Build vs. buy: kdy se vyplatí vlastní scraper

Upřímně: někdy ano. Pokud potřebujete hrstku stabilních webů, scrapovaných občas, a máte po ruce vývojáře, který bere údržbu jako přijatelnou režii, postavte si to sami a dodavatele vynechte. Totéž platí pro jednorázové výzkumné stahování a pro učební projekty, které jsou opravdu skvělý způsob, jak tenhle problém pochopit. Počty se obrátí, když flotila přeroste to, co jeden člověk zvládne záplatovat v pátek odpoledne, když data krmí něco, co při chybě stojí peníze, nebo když „většinou čerstvá“ přestane stačit.

Otázka build vs. buy, řečeno přesně: ne „umíte napsat scraper?“ (umíte), ale „chcete platit tým, jehož jedinou prací je udržovat cizí weby čitelné?“ Přesně tohle je náš produkt, DeepScout (deepscout.ai): česká služba, která za vás provozuje scraping e-shopů. Už dnes zpracovává přes 1 900 e-shopů a 166 milionů produktů, dostupný jako API a MCP server pro Claude a další AI agenty, včetně samoopravné, validační a párovací vrstvy. Platíte podle využití, od 0,40 € za 1 000 produktů.

Čtěte dál: Párování produktů s konkurencí bez EAN: proč je to nejtěžší část. Když data tečou, dalším problémem je poznat, které nabídky napříč e-shopy jsou stejný produkt.

Začněte s API

Scrapněte jakýkoli e-shop do čistého produktového JSON a pak ho spárujte s e-shopy, které si vyberete. Bez EAN i čárových kódů. Platíte podle využití, od 0,40 € za 1 000 produktů.

Aby všechno fungovalo

Používáme marketingové a analytické cookies, abychom se poučili, jak produkt využíváte. Tím můžeme produkt vylepšovat a zobrazovat vám relevantní reklamy.

Build vs. buy scraping e-shopů: proč scrapery ve velkém reznou