Před pár měsíci nám jeden z uživatelů poslal screenshot workflow v n8n s 14 uzly, půlkou tuctu lepících poznámek a předmětem e-mailu, který zněl jen: „Pomoc.“ Postupovali podle populárního návodu na n8n web scraping, rozjeli krásné demo se 10 řádky na testovacím webu a pak se pokusili vytáhnout reálné cenové údaje konkurence ze 200 produktových stránek. Výsledek? Rozbitá smyčka stránkování, zeď chyby 403 a tichý plánovač, který se po prvním úterý přestal spouštět.
Právě tahle mezera — mezi ukázkou a ostrým provozem — je místo, kde většina scrapingových projektů v n8n končí. Už roky stavím a pracuji v automatizaci, takže to řeknu rovnou: samotné scrapování bývá málokdy ten nejtěžší krok. Problém začíná až potom, co se povede první úspěšný sběr dat. Stránkování, plánování, ochrana proti botům, čištění dat, export a — hlavně — údržba ve chvíli, kdy web potřetí za čtvrtletí změní rozložení. Tenhle průvodce pokrývá celý proces: od vašeho prvního HTTP Request uzlu až po opakující se, produkčně připravené n8n web scraping workflow. A tam, kde DIY přístup v n8n narazí, ukážu, kde vám nástroje s AI, jako Thunderbit, ušetří hodiny (nebo dny) frustrace.
Co je n8n web scraping (a proč většina návodů ukazuje jen zlomek možností)
n8n je open-source low-code platforma pro automatizaci workflow. Představ si ji jako vizuální plátno, na kterém propojuješ „uzly“ — každý dělá konkrétní práci (stáhne stránku, zpracuje HTML, pošle zprávu do Slacku, zapíše do Google Sheets) — a skládáš je do automatizovaných procesů. Těžké programování není nutné, i když když je potřeba, můžeš vložit i JavaScript.
„n8n web scraping“ znamená využití vestavěných uzlů HTTP Request a HTML v n8n (plus komunitních uzlů) ke stažení, parsování a zpracování dat z webu přímo v automatizovaných workflow. Jádro je ve dvou krocích: Stažení (HTTP Request uzel získá syrové HTML z URL) a Parsování (HTML uzel pomocí CSS selektorů vytáhne data, která tě zajímají — názvy produktů, ceny, e-maily, cokoliv potřebuješ).
Platforma je obrovská: k dubnu 2026 má n8n přibližně , přes 230 000 aktivních uživatelů, více než 9 166 komunitních šablon workflow a nové menší vydání přichází zhruba každý týden. V březnu 2025 získalo . Je jasné, že má velký tah na branku.
Ale existuje mezera, o které se moc nemluví. Nejpopulárnější n8n scraping tutorial na dev.to (od Lakshay Nasa, vydaný pod organizací „Extract by Zyte“) sliboval stránkování v „Part 2“. Ta skutečně přišla — a závěr autora byl: „N8N nám v HTTP Request uzlu v sekci Options nabízí výchozí režim Pagination Mode, a i když to zní pohodlně, v mém případě se pro běžné web scraping scénáře nechoval spolehlivě.“ Autor nakonec stránkování přesměroval přes placené API třetí strany. Mezitím uživatelé na fórech n8n pořád zmiňují „pagination, throttling, login“ jako moment, kdy se n8n scraping „začne rychle komplikovat“. Tenhle průvodce má tuhle mezeru zaplnit.
Proč je n8n web scraping důležitý pro obchod, provoz i ecommerce týmy
n8n web scraping není hračka pro vývojáře. Je to byznysový nástroj. má v roce 2025 hodnotu zhruba 1–1,3 miliardy dolarů a do roku 2030 má vyrůst na 2–2,3 miliardy dolarů. Už jen dynamické cenotvorby využívá asi a dnes spoléhá na alternativní data — z velké části ta, která jsou sesbíraná z webu. McKinsey uvádí, že dynamické ceny přinášejí firmám, které je zavedou.
Tady vyniká skutečná síla n8n: nejde jen o získání dat. Jde o to, co se děje potom. n8n umožňuje spojit scraping s navazujícími akcemi — aktualizací CRM, upozorněním v Slacku, exportem do tabulek, AI analýzou — v jednom workflow.
| Použití | Kdo z toho těží | Co scrapujete | Byznysový výsledek |
|---|---|---|---|
| Generování leadů | Obchodní týmy | Firemní katalogy, kontaktní stránky | Zaplnění CRM kvalitními leady |
| Monitoring cen konkurence | Ecommerce provoz | Stránky s produkty | Úprava cen v reálném čase |
| Sledování realitních nabídek | Realitní makléři | Zillow, Realtor, lokální MLS weby | Zachycení nových nabídek dřív než konkurence |
| Průzkum trhu | Marketingové týmy | Recenzní weby, fóra, zpravodajství | Identifikace trendů a nálady zákazníků |
| Monitoring zásob u dodavatelů/SKU | Supply chain tým | Produktové stránky dodavatelů | Prevence výpadků zásob, lepší nákupní plánování |
Data ukazují, že návratnost je skutečná: plánuje v roce 2025 zvýšit investice do AI a automatizované nurturing procesy byly schopné během devíti měsíců. Pokud váš tým pořád kopíruje data z webů do tabulek ručně, necháváte na stole peníze.
Váš n8n web scraping toolbox: základní uzly a dostupná řešení
Než začneš stavět, je dobré vědět, co máš v sadě nástrojů. Tady jsou klíčové n8n uzly pro web scraping:
- HTTP Request node: Stahuje syrové HTML z libovolné URL. Funguje podobně jako prohlížeč, který si vyžádá stránku, ale vrací kód místo vykresleného obsahu. Podporuje GET/POST, hlavičky, dávkování a teoreticky i vestavěné stránkování.
- HTML node (dříve „HTML Extract“): Parsuje HTML pomocí CSS selektorů a vytahuje konkrétní data — názvy, ceny, odkazy, obrázky, co potřebuješ.
- Code node: Umožňuje psát JavaScript pro čištění dat, normalizaci URL, deduplikaci a vlastní logiku.
- Edit Fields (Set) node: Přeskupuje nebo přejmenovává datová pole pro navazující uzly.
- Split Out node: Rozděluje pole na jednotlivé položky ke zpracování.
- Convert to File node: Exportuje strukturovaná data do CSV, JSON atd.
- Loop Over Items node: Prochází seznamy položek (kritické pro stránkování — více níže).
- Schedule Trigger: Spouští workflow podle cron plánu.
- Error Trigger: Upozorní tě, když workflow selže (zásadní pro produkci).
Pro pokročilejší scraping — weby s JavaScriptem nebo silnou ochranou proti botům — budeš potřebovat komunitní uzly:
| Přístup | Nejvhodnější pro | Úroveň znalostí | Zvládá weby vykreslované přes JS | Ochrana proti botům |
|---|---|---|---|---|
| n8n HTTP Request + HTML uzly | Statické weby, API | Začátečník–středně pokročilý | Ne | Ručně (hlavičky, proxy) |
| n8n + ScrapeNinja/Firecrawl komunitní uzel | Dynamické/protected weby | Středně pokročilý | Ano | Vestavěně (rotace proxy, CAPTCHA) |
| n8n + Headless Browser (Puppeteer) | Složitá JS interakce | Pokročilý | Ano | Částečně (záleží na nastavení) |
| Thunderbit (AI Web Scraper) | Jakýkoli web, netechnické týmy | Začátečník | Ano (Browser nebo Cloud režim) | Vestavěně (přebírá browser session nebo cloud zpracování) |
V n8n v2.15.1 neexistuje nativní headless-browser uzel. Každé scrapování renderované přes JS vyžaduje buď komunitní uzel, nebo externí API.
Krátce k Thunderbit: je to AI-powered , které náš tým vytvořil. Klikneš na „AI Suggest Fields“, pak na „Scrape“ a dostaneš strukturovaná data — žádné CSS selektory, žádná konfigurace uzlů, žádná údržba. V průběhu tohoto průvodce ukážu, kde dává smysl a kde je naopak lepší zůstat u n8n.
Krok za krokem: vytvořte první n8n web scraping workflow
Teď, když znáš nástroje, ukážu ti, jak od nuly postavit funkční n8n scraper. Jako příklad použiju produktovou stránku — přesně ten typ dat, který bys skutečně sbíral pro monitoring cen nebo průzkum konkurence.
Než začneš:
- Obtížnost: začátečník–středně pokročilý
- Čas: přibližně 20–30 minut
- Co budeš potřebovat: n8n (self-hosted nebo Cloud), cílovou URL, prohlížeč Chrome (pro hledání CSS selektorů)
Krok 1: Vytvořte nové workflow a přidejte ruční spouštěč
Otevři n8n, klikni na „New Workflow“ a pojmenuj ho popisně — třeba „Competitor Price Scraper“. Přidej uzel Manual Trigger. (Později ho vyměníme za plánovaný spouštěč.)
Na plátně by se měl objevit jediný uzel, připravený ke spuštění po kliknutí na „Test Workflow“.
Krok 2: Stáhněte stránku pomocí HTTP Request uzlu
Přidejte uzel HTTP Request a propojte ho s Manual Triggerem. Nastavte metodu na GET a vložte cílovou URL (např. https://example.com/products).
Teď ten důležitý krok, který většina návodů vynechá: přidejte realistickou hlavičku User-Agent. Ve výchozím nastavení posílá n8n jako user agent axios/xx — což je pro boty okamžitě poznatelné. V části „Headers“ přidejte:
| Název hlavičky | Hodnota |
|---|---|
| User-Agent | Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36 |
| Accept | text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8 |
Pokud scrapujete více URL, zapněte Batching (v Options) a nastavte prodlevu 1–3 sekundy mezi požadavky. Pomáhá to vyhnout se rate limitům.
Spusťte uzel. V panelu s výstupem byste měli vidět syrové HTML.
Krok 3: Parsujte data pomocí HTML uzlu
Propojte uzel HTML s výstupem z HTTP Request. Jako operaci zvolte Extract HTML Content.
Správné CSS selektory najdete tak, že otevřete cílovou stránku v Chrome, kliknete pravým tlačítkem na data, která chcete (např. název produktu), a vyberete „Inspect“. V panelu Elements klikněte pravým tlačítkem na zvýrazněný HTML prvek a zvolte „Copy → Copy selector“.
Nastavte extrakční hodnoty třeba takto:
| Klíč | CSS selektor | Vrácená hodnota |
|---|---|---|
| product_name | .product-title | Text |
| price | .price-current | Text |
| url | .product-link | Atribut: href |
Spusťte uzel. Ve výstupu byste měli vidět tabulku strukturovaných dat — názvy produktů, ceny a URL.
Krok 4: Vyčistěte a normalizujte data pomocí Code uzlu
Syrová scraped data bývají nečistá. Ceny obsahují mezery, URL mohou být relativní a textová pole mívají koncové zalomení řádků. Přidejte Code uzel a propojte ho s HTML uzlem.
Tady je jednoduchý JavaScript pro úklid dat:
1return items.map(item => {
2 const d = item.json;
3 return {
4 json: {
5 product_name: (d.product_name || '').trim(),
6 price: parseFloat((d.price || '').replace(/[^0-9.]/g, '')),
7 url: d.url && d.url.startsWith('http') ? d.url : `https://example.com${d.url}`
8 }
9 };
10});
Tenhle krok je pro produkční kvalitu dat zásadní. Když ho přeskočíš, tvoje tabulka bude plná položek typu „$ 29.99\n“.
Krok 5: Exportujte do Google Sheets, Airtable nebo CSV
Propojte uzel Google Sheets (nebo Airtable, případně Convert to File pro CSV). Přihlaste se ke svému Google účtu, vyberte tabulku a sheet a namapujte pole z výstupu Code uzlu na sloupce v tabulce.
Spusťte celé workflow. Měli byste vidět čistá, strukturovaná data v tabulce.
Mimochodem: do Google Sheets, Airtable, Notion a Excelu bez jakéhokoli nastavování uzlů. Pokud nepotřebujete celý řetězec workflow a chcete jen data, je to užitečná zkratka.
Část, kterou každý n8n web scraping tutorial vynechá: kompletní workflow pro stránkování
Stránkování je největší mezera v n8n scraping obsahu — a zároveň největší zdroj frustrace na fórech komunity n8n.
Existují dva hlavní vzory stránkování:
- Stránkování klikáním / podle URL — stránky jako
?page=1,?page=2atd. - Infinite scroll — obsah se načítá při posouvání dolů (například Twitter, Instagram nebo mnoho moderních produktových katalogů).
Stránkování podle URL v n8n (inkrementace URL přes Loop uzly)
Vestavěná možnost Pagination v nabídce Options u HTTP Request uzlu zní pohodlně. V praxi je ale nespolehlivá. Nejpopulárnější autor n8n scraping tutoriálu (Lakshay Nasa) ji vyzkoušel a napsal: „it didn't behave reliably in my experience.“ Uživatelé na fórech hlásí, že , a nedokáže správně rozpoznat poslední stránku.

Spolehlivý přístup: vygenerujte seznam URL explicitně v Code uzlu a pak je procházejte přes Loop Over Items.
Postup:
- Přidejte Code uzel, který vygeneruje URL stránek:
1const base = 'https://example.com/products';
2const totalPages = 10; // nebo zjistěte dynamicky
3return Array.from({length: totalPages}, (_, i) => ({
4 json: { url: `${base}?page=${i + 1}` }
5}));
- Propojte Loop Over Items uzel, který projde celý seznam.
- Uvnitř smyčky přidejte HTTP Request uzel (URL nastavte na
{{ $json.url }}) a potom HTML uzel pro parsování. - Přidejte Wait uzel (1–3 sekundy, ideálně náhodně) uvnitř smyčky, aby nedocházelo k 429 rate limitům.
- Po smyčce výsledky agregujte a exportujte do Google Sheets nebo CSV.
Celý řetězec: Code (vygenerovat URL) → Loop Over Items → HTTP Request → HTML → Wait → (zpět do smyčky) → Agregace → Export.
Na co si dát pozor: uzel Loop Over Items má , kdy vnořené smyčky tiše přeskočí část položek. Pokud stránkuješ a zároveň obohacuješ data o podstránky, testuj pečlivě — počet dokončených položek nemusí sedět s počtem vstupů.
Stránkování při infinite scroll: proč vestavěné uzly n8n narážejí
Stránky s infinite scroll načítají obsah přes JavaScript během posouvání. HTTP Request uzel stáhne jen počáteční HTML — neumí spustit JavaScript ani vyvolat scroll události. Máš dvě možnosti:
- Použít komunitní uzel pro headless browser (např. nebo ), který stránku vykreslí a nasimuluje scrollování.
- Použít scraping API (ScrapeNinja, Firecrawl, ZenRows) s povoleným JS renderingem.
Obě varianty výrazně zvyšují složitost. U každého webu počítej s nastavením na 30–60+ minut, plus průběžnou údržbou.
Jak Thunderbit zvládá stránkování bez konfigurace
Jsem zaujatý, ale rozdíl je obrovský:
| Možnost | n8n (DIY workflow) | Thunderbit |
|---|---|---|
| Stránkování podle klikání | Ruční nastavení loop uzlu, inkrementace URL | Automaticky — detekuje a sleduje stránkování |
| Stránky s infinite scroll | Vyžaduje headless browser a komunitní uzel | Vestavěná podpora, bez konfigurace |
| Náročnost nastavení | 30–60 min na web | 2 kliknutí |
| Počet stránek v dávce | Sekvenčně (jedna po druhé) | 50 stránek současně (Cloud Scraping) |
Když scrapuješ 200 produktových stránek napříč 10 stránkovanými seznamy, n8n ti zabere celé odpoledne. Thunderbit to zvládne asi za dvě minuty. To není útok na n8n — jen jiný nástroj pro jiný typ úkolu.
Nastavte a nechte běžet: n8n web scraping pipeline spuštěné cronem
Jednorázové scrapování je užitečné, ale skutečná síla n8n web scraping je v opakovaném, automatizovaném sběru dat. Překvapivě téměř žádný návod neřeší Schedule Trigger pro scraping — i když jde o jednu z nejžádanějších funkcí v komunitě.
Jak postavit denní pipeline pro monitoring cen
Nahraďte Manual Trigger uzlem Schedule Trigger. Můžete použít n8n UI („Every day at 8:00 AM“) nebo cron výraz (0 8 * * *).
Celý řetězec workflow:
- Schedule Trigger (denně v 8:00)
- Code uzel (vygeneruje URL se stránkováním)
- Loop Over Items → HTTP Request → HTML → Wait (projede všechny stránky)
- Code uzel (vyčistí data, normalizuje ceny)
- Google Sheets (přidá nové řádky)
- IF uzel (spadla nějaká cena pod práh?)
- Slack (pošle upozornění, pokud ano)
Současně si nastav workflow s Error Trigger na jakékoli selhání a nech ho pingnout Slack. Jinak až se rozbijí selektory (a to se stane), zjistíš to až za tři týdny, když report zůstane prázdný.
Dvě nenápadné, ale důležité podmínky:
- n8n musí běžet 24/7. Self-hostované řešení na notebooku se nespustí, když zavřeš víko. Použij server, Docker nebo n8n Cloud.
- Po každé úpravě workflow vypni a znovu zapni. n8n Cloud má , kdy se plánovače po úpravách tiše odregistrují, aniž by se zobrazila chyba.
Jak vytvořit týdenní pipeline pro extrakci leadů
Stejný vzor, jiný cíl: Schedule Trigger (každé pondělí v 9:00) → HTTP Request (firemní katalog) → HTML (vytažení jména, telefonu, e-mailu) → Code (deduplikace, čištění formátu) → push do Airtable nebo HubSpotu.

Skutečné náklady tady tvoří údržba, o které se moc nemluví. Když se katalog změní v rozložení, CSS selektory se rozbijí a workflow selže potichu. HasData odhaduje, že na původního času na stavbu bys měl v ročním rozpočtu počítat i s údržbou u každé selector-based pipeline. Jakmile spravuješ zhruba 20 webů, je ten overhead reálný.
Thunderbit Scheduled Scraper: bezkódová alternativa
Thunderbit Scheduled Scraper ti umožní zadat interval přirozeným jazykem (např. „každé pondělí v 9:00“), vložit URL a kliknout na „Schedule“. Běží v cloudu — žádný hosting, žádné cron výrazy, žádné tiché odregistrace.
| Oblast | n8n naplánované workflow | Thunderbit Scheduled Scraper |
|---|---|---|
| Nastavení plánu | Cron výraz nebo n8n UI | Popis v běžném jazyce |
| Čištění dat | Nutný ruční Code uzel | AI čistí, štítkuje a překládá automaticky |
| Cílový export | Vyžaduje integrační uzly | Google Sheets, Airtable, Notion, Excel (zdarma) |
| Požadavek na hosting | Self-hosted nebo n8n Cloud | Žádný — běží v cloudu |
| Údržba při změně webu | Rozbijí se selektory, nutná ruční oprava | AI při každém spuštění načte web znovu |
Poslední řádek je ten nejdůležitější. Uživatelé na fórech to říkají jasně: „většina řešení funguje, dokud web nezmění layout.“ Přístup Thunderbit založený na AI tu bolest odstraňuje, protože nepracuje s pevně danými CSS selektory.
Když je váš n8n scraper zablokovaný: průvodce řešením anti-bot problémů
Zablokování je po stránkování největší zdroj frustrace. Běžná rada — „přidejte User-Agent hlavičku“ — je asi stejně užitečná jako zamknout síťové dveře před hurikánem.
Podle Imperva 2025 Bad Bot Report tvoří a je škodlivých. Dodavatelé ochrany proti botům (Cloudflare, Akamai, DataDome, HUMAN, PerimeterX) reagovali TLS fingerprintingem, JavaScriptovými výzvami a behaviorální analýzou. HTTP Request uzel v n8n, který běží nad knihovnou Axios, vytváří výrazný, snadno rozpoznatelný TLS fingerprint, který nevypadá jako běžný prohlížeč. Změna User-Agent hlavičky nic neřeší — tě prozradí dřív, než se vůbec přečte první HTTP hlavička.
Rozhodovací strom pro anti-bot problémy
Tady je systematický rámec pro troubleshooting — ne jen „přidejte User-Agent“:
Je požadavek blokovaný?
- 403 Forbidden → přidej User-Agent + Accept hlavičky (viz Krok 2 výše) → stále blokováno?
- Ano → přidej rotaci residential proxy → stále blokováno?
- Ano → přepni na scraping API (ScrapeNinja, Firecrawl, ZenRows) nebo komunitní headless browser uzel
- Ne → pokračuj
- Ne → pokračuj
- Ano → přidej rotaci residential proxy → stále blokováno?
- Objevuje se CAPTCHA → použij scraping API s vestavěným řešením CAPTCHA (např. )
- Prázdná odpověď (obsah renderovaný přes JS) → použij komunitní headless browser uzel nebo scraping API s JS renderingem
- Rate limit (chyba 429) → zapni batching na HTTP Request uzlu, nastav prodlevu 2–5 sekund mezi dávkami, sniž souběžnost
Ještě jedna past: n8n má , kvůli kterému HTTP Request uzel neumí správně tunelovat HTTPS přes HTTP proxy. Knihovna Axios selže při TLS handshake, i když curl ve stejném kontejneru funguje bez problémů. Pokud používáš proxy a dostáváš záhadné chyby připojení, tohle bude nejspíš důvod.
Proč Thunderbit obchází většinu anti-bot problémů
Thunderbit nabízí dva režimy scrapování:
- Browser Scraping: Běží ve vašem skutečném Chrome prohlížeči, přebírá cookies relace, stav přihlášení a browser fingerprint. Tím obchází většinu anti-bot opatření, která blokují server-side požadavky — protože požadavek skutečně vychází z prohlížeče.
- Cloud Scraping: U veřejně dostupných webů se o anti-bot ochranu ve velkém měřítku stará cloud Thunderbit — .
Jestli trávíš víc času bojem s Cloudflare než analýzou dat, je to praktická alternativa.
Upřímně: kdy n8n web scraping funguje — a kdy je lepší použít něco jiného
n8n je skvělá platforma. Ale není to správný nástroj pro každý scrapingový úkol, a žádný konkurenční článek to neříká dost otevřeně. Uživatelé se na fórech doslova ptají: „jak těžké je vytvořit web scraper v n8n?“ a „který scrapingový nástroj funguje s n8n nejlépe?“
Kde n8n web scraping vyniká
- Vícekrokové workflow, která spojují scraping s navazujícím zpracováním — aktualizace CRM, Slack upozornění, AI analýza, zápis do databáze. To je hlavní síla n8n.
- Situace, kde je scraping jen jeden uzel v širším automatizačním řetězci — scrape → enrich → filter → push do CRM.
- Technicky zdatní uživatelé, kterým nevadí CSS selektory a logika založená na uzlech.
- Scénáře, kde je třeba vlastní transformace dat mezi scrapením a uložením.
Kde je n8n web scraping bolestivý
- Netechnické týmy, které potřebují data rychle. Nastavení uzlů, hledání CSS selektorů a debugging je pro byznys uživatele poměrně strmý kopec.
- Weby s výraznou ochranou proti botům. Proxy a API doplňky zvyšují cenu i složitost.
- Údržba při změnách layoutu. CSS selektory se rozbijí, workflow selže potichu.
- Hromadné scrapování napříč různými typy webů. Každý web potřebuje vlastní konfiguraci selektorů.
- Obohacování podstránek. Vyžaduje stavbu samostatných pod-workflow v n8n.
Porovnání vedle sebe: n8n vs. Thunderbit vs. Python skripty
| Faktor | n8n DIY scraping | Thunderbit | Python skript |
|---|---|---|---|
| Potřebná technická úroveň | Střední (uzly + CSS selektory) | Žádná (AI navrhne pole) | Vysoká (programování) |
| Čas na nastavení nového webu | 30–90 min | ~2 minuty | 1–4 hodiny |
| Ochrana proti botům | Ručně (hlavičky, proxy, API) | Vestavěná (browser/cloud režimy) | Ručně (knihovny) |
| Údržba při změně webu | Ruční úpravy selektorů | Nulová — AI se přizpůsobí automaticky | Ruční úpravy kódu |
| Podpora vícekrokových workflow | Výborná (hlavní síla) | Export do Sheets/Airtable/Notion | Vyžaduje vlastní kód |
| Cena ve větším měřítku | n8n hosting + náklady na proxy/API | Kredity (cca 1 kredit na řádek) | Server + proxy náklady |
| Obohacování podstránek | Ručně — nutný samostatný pod-workflow | Scrapování podstránek na 1 kliknutí | Vlastní skriptování |
Shrnutí: použij n8n, když je scraping součástí složitého vícekrokového automatizačního řetězce. Thunderbit použij, když potřebuješ data rychle a nechceš stavět workflow. Python použij, když chceš maximální kontrolu a máš k dispozici vývojáře. Nejsou to konkurenti — doplňují se.

Praktické n8n web scraping workflow, která můžete opravdu zkopírovat
Uživatelé na fórech se pořád ptají: „Připojil už někdo tyhle věci do vícekrokového workflow?“ Tři konkrétní workflow — skutečné sekvence uzlů, které si můžeš postavit dnes.
Workflow 1: monitor cen konkurence v ecommerce
Cíl: denně sledovat ceny konkurence a dostat upozornění, když klesnou.
Sekvence uzlů: Schedule Trigger (denně, 8:00) → Code (vygeneruje URL se stránkováním) → Loop Over Items → HTTP Request → HTML (vytažení názvu produktu, ceny, dostupnosti) → Wait (2 s) → (zpět do smyčky) → Code (vyčistí data, normalizuje ceny) → Google Sheets (přidá řádky) → IF (cena pod prahem?) → Slack (pošle upozornění)
Složitost: 8–10 uzlů, 30–60 minut nastavení na web konkurenta.
Zkratka v Thunderbit: Thunderbit Scheduled Scraper + zvládnou podobný výsledek během minut, včetně bezplatného exportu do Google Sheets.
Workflow 2: pipeline pro generování obchodních leadů
Cíl: týdně scrapovat firemní katalog, vyčistit a rozdělit leady a poslat je do CRM.
Sekvence uzlů: Schedule Trigger (týdně, pondělí 9:00) → HTTP Request (listing stránka katalogu) → HTML (vytažení jména, telefonu, e-mailu, adresy) → Code (deduplikace, čištění formátu) → OpenAI/Gemini node (kategorizace podle oboru) → HubSpot node (vytvoření kontaktů)
Poznámka: n8n má nativní — užitečný pro zápis do CRM. Ale samotné scrapování a čištění pořád vyžaduje ruční práci s CSS selektory.
Zkratka v Thunderbit: bezplatný a Phone Number Extractor vytáhnou kontaktní údaje na 1 kliknutí bez stavby workflow. AI labelování může leady rozřadit už během extrakce. Kdo nepotřebuje celý automatizační řetězec, může n8n nastavení úplně přeskočit.
Workflow 3: sledování nových realitních nabídek
Cíl: jednou týdně najít nové nabídky na Zillow nebo Realtor.com a poslat souhrnný e-mail.
Sekvence uzlů: Schedule Trigger (týdně) → HTTP Request (stránky s nabídkami) → HTML (vytažení adresy, ceny, pokojů, odkazu) → Code (čištění dat) → Google Sheets (přidání) → Code (porovnání s daty z minulého týdne, označení nových nabídek) → IF (našly se nové nabídky?) → Gmail/SendGrid (odeslání digestu)
Poznámka: Thunderbit má — bez potřeby CSS selektorů. Uživatelé, kteří potřebují celý automatizační řetězec (scrape → compare → alert), ocení n8n; ti, kterým jde jen o data, získají víc z Thunderbit.
Pro další inspiraci workflow má n8n komunitní knihovna šablony pro , a .
Tipy, jak udržet vaše n8n web scraping pipeline v chodu bez problémů
Produkční scraping je z 20 % o stavbě a z 80 % o údržbě.
Používejte batching a prodlevy, abyste se vyhnuli rate limitům
Zapněte batching na HTTP Request uzlu a nastavte prodlevu 1–3 sekundy mezi dávkami. Současné požadavky jsou nejrychlejší cesta k IP banu. Trocha trpělivosti tady ušetří spoustu bolesti později.
Sledujte běhy workflow kvůli tichým selháním
V záložce Executions kontrolujte, zda běhy neskončily chybou. Scrapovaná data se mohou vracet prázdná, pokud web změní layout — workflow sice „proběhne úspěšně“, ale tabulka bude plná prázdných buněk.
Nastavte workflow s Error Trigger, které se spustí při jakémkoli selhání a pošle Slack nebo e-mail alert. U produkčních pipeline to není volitelné.
CSS selektory ukládejte mimo workflow, aby šly snadno upravit
Udržujte CSS selektory v Google Sheetu nebo v n8n environment variables, abyste je mohli měnit bez úprav samotného workflow. Když se layout webu změní, upravíš jen jedno místo.
Poznejte okamžik, kdy přejít na AI scraper
Pokud zjistíte, že neustále aktualizujete CSS selektory, bojujete s ochranou proti botům nebo trávíte víc času údržbou scraperů než prací s daty, zvažte AI nástroj jako , který web načte pokaždé znovu a automaticky se přizpůsobí. Funguje dobře i : Thunderbit zvládne křehkou vrstvu extrakce (tu, která se pokaždé rozbije, když web změní <div>), exportuje do Google Sheets nebo Airtable a n8n pak nové řádky převezme přes nativní Sheets/Airtable trigger a obstará orchestrace — aktualizace CRM, alerty, podmíněná logika, rozesílání do více systémů.
Závěr: postavte pipeline, která odpovídá vašemu týmu
n8n web scraping je silný, když potřebujete scraping jako jeden krok v širším automatizačním workflow. Vyžaduje ale technické nastavení, průběžnou údržbu a trpělivost při řešení stránkování, anti-bot ochrany a plánování. V tomhle průvodci jsme prošli celý proces: první workflow, stránkování (část, kterou každý návod vynechá), plánování, troubleshooting anti-bot blokací, upřímné zhodnocení, kde n8n dává smysl, i reálné workflow, která si můžeš zkopírovat.
Já to vidím takhle:
- Použij n8n, když je scraping součástí komplexního vícekrokového automatizačního řetězce — aktualizace CRM, Slack upozornění, AI obohacení, podmíněné směrování.
- Použij , když potřebuješ data rychle a nechceš stavět workflow — AI zvládne návrh polí, stránkování, anti-bot i export ve 2 kliknutích.
- Použij Python, když potřebuješ maximální kontrolu a máš vývojářské kapacity.
Upřímně, nejlepší nastavení pro mnoho týmů je kombinace obojího: Thunderbit pro extrakci, n8n pro orchestrace. Pokud chceš vidět, jak si AI scraping stojí vedle tvého n8n workflow, ti umožní si vše vyzkoušet v menším měřítku — a nainstaluješ během několika sekund. Pro videonávody a nápady na workflow se podívej na .
Často kladené otázky
Umí n8n scrapovat weby náročné na JavaScript?
Samotný vestavěný HTTP Request uzel ne. HTTP Request stahuje syrové HTML a neumí spouštět JavaScript. U webů vykreslovaných přes JS potřebuješ komunitní uzel jako nebo integraci se scraping API (ScrapeNinja, Firecrawl), které renderují JavaScript na serveru. Thunderbit zvládá JS-heavy weby nativně v režimech Browser i Cloud scraping.
Je n8n web scraping zdarma?
Self-hostovaná verze n8n je zdarma a open source. n8n Cloud dříve nabízel free tier, ale k dubnu 2026 už má jen 14denní trial — poté plány začínají na 24 dolarech měsíčně za 2 500 exekucí. Scrapování chráněných webů může navíc vyžadovat placené proxy služby (5–15 USD/GB u residential proxy) nebo scraping API (49–200+ USD/měsíc podle objemu).
Jak si n8n web scraping stojí proti Thunderbit?
n8n je lepší pro vícekrokové automatizace, kde je scraping jen jednou částí většího workflow (např. scrape → enrich → filter → push do CRM → alert do Slacku). Thunderbit je lepší pro rychlou, bezkódovou extrakci dat s AI detekcí polí, automatickým stránkováním a nulovou údržbou při změně webu. Mnoho týmů používá obojí dohromady — Thunderbit pro extrakci, n8n pro orchestrace.
Mohu přes n8n scrapovat weby, které vyžadují přihlášení?
Ano, ale je potřeba v HTTP Request uzlu nakonfigurovat cookies nebo session tokeny, což bývá na údržbu složité. Režim Thunderbit Browser Scraping automaticky přebírá přihlášenou Chrome session uživatele — pokud jsi přihlášený ty, Thunderbit může scrapovat to, co vidíš.
Co mám dělat, když můj n8n scraper najednou přestane vracet data?
Nejprve zkontroluj záložku n8n Executions, zda nejsou chyby. Nejčastější příčinou bývá změna layoutu webu, která rozbila CSS selektory — workflow sice „proběhne“, ale vrací prázdná pole. Ověř selektory v nástroji Inspect v Chrome, uprav je ve workflow (nebo v externím seznamu selektorů) a znovu otestuj. Pokud narážíš na anti-bot blokaci, postupuj podle rozhodovacího stromu v tomto průvodci. Pro dlouhodobou spolehlivost zvaž AI scraper jako Thunderbit, který se změnám layoutu přizpůsobuje automaticky.
Zjistěte více