• Technologie

Jak shromažďovat webová data ve velkém měřítku, aniž by došlo k zablokování

  • Valentin Ghita
  • 5 min read

Úvod

Váš scraper funguje bez problémů na několika stech stránkách. Zkuste ho nasadit na několik set tisíc a polovina vašich požadavků se vrátí jako chyby 403, CAPTCHA nebo prázdné stránky. Parser nezklamal. Cílová stránka si všimla, že váš provoz se nechová jako člověk, a začala se bránit.

Scraping ve velkém měřítku je především o tom, abyste nevynikali. Každý web, který stojí za to scrapat, používá nějakou formu detekce botů a každý další požadavek je další šancí, že budete označeni. Tomu se vyhnete, pokud budete dobře zvládat základy: správné proxy pro web scraping, rozumné tempo požadavků, požadavky, které vypadají jako od skutečného prohlížeče, a plán pro případ, že se web začne bránit. Tento článek popisuje, jak k blokování ve skutečnosti dochází a jak sestavit proces, který bude data stahovat, aniž by spouštěl všechny poplachy.

Proč weby blokují automatizovaný sběr dat

Weby neblokují scrapery proto, aby vám ztěžovaly práci. Blokují je, protože váš provoz je stojí peníze a odhaluje data, která by si raději nechaly pro sebe. Jeden agresivní scraper může odeslat tisíce požadavků za minutu, což zatěžuje servery a zkresluje analytické údaje. Ceny, seznamy produktů a recenze jsou přesně to, co konkurence chce, takže weby, které tato data uchovávají, je brání nejtvrději. Předpokládejte, že váš cíl již počítá s lidmi, jako jste vy.

Jak rozhodují blokovací systémy

Blokování málokdy funguje na základě jediného pravidla. Většina obranných systémů vede pro každého návštěvníka průběžné skóre a překročení určité hranice vám vynese CAPTCHA nebo zavřené dveře. Toto skóre odpovídá na tři otázky: kdo jste, jak rychle se pohybujete a jak vypadáte zblízka.

Kdo jste, určuje reputace IP adresy: známý rozsah datového centra nebo adresa, která se již dříve chovala nevhodně, má od začátku zápory. Jak rychle se pohybujete, určuje frekvence požadavků. Jak vypadáte, určuje váš otisk – hlavičky, které odesíláte, a váš TLS handshake, které prozrazují, zda se jedná o skutečný prohlížeč nebo pouhý skript.

Cloudflare a Akamai všechny tři faktory zahrnují do živého skóre pro každý požadavek. Proto jeden scraper hladce projde malým webem a narazí na zeď u chráněného webu, na kterém běží stejný kód.

Vytvoření skupiny proxy serverů pro škálovatelnost

Začněte tím, kdo jste, protože jedna IP adresa nezvládne velký úkol. Pošlete sto tisíc požadavků z jedné adresy a rychle spustíte kontrolu reputace. Fond rozloží tuto zátěž na mnoho IP adres, takže žádná nevyčnívá – to je základní vrstva jakéhokoli velkého systému pro sběr dat. Proxy pro web scraping, které si zde vyberete, určují strop pro vše, co následuje.

Building a proxy pool for scale

Na webech se slabou nebo žádnou ochranou odvedou těžkou práci IP adresy z datových center: jsou levné, rychlé a dostupné ve velkém množství. Pro objemovou práci potřebujete IP adresy z datových center určené pro sběr velkého objemu dat, nikoli několik sdílených adres, které se vyčerpají za jeden den. Hákem je, že se dají snadno odhalit. Proxy z datových center dosahují u nechráněných cílů 60 až 90 procent úspěšnosti, poté však klesají na 20 až 40 procent za systémy správy botů Cloudflare nebo Akamai, podle TorchProxies (2026).

Seznamte se s nástrojem Ranktracker

Univerzální platforma pro efektivní SEO

Za každým úspěšným podnikem stojí silná kampaň SEO. Vzhledem k nesčetným optimalizačním nástrojům a technikám je však těžké zjistit, kde začít. No, už se nebojte, protože mám pro vás přesně to, co vám pomůže. Představuji vám komplexní platformu Ranktracker pro efektivní SEO.

Konečně jsme otevřeli registraci do nástroje Ranktracker zcela zdarma!

Vytvoření bezplatného účtu

Nebo se přihlaste pomocí svých přihlašovacích údajů

Dimenzování je jednoduchá matematika: pokud web snáší asi 10 požadavků na IP za minutu a vy jich potřebujete 6 000, je to minimálně 600 čistých IP adres plus rezerva pro ty, které budou označeny.

Logika rozložení požadavků a rotace

Dalším krokem je určení rychlosti. Rotace rozhoduje, která IP adresa přijme jednotlivé požadavky; rozložení určuje intervaly mezi nimi.

Request pacing and rotation logic

Rotace na základě jednotlivých požadavků přiřazuje každému volání novou IP adresu, což je vhodné pro bezstavové operace, jako jsou samostatné stránky produktů. Sticky sessions udržují jednu IP adresu po celou dobu série souvisejících požadavků, což je nutné, když web sleduje relaci, například při placení.

Díky správnému rozložení se uživatelé při scrapování vyhnou blokování, jinak do něj narazí. Zpoždění mezi požadavky náhodně měňte, protože pevný odstup 200 ms je sám o sobě signálem bota. Omezte frekvenci na jednu IP adresu a přidejte exponenciální backoff, aby vás chyby donutily zpomalit, místo abyste pokračovali dál. Výše uvedený graf ukazuje proč: míra blokování se drží blízko nuly, dokud nepřekročíte toleranci cíle, poté prudce stoupne. Průvodce Ranktrackeru pro web scraping pro SEO nástroje ukazuje, jak stejné rozložení udržuje přesnost nástroje pro sledování pozic.

Hlavičky a otisky

Poslední věcí je to, jak vypadáte. Čisté IP adresy s rozumným tempem se stále nechají odhalit, pokud samotné požadavky křičí „skript“. Každý požadavek nese hlavičky a otisk TLS a detekce porovnává obojí se skutečným prohlížečem.

Začněte s User-Agentem, ale nezastavujte se u něj. Skutečný prohlížeč odesílá odpovídající sadu hlaviček Accept, Accept-Language a Accept-Encoding v konzistentním pořadí, a požadavek, který je vynechává nebo jejich pořadí zaměňuje, vyčnívá. V pozadí se odehrává TLS handshake, který se dá zredukovat na otisk JA3. Pythonový klient a Chrome si podávají ruku odlišně, i když se jejich viditelné hlavičky shodují, takže silné systémy proti botům čtou tento handshake, aby odhalily scrapery, které pouze předstírali, že jsou prohlížeče. Zajistěte, aby každý požadavek vypadal od začátku do konce jako požadavek z prohlížeče.

Zpracování CAPTCH a měkkých bloků

Ne každé blokování se projeví zjevně. Tvrdé blokování je zřejmé: obrazovka CAPTCHA nebo stavový kód 403. Měkké blokování se skrývá. Web vrátí stavový kód 200, ale tělo odpovědi je omezováno, ztenčeno nebo napuštěno nesprávnými daty, jejichž účelem je znehodnotit váš datový soubor, aniž by vám to bylo sděleno.

Detekce je prvořadá. Označte odpovědi, které se vracejí podezřele malé nebo jsou identické napříč stránkami, které by se měly lišit, a považujte je za selhání, i když stav hlásí úspěch. Špatné vstupy zkazí vše, co na nich stavíte, takže kontroly kvality dat jsou stejně důležité jako přístup. Průvodce Ranktrackeru pro přesné sledování pozic ukazuje, jak šumivé vstupy ničí čísla, která vykazujete.

Seznamte se s nástrojem Ranktracker

Univerzální platforma pro efektivní SEO

Za každým úspěšným podnikem stojí silná kampaň SEO. Vzhledem k nesčetným optimalizačním nástrojům a technikám je však těžké zjistit, kde začít. No, už se nebojte, protože mám pro vás přesně to, co vám pomůže. Představuji vám komplexní platformu Ranktracker pro efektivní SEO.

Konečně jsme otevřeli registraci do nástroje Ranktracker zcela zdarma!

Vytvoření bezplatného účtu

Nebo se přihlaste pomocí svých přihlašovacích údajů

Když se objeví CAPTCHA, existují služby, které je vyřeší, ale levnější řešení je v počáteční fázi: zpomalte frekvenci, více střídejte adresy, vyčistěte otisk a přestanete dostávat výzvy.

Kdy přejít na rezidenční

Někdy je samotná úroveň IP adres limitem. Pokud systém pro správu botů neustále blokuje váš pool datového centra bez ohledu na to, jak dobře rozložíte a zamaskujete provoz, je to signál, že je čas přejít na vyšší úroveň.

Seznamte se s nástrojem Ranktracker

Univerzální platforma pro efektivní SEO

Za každým úspěšným podnikem stojí silná kampaň SEO. Vzhledem k nesčetným optimalizačním nástrojům a technikám je však těžké zjistit, kde začít. No, už se nebojte, protože mám pro vás přesně to, co vám pomůže. Představuji vám komplexní platformu Ranktracker pro efektivní SEO.

Konečně jsme otevřeli registraci do nástroje Ranktracker zcela zdarma!

Vytvoření bezplatného účtu

Nebo se přihlaste pomocí svých přihlašovacích údajů

Rezidenční IP adresy pocházejí ze skutečných domácích zařízení, a proto se těší důvěře, kterou rozsahy datových center nikdy nezískají. U tvrdohlavých cílů vám přechod na rotující rezidenční IP adresy zajistí provoz, který vypadá jako běžní domácí uživatelé, a obejde tak filtry, které adresy datových center odmítají na první pohled.

Cenou za to je rychlost a peníze. Datacentrové proxy běží 3 až 10krát rychleji – podle ProxyWingu zhruba pod 200 ms oproti 500 ms až 2 sekundám u rezidenčních. Při milionech požadavků se to nasčítá, proto používejte více úrovní: datacentrové nechte jako výchozí a na rezidenční přesměrovávejte pouze zablokované požadavky.

When to escalate to residential

Klasickým příkladem jsou výsledky vyhledávání. Pokud sbíráte data z výsledků vyhledávání (SERP) pro nástroj jako SERP Checker od Ranktrackeru, nejobtížnější stránky vás často přesměrují na rezidenční proxy.

Než začnete škálovat, otestujte to na jednom cíli

Než nasměrujete scraper na celý seznam cílů, vyzkoušejte ho na jediném chráněném webu a sledujte kódy odpovědí. Začněte s malým poolem datových center, nastavte tempo konzervativně, poté zvyšujte frekvenci, dokud se neobjeví blokování, a vraťte se na poslední úroveň, kde vše fungovalo bez problémů. Toto číslo představuje váš strop na jednu IP adresu a určuje velikost poolu pro celou úlohu. Nastavte si proxy pro web scraping a správné tempo na jednom webu a stejné nastavení pak můžete škálovat na všechny ostatní.

Často kladené otázky

Kolik proxy serverů potřebuji pro scraping ve velkém měřítku?

Záleží na toleranci cílového webu a vaší propustnosti. Zjistěte, kolik požadavků za minutu jedna IP adresa zvládne, než bude označena, vydělte tím svou cílovou rychlost a přidejte rezervu. Potřebujete 6 000 požadavků za minutu na web, který toleruje 10 požadavků na jednu IP adresu? To je více než 600 čistých IP adres, ne hrstka, která bude přetížena.

Jsou pro web scraping lepší proxy z datacenter nebo rezidenční?

Žádné z nich nemá jednoznačnou převahu. Datacentrové jsou rychlejší a levnější a bez problémů zvládají nechráněné weby. Rezidenční jsou pomalejší a dražší, ale obstojí i při přísném řízení botů. Většina procesů využívá obojí, výchozí volbou jsou datacentrové a na rezidenční se přechází pouze v případě, že to blokování vynutí.

Proč mě stále blokují, i když používám proxy?

Obvykle jde o omezení rychlosti nebo otisky prstů, ne o IP adresy. I když střídáte velký pool, ale spouštíte ho rychlostí stroje s výchozími hlavičkami, vzorec se stále projeví. Zpomalte, náhodně měňte a chovejte se nejprve jako prohlížeč.

Je scraping veřejných dat povolen?

Jedná se o právní šedou zónu, která se liší podle vaší jurisdikce a podmínek používání daného webu. Držte se veřejně dostupných dat, respektujte soubor robots.txt, kde je to možné, nezasahujte do osobních údajů a před jakýmkoli velkým komerčním sběrem dat si vyžádejte právní radu.

Valentin Ghita

Valentin Ghita

technical writing

handles technical writing, marketing, and research at Anonymous Proxies (anonymous-proxies.net). He writes about proxies, web data, and the technical side of digital marketing.

Začněte používat Ranktracker... zdarma!

Zjistěte, co brání vašemu webu v umístění.

Vytvoření bezplatného účtu

Nebo se přihlaste pomocí svých přihlašovacích údajů

Different views of Ranktracker app