Před pár měsíci nám jeden z uživatelů poslal screenshot workflow v n8n s 14 uzly, půl tuctem samolepicích poznámek a předmětem zprávy, který zněl jen: „Help.“ Řídil se oblíbeným návodem na web scraping v n8n, rozjel pěknou ukázku s 10 řádky na testovacím webu a pak se pokusil vytěžit skutečné konkurenční ceny ze 200 produktových stránek. Výsledek? Rozbitá smyčka stránkování, zeď chyb 403 a tichý plánovač, který se po prvním úterý už nikdy nespustil.
Právě tahle propast — mezi demo verzí 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, a můžu říct jediné: samotné scrapování bývá jen málokdy ten nejtěžší krok. Skutečný problém přichází až po prvním úspěšném získání dat. Stránkování, plánování, ochrana proti botům, čištění dat, export a — hlavně — údržba, když web potřetí za kvartál změní rozložení. V tomhle průvodci projdeme celý pipeline: od prvního HTTP Request uzlu až po opakovaný produkční workflow pro web scraping v n8n. A tam, kde přístup „udělej si sám“ v n8n narazí na strop, ukážu, kde vám AI nástroje jako Thunderbit ušetří hodiny nebo celé dny frustrace.
Co je web scraping v n8n (a proč většina návodů ukazuje jen špičku ledovce)
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í úkol (načtení webové stránky, parsování HTML, odeslání zprávy do Slacku, zápis do Google Sheets) — a skládáš je do automatizovaných procesů. Nepotřebuješ těžké programování, i když v případě potřeby můžeš vložit JavaScript.
„Web scraping v n8n“ znamená používat vestavěné uzly HTTP Request a HTML (plus komunitní uzly) k načítání, parsování a zpracování dat z webu přímo v automatizovaných workflow. Jádro jsou dva kroky: Načíst (HTTP Request uzel stáhne syrové HTML z URL) a Parsovat (HTML uzel použije CSS selektory k vytažení dat, která tě zajímají — názvy produktů, ceny, e-maily, cokoli potřebuješ).
Platforma je obrovská: k dubnu 2026 má n8n , přes 230 000 aktivních uživatelů, více než 9 166 komunitních workflow šablon a vydává novou minor verzi zhruba každý týden. V březnu 2025 získala . Je tu prostě obrovská dynamika.
Jenže existuje mezera, o které se moc nemluví. Nejoblíbenější návod na scraping v n8n na dev.to (od Lakshaye Nasy, vydaný pod organizací „Extract by Zyte“) sliboval stránkování až v „Part 2“. Ten sice nakonec vyšel — ale autorův vlastní závěr zněl: „N8N nám v HTTP Request uzlu pod Options dává výchozí Pagination Mode a i když to zní pohodlně, podle mých zkušeností to u běžných scrapingových případů nefungovalo spolehlivě.“ Autor nakonec řešil stránkování přes placené API třetí strany. Mezitím uživatelé ve fóru n8n pořád uvádějí „pagination, throttling, login“ jako bod, kde se scraping v n8n „rychle komplikuje“. Tenhle průvodce je přesně o vyplnění téhle mezery.
Proč je web scraping v n8n důležitý pro sales, operations a ecommerce týmy
Web scraping v n8n není žádná hračka pro vývojáře. Je to byznysový nástroj. se v roce 2025 pohybuje kolem 1–1,3 miliardy dolarů a do roku 2030 má vyrůst na 2–2,3 miliardy. Jen dynamické oceňování používá zhruba a dnes spoléhá na alternativní data — z velké části získaná z webu. McKinsey uvádí, že dynamické oceňování přináší adopcím .
A tady se ukazuje skutečná síla n8n: nejde jen o získání dat. Jde o to, co se stane potom. n8n ti umožní propojit scraping s navazujícími akcemi — aktualizací CRM, upozorněními do Slacku, exportem do tabulek, AI analýzou — v jednom workflow.
| Případ použití | Kdo z toho těží | Co scrapujete | Byznysový výsledek |
|---|---|---|---|
| Generování leadů | Obchodní týmy | Firemní katalogy, kontaktní stránky | Naplnění CRM kvalifikovanými leady |
| Sledování cen konkurence | Ecommerce operace | Produktové listingy | Úprava cen v reálném čase |
| Sledování realitních nabídek | Realitní makléři | Zillow, Realtor, místní MLS weby | Zachycení nových nabídek dříve než konkurence |
| Průzkum trhu | Marketingové týmy | Recenzní weby, fóra, zprávy | Identifikace trendů a sentimentu zákazníků |
| Sledování zásob u dodavatelů/SKU | Supply chain operace | Produktové stránky dodavatelů | Prevence výpadků a lepší nákupní plánování |
Data ukazují, že návratnost investic je reálná: plánuje v roce 2025 zvýšit investice do AI a automatizované pečování leadů prokázalo, že může během devíti měsíců. Pokud tvoje tým stále kopíruje data z webů do tabulek ručně, přicházíš o peníze.
Vaše sada nástrojů pro web scraping v n8n: základní uzly a dostupná řešení
Než něco postavíš, musíš vědět, co máš k dispozici. Tady jsou základní n8n uzly pro scraping:
- HTTP Request node: Stahuje syrové HTML z libovolné URL. Funguje jako prohlížeč, který si vyžádá stránku, ale místo vykreslení vrátí kód. Podporuje GET/POST, hlavičky, dávkování a (alespoň 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, cokoli 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řestavuje nebo přejmenovává datová pole pro navazující uzly.
- Split Out node: Rozdělí pole na jednotlivé položky ke zpracování.
- Convert to File node: Exportuje strukturovaná data do CSV, JSON apod.
- Loop Over Items node: Prochází seznamy položek (kritické pro stránkování — víc níže).
- Schedule Trigger: Spouští workflow podle cron rozvrhu.
- Error Trigger: Upozorní tě, když workflow selže (nezbytné pro produkci).
Pro pokročilý scraping — weby s JavaScriptovým renderováním nebo silnou ochranou proti botům — budeš potřebovat komunitní uzly:
| Přístup | Nejlepší pro | Úroveň dovedností | Zvládá weby renderované přes JS | Ochrana proti botům |
|---|---|---|---|---|
| n8n HTTP Request + HTML uzly | Statické weby, API | Začátečník až mírně pokročilý | Ne | Ručně (hlavičky, proxy) |
| n8n + komunitní uzel ScrapeNinja/Firecrawl | Dynamické / chráněné weby | Mírně 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é uživatele | Začátečník | Ano (režim Browser nebo Cloud) | Vestavěně (přebírá browser session nebo cloudové zpracování) |
K dnešnímu dni, ve verzi v2.15.1, v n8n není nativní headless-browser uzel. Každý scraping renderovaný přes JS vyžaduje buď komunitní uzel, nebo externí API.
Krátce o Thunderbit: jde o AI , 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 tomhle průvodci ukážu, kde dává smysl, a kde je naopak lepší volba n8n.
Krok za krokem: vytvořte svůj první workflow pro web scraping v n8n
Když už máš toolbox, pojďme postavit funkční n8n scraper od nuly. Jako příklad použiju produktovou listing stránku — typ dat, která bys skutečně scrapoval kvůli sledování cen nebo analýze konkurence.
Než začneš:
- Obtížnost: začátečník až mírně pokročilý
- Časová náročnost: cca 20–30 minut
- Co budete potřebovat: n8n (self-hosted nebo Cloud), cílovou URL, prohlížeč Chrome (kvůli hledání CSS selektorů)
Krok 1: Vytvořte nové workflow a přidejte manuální trigger
Otevři n8n, klikni na „New Workflow“ a pojmenuj ho popisně — třeba „Competitor Price Scraper“. Přetáhni uzel Manual Trigger. (Později ho vyměníme za plánovaný trigger.)
Na plátně bys měl vidět jediný uzel, připravený se spustit po kliknutí na „Test Workflow“.
Krok 2: Načtěte stránku pomocí uzlu HTTP Request
Přidej uzel HTTP Request a propojte ho s Manual Triggerem. Nastav metodu na GET a vlož cílovou URL (např. https://example.com/products).
Teď ten zásadní krok, který většina návodů vynechává: přidej realistickou hlavičku User-Agent. Ve výchozím nastavení n8n posílá jako user agent axios/xx — což je okamžitě rozpoznatelné jako bot. V sekci „Headers“ přidej:
| 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 scrapuješ více URL, zapni Batching (v Options) a nastav pauzu 1–3 sekundy mezi požadavky. Pomůže to vyhnout se limitům rychlosti.
Spusť uzel. Ve výstupu bys měl vidět syrové HTML.
Krok 3: Parsujte data pomocí uzlu HTML
Propojte uzel HTML s výstupem z HTTP Request. Nastavte operaci na Extract HTML Content.
Správné CSS selektory zjistíte tak, že otevřete cílovou stránku v Chrome, kliknete pravým tlačítkem na požadovaný prvek (např. název produktu) a zvolíte „Inspect“. V panelu Elements klikněte pravým na zvýrazněný HTML prvek a vyberte „Copy → Copy selector“.
Konfigurace extrakce může vypadat takto:
| Klíč | CSS selektor | Vrácená hodnota |
|---|---|---|
| product_name | .product-title | Text |
| price | .price-current | Text |
| url | .product-link | Atribut: href |
Spusť uzel. Ve výstupu bys měl vidět tabulku strukturovaných dat — názvy produktů, ceny a URL.
Krok 4: Vyčistěte a normalizujte data pomocí uzlu Code
Syrová scraped data bývají nepořádná. Ceny obsahují mezery navíc, URL mohou být relativní a textová pole mívají koncové odřádky. Přidej uzel Code a propojte ho s HTML uzlem.
Tady je jednoduchý JavaScript, který data vyčistí:
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číš, tabulka se ti zaplní položkami 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řihlas se přes Google účet, vyber tabulku a list a namapuj pole z výstupu Code uzlu na sloupce.
Spusť celé workflow. Ve spreadsheetu by se měla objevit čistá, strukturovaná data.
Mimochodem: do Google Sheets, Airtable, Notion a Excelu bez nutnosti nastavovat uzly. Pokud nepotřebuješ celý řetězec workflow a chceš jen data, je to velmi praktická zkratka.
Část, kterou většina návodů na web scraping v n8n vynechává: kompletní workflow pro stránkování
Stránkování je největší mezera v obsahu o scrapingu v n8n — a zároveň největší zdroj frustrace ve fórech komunity n8n.
Existují dva hlavní vzory stránkování:
- Klikací / URL-increment stránkování — stránky typu
?page=1,?page=2atd. - Infinite scroll — obsah se načítá při scrollování dolů (např. Twitter, Instagram nebo mnoho moderních katalogů produktů).
Klikací stránkování v n8n (zvyšování URL pomocí Loop uzlů)
Vestavěná volba Pagination v nabídce Options u uzlu HTTP Request zní lákavě. V praxi je ale nespolehlivá. Nejslavnější autor n8n scraping návodu (Lakshay Nasa) ji zkusil a napsal: „v mém případě to nefungovalo spolehlivě.“ Uživatelé ve fóru hlásí, že vrací , a nezvládá rozpoznat poslední stránku.

Spolehlivější postup: vytvoř seznam URL explicitně v Code uzlu a pak přes něj iteruj pomocí Loop Over Items.
Jak na to:
- Přidej Code uzel, který vygeneruje URL stránek:
1const base = 'https://example.com/products';
2const totalPages = 10; // nebo zjistit dynamicky
3return Array.from({length: totalPages}, (_, i) => ({
4 json: { url: `${base}?page=${i + 1}` }
5}));
- Propojte uzel Loop Over Items, který bude přes seznam procházet.
- Uvnitř smyčky přidej HTTP Request uzel (URL nastav na
{{ $json.url }}) a pak HTML uzel pro parsování. - Do smyčky přidej i Wait uzel (1–3 sekundy, ideálně náhodně), abys se vyhnul 429 rate limitům.
- Po smyčce výsledky agreguj a exportuj do Google Sheets nebo CSV.
Celý řetězec: Code (vytvoření URL) → Loop Over Items → HTTP Request → HTML → Wait → (zpět do smyčky) → Aggregace → Export.
Jeden háček: uzel Loop Over Items má , kdy zanořené smyčky tiše přeskakují položky. Pokud děláš stránkování a zároveň obohacuješ podstránky, testuj pečlivě — počet „done“ nemusí odpovídat vstupnímu počtu.
Stránkování s infinite scroll: proč si s ním vestavěné uzly n8n moc neporadí
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í vykonávat JavaScript ani spouštět scroll eventy. Máš dvě možnosti:
- Použít komunitní uzel headless browseru (např. nebo ), který stránku vyrenderuje a scroll nasimuluje.
- Použít scraping API (ScrapeNinja, Firecrawl, ZenRows) s aktivním JS renderováním.
Obě varianty výrazně zvyšují složitost. U každého webu počítej s 30–60 a více minutami nastavení plus průběžnou údržbou.
Jak Thunderbit řeší stránkování bez konfigurace
Jsem zaujatý, ale rozdíl je opravdu výrazný:
| Schopnost | n8n (DIY workflow) | Thunderbit |
|---|---|---|
| Klikací stránkování | Ruční nastavení Loop uzlu, zvyšování URL | Automaticky — detekuje a sleduje stránkování |
| Stránky s infinite scroll | Vyžaduje headless browser + komunitní uzel | Vestavěná podpora, bez konfigurace |
| Náročnost nastavení | 30–60 min na web | 2 kliknutí |
| Počet stránek na dávku | Sekvenčně (jedna po druhé) | 50 stránek současně (Cloud Scraping) |
Pokud scrapuješ 200 produktových stránek napříč 10 stránkovanými listingy, v n8n ti to zabere celé odpoledne. Thunderbit to zvládne zhruba za dvě minuty. To není kritika n8n — jen jiný nástroj pro jiný typ úkolu.
Nastavte a nechte běžet: cronem spouštěné scraping pipeline v n8n
Jednorázový scraping je užitečný, ale skutečná síla web scrapingu v n8n je v opakovaném, automatickém sběru dat. Překvapivě skoro žádný návod na scraping v n8n nepokrývá Schedule Trigger — i když je to jedna z nejžádanějších funkcí v komunitě.
Jak postavit denní pipeline pro sledování cen
Nahraď Manual Trigger uzlem Schedule Trigger. Můžeš použít rozhraní n8n („Every day at 8:00 AM“) nebo cron výraz (0 8 * * *).
Celý workflow:
- Schedule Trigger (denně v 8:00)
- Code uzel (vygeneruje stránkované URL)
- Loop Over Items → HTTP Request → HTML → Wait (projde všechny stránky)
- Code uzel (vyčistí data, normalizuje ceny)
- Google Sheets (přidá nové řádky)
- IF uzel (klesla některá cena pod práh?)
- Slack (odešle upozornění, pokud ano)
Paralelně k tomu připoj workflow s Error Triggerem, který se spustí při jakémkoli selhání a pošle ping do Slacku. Jinak až se rozbijí selektory (a to se stane), zjistíš to až o tři týdny později, když bude report prázdný.
Dvě méně zřejmé podmínky:
- n8n musí běžet 24/7. Self-host na notebooku nespustí plánování, když je víko zavřené. Použij server, Docker nebo n8n Cloud.
- Po každé úpravě workflow ho vypni a znovu zapni. n8n Cloud má , kdy se plánovače po úpravách tiše odregistrují, aniž by házely chybu.
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 (business directory) → HTML (extrakce jména, telefonu, e-mailu) → Code (deduplikace, čištění formátu) → push do Airtable nebo HubSpotu.

Nejvíc podceňovaná je tady cena údržby. Pokud adresář změní rozložení, CSS selektory se rozbijí a workflow potichu selže. HasData odhaduje, že původního času na vývoj by mělo být v rozpočtu vyčleněno na průběžnou údržbu každé pipeline založené na selektorech za rok. Jakmile spravuješ kolem 20 webů, režie je reálná.
Thunderbit Scheduled Scraper: bezkódová alternativa
Thunderbit Scheduled Scraper ti umožní zadat interval běžný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 Scheduled Workflow | Thunderbit Scheduled Scraper |
|---|---|---|
| Nastavení plánování | Cron výraz nebo UI plánování v n8n | Popis v běžném jazyce |
| Čištění dat | Nutný ruční Code uzel | AI automaticky čistí / označuje / překládá |
| Cílové exporty | 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, je třeba ruční oprava | AI načítá web pokaždé znovu |
Právě ten poslední řádek je nejdůležitější. Lidé z fór to říkají úplně otevřeně: „většina z nich je v pohodě, dokud web nezmění layout.“ Přístup založený na AI v Thunderbit tu bolest eliminuje, protože se nespoléhá na pevné CSS selektory.
Když váš scraper v n8n narazí na blokaci: průvodce řešením anti-bot problémů
Blokace je po stránkování největší zdroj frustrace. Běžná rada — „přidejte User-Agent header“ — je asi stejně užitečná jako zamknout plátěné dveře před hurikánem.
Podle Imperva 2025 Bad Bot Report tvoří a z toho je škodlivých. Dodavatelé anti-bot ochrany (Cloudflare, Akamai, DataDome, HUMAN, PerimeterX) reagovali TLS fingerprintingem, JavaScriptovými výzvami a behaviorální analýzou. HTTP Request uzel v n8n, který pod kapotou používá knihovnu Axios, vytváří výrazný, snadno rozpoznatelný TLS fingerprint neprohlížeče. Změna User-Agent hlavičky nepomůže — tě prozradí dřív, než se vůbec přečte jediná HTTP hlavička.
Rozhodovací strom pro anti-bot problémy
Tady je systematický postup řešení — ne jen „přidejte User-Agent“:
Je požadavek blokován?
- 403 Forbidden → Přidej User-Agent + Accept hlavičky (viz Krok 2 výše) → Stále blokováno?
- Ano → Přidej rotaci rezidenčních proxy → Stále blokováno?
- Ano → Přejdi na scraping API (ScrapeNinja, Firecrawl, ZenRows) nebo komunitní headless browser uzel
- Ne → Pokračuj
- Ne → Pokračuj
- Ano → Přidej rotaci rezidenčních proxy → Stále blokováno?
- Zobrazuje 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í uzel headless browseru nebo scraping API s JS renderováním
- Rate limiting (chyba 429) → Zapni batching v HTTP Request uzlu, nastav 2–5 sekund mezi dávkami, sniž souběžnost
Ještě jeden háček: n8n má , kdy HTTP Request uzel neumí správně tunelovat HTTPS přes HTTP proxy. Knihovna Axios selže při TLS handshaku, i když curl ve stejném kontejneru funguje bez problémů. Pokud používáš proxy a dostáváš záhadné chyby připojení, nejspíš je to ono.
Proč Thunderbit obchází většinu anti-bot problémů
Thunderbit nabízí dva režimy scrapování:
- Browser Scraping: Běží ve tvém skutečném Chrome prohlížeči a přebírá cookies relace, stav přihlášení i fingerprint prohlížeče. Tím obejde většinu anti-bot opatření, která blokují serverové požadavky — protože požadavek je skutečný prohlížeč.
- Cloud Scraping: U veřejně dostupných webů Thunderbit v cloudu zvládá anti-bot ochranu ve velkém — .
Jestli trávíš víc času bojem s Cloudflare než analýzou dat, tohle je praktická alternativa.
Upřímně: kdy web scraping v n8n dává smysl — a kdy je lepší sáhnout po něčem jiném
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á na rovinu. Uživatelé se doslova ptají ve fórech: „jak těžké je vytvořit web scraper v n8n?“ a „který scraping nástroj funguje s n8n nejlépe?“
Kde web scraping v n8n vyniká
- Vícekrokové workflow, která kombinují scraping s navazujícím zpracováním — aktualizace CRM, alerty do Slacku, AI analýza, zápisy do databáze. To je hlavní síla n8n.
- Případy, kdy je scraping jen jeden uzel v širším automatizačním řetězci — scrape → enrich → filter → push to CRM.
- Technicky zdatní uživatelé, kteří se cítí komfortně s CSS selektory a logikou založenou na uzlech.
- Scénáře vyžadující vlastní transformaci dat mezi scrapingem a uložením.
Kde se web scraping v n8n stává nepříjemným
- Netechnickým uživatelům, kteří chtějí prostě rychle data. Nastavení uzlů, hledání CSS selektorů a ladění je pro byznys uživatele strmé.
- Webům s výraznou ochranou proti botům. Proxy a API doplňky přidávají náklady i složitost.
- Údržbě při změnách layoutu webu. CSS selektory se rozbijí, workflow selže potichu.
- Hromadnému scrapingu napříč mnoha typy webů. Každý web potřebuje vlastní konfiguraci selektorů.
- Obohacování z podstránek. Vyžaduje stavění samostatných pod-workflow v n8n.
Srovnání: 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 nastavení na nový web | 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í aktualizace selektorů | Žádná — 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 |
| Náklady ve velkém | Hosting n8n + proxy/API náklady | Kreditový model (~1 kredit na řádek) | Server + proxy náklady |
| Obohacování z podstránek | Ručně — samostatné pod-workflow | Scraping podstránek jedním klikem | Vlastní skriptování |
Pointa je jednoduchá: používej n8n, když je scraping součástí složitého automatizačního řetězce s více kroky. Thunderbit použij, když potřebuješ data rychle a nechceš stavět workflow. Python použij, když potřebuješ maximální kontrolu a máš vývojářské kapacity. Nejsou to konkurenti — spíš se doplňují.

Reálné workflow pro web scraping v n8n, která můžete opravdu zkopírovat
Uživatelé ve fórech se pořád ptají: „Připojil už někdo tyto kroky do vícekrokového workflow?“ Tady jsou tři konkrétní workflow — skutečné sekvence uzlů, které můžeš postavit hned dnes.
Workflow 1: Monitor cen konkurence v ecommerce
Cíl: Denně sledovat ceny konkurence a dostat upozornění, když klesnou.
Řetězec uzlů: Schedule Trigger (denně, 8:00) → Code (vygeneruje stránkované URL) → Loop Over Items → HTTP Request → HTML (extrahuje název produktu, cenu, dostupnost) → 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 alert)
Složitost: 8–10 uzlů, nastavení 30–60 minut na web konkurenta.
Zkratka s Thunderbit: Thunderbit Scheduled Scraper + zvládnou podobný výsledek během minut, s bezplatným exportem do Google Sheets.
Workflow 2: Pipeline pro generování obchodních leadů
Cíl: Jednou týdně scrapovat business directory, vyčistit a kategorizovat leady a poslat je do CRM.
Řetězec uzlů: Schedule Trigger (týdně, pondělí 9:00) → HTTP Request (stránka adresáře) → HTML (extrahuje jméno, telefon, e-mail, adresu) → Code (deduplikace, čištění formátu) → OpenAI/Gemini node (kategorizace podle odvětví) → HubSpot node (vytvoření kontaktů)
Poznámka: n8n má nativní — hodí se pro push do CRM. Ale scraping a čištění pořád vyžadují ruční práci s CSS selektory.
Zkratka s Thunderbit: Bezplatný a Phone Number Extractor od Thunderbitu vytáhnou kontaktní informace na 1 kliknutí bez stavby workflow. AI označování navíc umí kategorizovat leady během extrakce. Uživatelé, kteří nepotřebují celý automatizační řetězec, mohou n8n setup přeskočit úplně.
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.
Řetězec uzlů: Schedule Trigger (týdně) → HTTP Request (listing stránky) → HTML (extrahuje adresu, cenu, počet ložnic, odkaz) → Code (vyčistí data) → Google Sheets (přidá) → Code (porovná s daty z minulého týdne, označí nové nabídky) → IF (nalezeny nové nabídky?) → Gmail/SendGrid (pošle digest)
Poznámka: Thunderbit má — bez CSS selektorů. Uživatelé, kteří potřebují celý automatizační řetězec (scrape → compare → alert), z toho těží v n8n; ti, kteří potřebují jen data, získají víc s Thunderbit.
Pro další inspiraci workflow má komunitní knihovna n8n šablony pro , a .
Tipy, jak udržet scrapingové pipeline v n8n 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
Zapni batching na HTTP Request uzlu a nastav pauzu 1–3 sekundy mezi dávkami. Paralelní požadavky jsou nejrychlejší cesta k IP banu. Trocha trpělivosti teď ušetří hodně bolesti později.
Sledujte běhy workflow kvůli tichým selháním
Používejte záložku Executions v n8n a kontrolujte neúspěšné běhy. Scraped data se mohou vrátit prázdná, když web změní layout — workflow se „povede“, ale tabulka bude plná prázdných buněk.
Nastav workflow s Error Triggerem, které se spustí při jakémkoli selhání a pošle Slack nebo e-mail upozornění. U produkčních pipeline je to naprostá nutnost.
Uchovávejte CSS selektory mimo workflow pro snadné aktualizace
Ulož CSS selektory do Google Sheet nebo proměnných prostředí n8n, abys je mohl měnit bez zásahu do samotného workflow. Když web změní layout, upravíš jen jedno místo.
Vědět, kdy přejít na AI scraper
Jestli neustále aktualizuješ CSS selektory, bojuješ s anti-bot ochranou nebo trávíš víc času údržbou scraperů než využíváním dat, zvaž AI nástroj jako , který web načítá pokaždé čerstvě a automaticky se přizpůsobuje. Funguje dobře i : Thunderbit zvládne křehkou vrstvu extrakce (ta se rozbije pokaždé, když web změní <div>), exportuje do Google Sheets nebo Airtable a n8n pak přes nativní trigger pro Sheets/Airtable přebírá nové řádky a řeší orchestraci — aktualizace CRM, alerty, podmíněnou logiku a rozesílání do více systémů.
Závěr: postavte pipeline, která odpovídá vašemu týmu
Web scraping v n8n je velmi 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 konfiguraci stránkování, anti-bot ochrany a plánování. V tomhle průvodci jsme prošli celý pipeline: první workflow, stránkování (část, kterou každý návod vynechává), plánování, řešení anti-bot problémů, upřímné posouzení, kde se n8n hodí, a reálné workflow, která můžeš zkopírovat.
Takto to vnímám já:
- Použij n8n, když je scraping součástí komplexního automatizačního řetězce s více kroky — aktualizace CRM, alerty do Slacku, obohacení přes AI, podmíněné směrování.
- Použij , když potřebuješ data rychle bez stavby workflow — AI se postará o 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áš k dispozici vývojáře.
Upřímně, nejlepší nastavení pro mnoho týmů je kombinace obojího: Thunderbit pro extrakci, n8n pro orchestraci. Pokud chceš vidět, jak si AI scraping vede ve srovnání s tvým workflow v n8n, ti umožní vyzkoušet ho v menším rozsahu — a nainstaluješ během pár vteřin. Pro videonávody a nápady na workflow mrkni na .
Často kladené otázky
Umí n8n scrapovat weby náročné na JavaScript?
Ne sám o sobě pomocí vestavěného HTTP Request uzlu. HTTP Request stáhne jen syrové HTML a neumí vykonávat JavaScript. Pro weby renderované přes JS potřebuješ komunitní uzel jako nebo integraci se scraping API (ScrapeNinja, Firecrawl), které renderuje JavaScript na serveru. Thunderbit zvládá JS-heavy weby nativně v režimu Browser i Cloud.
Je web scraping v n8n zdarma?
Self-hosted verze n8n je zdarma a open source. n8n Cloud měl dříve free tier, ale k dubnu 2026 nabízí jen 14denní trial — poté plány začínají na 24 dolarech měsíčně za 2 500 executionů. Scraping chráněných webů může navíc vyžadovat placené proxy služby (5–15 USD/GB u rezidenčních proxy) nebo scraping API (49–200+ USD měsíčně podle objemu).
Jak si web scraping v n8n stojí proti Thunderbitu?
n8n je lepší pro vícekrokové automatizace, kde je scraping jen jednou částí většího workflow (např. scrape → enrich → filter → push to CRM → alert do Slacku). Thunderbit je lepší pro rychlou extrakci dat bez kódu s AI detekcí polí, automatickým stránkováním a nulovou údržbou, když se web změní. Mnoho týmů používá obojí zároveň — Thunderbit pro extrakci, n8n pro orchestraci.
Můžu v n8n scrapovat data z webů, které vyžadují přihlášení?
Ano, ale musíš v HTTP Request uzlu nastavit cookies nebo session tokeny, což může být na údržbu složité. Režim Browser Scraping v Thunderbitu 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 scraper v n8n náhle přestane vracet data?
Nejprve zkontroluj záložku Executions v n8n, zda nejsou chyby. Nejčastější příčinou je změna layoutu webu, která rozbila CSS selektory — workflow se „povede“, ale vrací prázdná pole. Ověř selektory v Chrome přes Inspect, aktualizuj je ve workflow (nebo ve svém externím sheetu se selektory) a otestuj znovu. Pokud narážíš na anti-bot blokace, postupuj podle rozhodovacího stromu v tomto průvodci. Pro dlouhodobou spolehlivost zvaž AI scraper jako Thunderbit, který se změnám layoutu automaticky přizpůsobuje.
Další čtení