Web scraping a jeho hlavní oblasti použití
Co je web scraping a proč je potřeba. Jak funguje a jak se liší od parsingu. Jak legální je extrahovat data z webu a jak je používat. Které služby je nejlepší použít pro bezpečný web scraping: seznam osvědčených nástrojů.
Web scraping je technologie, která může být užitečná pro SEO propagaci webových stránek.
Vysvětlíme, co je web scraping, jak funguje, jak ho používat k získávání užitečných dat, a také jaké nástroje pro scraping použít a jak se před jeho nelegální a škodlivou formou chránit.
Co je webový scraping
Scraping webu (web scraping, doslova „scraping, škrábání webu“) je automatizovaný proces extrakce dat z webových stránek.
Když na webových stránkách najdeme nějaké informace a zkopírujeme je do našeho dokumentu, v podstatě provádíme scraping, ale ve velmi malém objemu.
Web scraping zahrnuje automatický sběr velkých objemů dat pomocí botů. Bot je jakýkoli program, který shromažďuje data z webových stránek. Může se jednat o hotový program, který je třeba nainstalovat do počítače, webovou aplikaci nebo službu napsanou uživatelem.
Scraper boti přijímají HTML kód webových stránek, které je zajímají, analyzují jej podle určitých pravidel stanovených pro scraping a tím převádějí veškeré potřebné informace z webu do čitelného formátu.

Jak se scraping liší od analýzy dat
Scraping a parsování se snadno zaměňují, protože tyto pojmy se často používají zaměnitelně. Zvládnete to, pokud se naučíte doslovný překlad těchto slov. škrábat и analyzovat.
Škrábání (od slovesa škrábat – „škrábat, sbírat“) — automatizovaný sběr dat, jak jsme již psali.
Analýza (od slovesa parsovat – „analyzovat“) — proces, kterým se ze stažených dat extrahují potřebné informace a převádějí se do čitelného formátu, který potřebujeme. Jednoduše řečeno, druhá fáze webového scrapingu.
V tomto článku se nebudeme podrobně zabývat terminologií, ale místo toho popíšeme celý proces a nazveme ho „web scraping“.
Proč potřebujete webový scraping?
Škrábání má mnoho využití:
- Sledování cen zboží v internetových obchodech
Shromažďováním informací o cenách na různých platformách (webových stránkách, tržištích) můžete ceny včas upravovat a získat náskok před konkurencí.
- Extrakce popisů zboží a služeb
To vám pomůže vylepšit popisy produktů a služeb na základě textů konkurence.
- Sledování novinek a oznámení
Nástroj pro sledování zajímavých témat a tvorbu relevantního obsahu.
Pomocí scrapingu můžete shromažďovat lajky, reposty, komentáře do jedné tabulky a vyhodnocovat efektivitu svého obsahu nebo dokonce provádět marketingový průzkum.
Pravděpodobně jste na internetu viděli podobné studie:


Vyžadují poměrně dost dat – nelze je shromažďovat ručně. A i zde bude potřeba web scraping.
- Extrahování kontaktních informací
Pomocí scrapingu můžete získat e-mailové adresy, telefonní čísla a další kontaktní informace a umístit je do jedné tabulky – bude to užitečné pro retargeting.
- Sledování reputace značky
Scraping se také používá ke sledování zmínek o značce/produktu, aby společnost mohla včas reagovat na změny v tónu zmínek.
Jaké typy webového scrapingu existují?
Legalita či nelegalita konkrétní formy sběru dat závisí na jurisdikci: co je povoleno v jedné zemi, může být zakázáno v jiné. O scrapingu hovoříme z pohledu, že se my a naši čtenáři nacházíme v Rusku.
Obvykle se škrábání dělí na dobré a špatné.
Legální (dobré)
- Práce vyhledávacích botů. Procházejí web, analyzují jeho obsah a indexují ho.
Tento typ scrapingu je nezbytný pro to, aby se web objevil ve výsledcích vyhledávání. Bez něj uživatelé náš web neuvidí.

Ve druhém modulu našeho bezplatného kurzu SEO se podrobně zabýváme roboty vyhledávačů, procesy skenování, filtrování a indexování.
- Sběr dat z agregátorů/webů pro porovnávání cen. Používají boty k extrakci cen a popisů produktů a vytvářejí tak srovnání webových stránek podobných prodejců.
Výsledkem je, že můžeme vidět informace z různých webů v jednom adresáři:

- Marketingový (a nejen) výzkum. K vytváření takových studií firmy používají boty, kteří extrahují zprávy ze sociálních sítí a fór a následně je sestavují do jednoho dokumentu.
Příklad takové studie jsme uvedli výše, v části „Proč je web scraping potřebný“.
Nelegální (špatné)
Parsování a scraping nejsou v Rusku formálně zakázány. Některé typy scrapingu jsou však považovány za špatné a weby se je snaží zastavit:
Webové stránky se aktivně chrání před sběrem cenových údajů: konkurenti se často vzájemně „škrábou“, snižují ceny a tím způsobují cenový dumping.
Nejčastěji se to děje v odvětvích, kde lze produkty snadno a rychle porovnat a cena hraje při nákupu rozhodující roli. Tedy nejde o levné zboží denní potřeby, ale o to, co člověk považuje za velký nákup: letenky a vlakové jízdenky, cestovní balíčky, elektroniku a domácí spotřebiče.
Proti této formě scrapingu je třeba aktivně chránit, protože obrovské množství ručně vytvořeného obsahu lze z vašeho webu snadno stáhnout a zkopírovat do jiného zdroje.
❗️Ukazuje se, že boti, kteří shromažďují data z webových stránek, se podmíněně dělí na „špatné“ a „dobré“. Existuje několik znaků, podle kterých je poznáte:
- „Dobří“ boti jednají podle pokynů v souboru robots.txt. V tomto souboru správce webu určuje, jak procházet konkrétní stránky webu – například které indexovat a které ne. „Špatní“ boti soubor robots.txt ignorují a procházejí všechny stránky webu.
- „Dobrý“ bot obvykle označuje organizaci, která ho „poslala“ k prozkoumání stránek. Záznam (referer) označující, ke které organizaci bot patří, je obvykle zapsán v HTTP hlavičce bota. „Špatní“ boti napodobují přirozený provoz a nedávají žádnou indikaci, že daná osoba web navštívila.
Stránky jsou chráněny před „zlými“ boty pomocí různých technologií: rozpoznávání reputace IP adres, zavedení progresivních úloh, ověřování HTTP hlaviček, analýza chování návštěvníků. Více o tom v další části.
Je důležité, abychom o tom věděli nejen proto, abychom chránili náš web, ale také abychom se sami nestali „zlými“ botmi. Informace o tom, jak bezpečně extrahovat data a vyhnout se blokování, naleznete v části „Jak bezpečně extrahovat data ze webu“.
Jak se chránit před scrapingem webu
Existuje několik způsobů. Nejčastěji se používají společně:
- Analyzujte chování návštěvníků webových stránek
Boti se obvykle liší od skutečných návštěvníků tím, že v krátkém časovém období zadávají mnoho požadavků a také prohlížejí stránky v nelogickém pořadí – na rozdíl od lidí.
Pokud jsou pokusy o přístup k webu identifikovány jako patřící botu, jsou zablokovány.
IP adresa je jedinečná adresa konkrétního počítače (například telefonní číslo). Webové stránky ukládají informace o IP adresách, ze kterých k nim byl přístup proveden.
IP adresy, které byly v minulosti použity k podezřelé aktivitě, jsou velmi pečlivě sledovány a jejich přístup na web může být zablokován.
- Zkontrolujte HTTP hlavičky
Pomůže databáze HTTP hlaviček z prohlížečů, které na web přistupovaly a byly identifikovány jako škodlivé: všechny následné požadavky jsou kontrolovány prostřednictvím této databáze.
- Zadejte postupné úkoly k dokončení
Takové úkoly jsou nabízeny uživatelům, kteří se přihlašují z podezřelé IP adresy.
Nejjednodušším příkladem je CAPTCHA (captcha – „najdi všechny semafory na obrázku“ a další). Boti ji nemohou projít, protože k dokončení takového úkolu je potřeba propojit logiku nebo provést smysluplné akce, což dokáže pouze člověk.
Díky progresivním úkolům mohou skuteční návštěvníci web používat neomezeně, ale boti ne. Scraping se však stává stále sofistikovanějším a je stále snazší obejít jednoduché progresivní úkoly, které se zase neustále stávají složitějšími.
Jak bezpečně extrahovat data z webových stránek
Ukazuje se, že když získáváme data z webu někoho jiného, musíme obejít ochrany, o kterých jsme psali výše.
Zde je návod, jak to udělat (můžete použít jednu metodu, kombinovat několik nebo použít všechny najednou):
- Nastavte správného uživatelského agenta
Při návštěvě webu odešle klientská aplikace – prohlížeč – na server informace o sobě, které začínají řetězcem User-agent:’. Obsahují informace o aplikaci, její verzi, operačním systému počítače a jazyce.
V tomto řádku je nutné správně zadat všechny požadované informace, protože požadavky z neznámých prohlížečů jsou často blokovány.
O tom jsme psali výše. V HTTP hlavičce požadavku uveďte, ze které stránky jste přišli, abyste byli vpuštěni dál. Vypadá to takto:
- Připojte program pro řešení progresivních úloh (CAPTCHA)
Například 2Captcha. Služba je placená – od 44 rublů za 1 000 vyřešených úkolů, připojených přes API.
- Nastavení náhodných intervalů mezi požadavky na web
Uživatelé nenavštěvují web tisíckrát za minutu ani na něm nesedí 24 hodin denně. Pokud jste si sami napsali webového scraping bota, budete muset specifikovat, jak často by měl web navštěvovat – ideálně stejně často jako běžný člověk. Scrapingové aplikace, o kterých budeme hovořit níže, to dělají ve výchozím nastavení.
Proxy servery pomáhají simulovat požadavky na web přicházející z různých IP adres, nikoli ze stejné. Speciální služby pro scraping automaticky zajišťují rotaci IP adres.
Nástroje pro scraping webu
Programátoři často píší specifické boty se specifickými funkcemi pro konkrétní úkol, ale existují i jednodušší, specializované nástroje pro web scraping. O těch vám povíme.
Většina služeb funguje stejným způsobem: musíte se zaregistrovat a potvrdit svou e-mailovou adresu a poté můžete začít scrapingovat.
Samotný scraping je snadno ovladatelný: stačí zadat adresu webové stránky a vybrat prvky, které je třeba shromáždit. Aplikace udělá vše za vás a umožní vám zobrazit výsledky v čitelném formátu. Celý proces probíhá online.
Některé služby nabízejí stažení svého API (programu) pro scraping. Na webových stránkách aplikace je zpravidla vždy návod k instalaci a použití.
Některé služby nabízejí personalizovaná řešení – veškerou práci udělají za vás. Chcete-li to provést, musíte kontaktovat vedení konkrétní společnosti.
Bezplatné rozšíření pro Chrome. Můžete shromažďovat různé typy dat a exportovat je do formátu CSV, XLS nebo JSON.
Služba s bezplatným tarifem pro malé projekty; pro složitější projekty začíná na 75 dolarech měsíčně. Umožňuje stahovat data a ukládat je do cloudu a funguje na Macu i Windows.
Nabízí rotaci IP adres a předává CAPTCHA. K dispozici je demo verze – je nutné si ji vyžádat na webových stránkách.
Desktopový program. Vyberte data, která chcete shromažďovat, a počkejte. Data lze stáhnout ve formátech JSON, Excel a API.
200 stránek dat můžete získat zdarma. Placené tarify začínají na 189 dolarech měsíčně.
Služba umožňuje sbírat několik typů dat současně, formovat je do úkolů a spouštět je jeden po druhém. Můžete si vytvořit šablonu pro rychlý sběr podobných dat. K dispozici je 30denní bezplatná zkušební doba.
Služba pro scraping webových stránek a sociálních médií. Pro každý typ dat – například nezpracovaný HTML, informace z realitních nebo obchodních webů – jsou k dispozici různá API, která jsou specializována pro určitý sektor.
Například rozhraní Raw HTML Scraping API extrahuje HTML kód stránek. Rozhraní Retail API umožňuje prohlížet stránky produktů a extrahovat ceny, popisy atd. Rozhraní Real Estate API umožňuje prohlížet oblasti, lokality a ceny.
Úkoly v aplikaci se platí kredity – v bezplatné verzi budete mít 100 kreditů. Po jejich vyčerpání budete muset platit od 39 eur měsíčně za 100 000 kreditů.
Stejně jako předchozí služba nabízí API pro stahování. 1 000 požadavků je zdarma, placené tarify začínají na 20 dolarech měsíčně.
Zde se řešení vytvářejí pro každou konkrétní firmu. Cena – od 40 dolarů měsíčně za jednu stránku.
Stejně jako Datahut vám vyberou personalizované řešení. Například Datamam bude stát za plnohodnotný sběr dat více než 5 000 dolarů.
Závěry
- Web scraping je automatizovaný sběr dat z webových stránek. Parsování je součástí web scrapingu, což je proces převodu shromážděných dat do čitelné podoby.
- Scraping je potřeba k analýze cen konkurence a efektivity vašeho obsahu, sledování vaší reputace na sociálních sítích, úpravě popisů produktů a služeb a hledání nápadů na efektivní obsah.
- Scraping může být dobrý, například při práci robotů vyhledávačů, a špatný, například když se sběr dat používá ke krádeži obsahu nebo k cenovému dumpingu.
- Pro ochranu před scrapingem dat je nutné analyzovat chování uživatelů, kontrolovat IP adresy, hlavičky HTTP požadavků a nastavovat CAPTCHA.
- Abyste obešli ochranu webových stránek, musíte nastavit správného uživatelského agenta, přidat referer do hlavičky požadavku, nastavit intervaly mezi požadavky na web, použít proxy ke změně IP adresy a připojit program CAPTCHA.
- K obejití ochrany se používají speciální služby. Může se jednat o webovou aplikaci nebo desktopový program, existují i firmy, které se zabývají scrapingem na zakázku.
Anotace: Článek pojednává o web scrapingu, co to je a jaké úkoly lze pomocí této technologie řešit. Je provedena klasifikace typů web scraperů a jsou zmíněny nástroje, pomocí kterých lze implementovat logiku web scrapingu v programech. Jsou dotčeny etické a právní aspekty používání web scrapingu a je prezentován případ nelegálního použití web scrapingu. Jsou zvažovány hlavní oblasti použití web scrapingu.
Klíčová slova: webový scraping, internet, monitorování, rozsah, nástroj.
Web scraping je technologie pro automatický sběr dat z internetu, obvykle s využitím specializovaných programů nebo algoritmů, které extrahují informace ze stránek webových zdrojů, analyzují je a převádějí informace do požadovaného formátu. Ačkoli je možné shromažďovat informace z webových stránek ručně, ve většině případů se používají automatizované nástroje.
Web scraping se stal důležitým nástrojem pro automatizovaný sběr informací na internetu [2]. S pomocí této technologie se řeší následující úkoly:
- Vyhledejte požadované informace;
- Kopírování, agregace dat z internetu;
- Sledování aktualizací informací na webových stránkách.
Pojďme se podívat na několik typů webových scraperů:
- Vlastní webové scraperyStejně jako si kdokoli může vytvořit webovou stránku, tak si kdokoli může vytvořit i vlastní web scraper. Nástroje dostupné pro vytvoření vlastního web scraperu však stále vyžadují určité znalosti programování. Množství potřebných znalostí se zvyšuje s rozšiřující se funkcionalitou scraperu [4, s. 311].
- Rozšíření prohlížečeWebové scrapery ve formě rozšíření prohlížeče mají výhodu v tom, že se snáze spouštějí a integrují přímo do prohlížeče. Taková rozšíření jsou však obvykle omezena pouze na prohlížeč. To znamená, že nelze implementovat žádné další funkce, které by měly být implementovány mimo prohlížeč [4, s. 311].
- S uživatelským rozhranímUživatelské rozhraní různých webových scraperů se může značně lišit. Například některé nástroje pro webový scraping fungují s minimálním uživatelským rozhraním a příkazovým řádkem. Jiné naopak mají plnohodnotné uživatelské rozhraní. S takovými webovými scrapery se obvykle snáze pracuje lidem s omezenými technickými znalostmi [4, s. 311].
- Cloudové webové scraperyPracují na externím serveru, který obvykle poskytuje společnost, která scraper vyvinula. To znamená, že během provozu scraperu a sběru dat nejsou využívány prostředky vašeho počítače [4, s. 311]. Přístup k takovým scraperům zpravidla není zdarma.
- Místní webové scraperyPracují na počítači uživatele a využívají jeho zdroje a internetové připojení. To znamená, že pokud webový scraper silně zatěžuje procesor nebo RAM, může počítač během procesu scrapingu pracovat poměrně pomalu [4, s. 311]. Vlastní webové scrapery se zpravidla spouští lokálně.
Existuje mnoho nástrojů pro webový scraping, jejichž výběr závisí na programovacím jazyce, ve kterém bude program pro scraping napsán. Mezi nejoblíbenější nástroje patří: BeautifulSoup (Python), Scrapy (Python), Selenium (Python, Java, JavaScript, C Sharp, Ruby), Cheerio (JavaScript), Playwright (JavaScript).
Při používání webového scrapingu je způsob shromažďování dat nanejvýš důležitý pro zachování integrity a důvěryhodnosti dat. Jinými slovy je důležité provádět scraping eticky. Etický scraping znamená respektovat práva a zásady vlastníků webových stránek a zodpovědně používat data. Etický scraping znamená získávání dat s výslovným souhlasem webových stránek, dodržování podmínek služby a nečinnost ničeho, co by mohlo poškodit funkčnost webových stránek nebo narušit soukromí uživatelů [3].
Existují známé případy nelegálního používání webového scrapingu. Nejznámějším případem v Rusku je případ VKontakte proti Double Data. Double Data shromažďovala a indexovala informace zveřejněné na stránkách uživatelů sociálních sítí, včetně jejich osobních údajů. Tato data byla použita k analýze úvěruschopnosti uživatelů a prodána bankám. Spor o legalitu používání veřejně dostupných informací o uživatelích VKontakte a ochranu duševních (souvisejících) práv k databázi uživatelů sociálních sítí trval téměř šest let. V důsledku toho strany uzavřely dohodu o urovnání, podle níž se Double Data zavázala, že při své činnosti nebude porušovat práva VKontakte [5].
Podívejme se na hlavní oblasti aplikace webového scrapingu. Patří mezi ně: marketingový výzkum, sociologický výzkum, sběr dat pro strojové učení, analýza volných pracovních míst a analýza cenové dynamiky.
Využití webového scrapingu v marketingovém výzkumu umožňuje shromažďovat data o chování uživatelů, preferencích a tržních trendech, což firmám umožňuje činit informovanější rozhodnutí.
Web scraping je užitečný nástroj pro sociologický výzkum, například pro monitorování veřejného mínění. Může zahrnovat scraping zpravodajských webů, blogů a fór za účelem sledování názorů lidí na různá témata, včetně politiky, kultury nebo ekonomiky. Je dokonce možné shromažďovat informace o zájmech a zvyklostech uživatelů.
Web scraping umožňuje získávání rozsáhlých a rozmanitých datových sad pro trénování modelů strojového učení. Extrakcí relevantních dat z webu mohou výzkumníci a vývojáři vytvářet přesné modely, které rozšiřují možnosti algoritmů strojového učení v úlohách, jako je rozpoznávání obrázků, zpracování přirozeného jazyka a analýza sentimentu [3].
Pro osobní nebo výzkumné účely je možné pomocí webové analýzy vyhledávat a analyzovat rozložení volných pracovních míst v jakémkoli odvětví. Můžete analyzovat od platů a nejběžnějších požadavků na uchazeče až po počet odpovědí na konkrétní typ volného místa.
Oblíbenou oblastí využití web scrapingu je analýza cenové dynamiky jakéhokoli zboží na internetu. Tuto oblast lze částečně připsat marketingovému výzkumu. Podle výzkumné agentury Data Insight, která se specializuje na trh elektronického obchodování, dosáhl v roce 2021 celkový obrat největších ruských tržišť (jako jsou Wildberries, Ozon, Yandex.Market) 1,5 milionu rublů, což je o 111 % více než v předchozím roce. Podíl těchto služeb na objemu online objednávek se podle analytiků Data Insight zvýšil ze 49 % na 62 % [1]. Ceny zboží na tržištích nejsou statické a mění se rychleji než v běžných maloobchodních prodejnách. Vliv různých faktorů, jako je poptávka, nabídka, konkurence, sezónnost, může vést k významným změnám cen produktů. Pro spotřebitele může být důležité rychle sledovat a analyzovat cenovou dynamiku, aby se mohli o nákupu rozhodovat. Za tímto účelem již bylo vytvořeno velké množství produktů, založených na logice poskytování aktuálních cenových informací prostřednictvím web scrapingu.
- Analýza trhu. 4 nejdůležitější trendy roku 2022 // vc.ru. – URL: https://vc.ru/trade/355641-analiz-rynka-marketpleysov-top-4-trenda-2022-goda (datum přístupu: 07.05.2024).
- Web scraping // Wikipedie. URL: https://ru.wikipedia.org/wiki/Web scraping (datum přístupu: 06.05.2024).
- Příklady použití webového scrapingu: 7 hlavních možností // vc.ru. URL: https://vc.ru/u/2956919-netnut-proksi/1090633-primery-ispolzovaniya-veb-skreipinga-7-osnovnyh-variantov-netnut (datum přístupu: 06.05.2024).
- Čegljajev M.M. Web scraping // Věda, technologie a podnikání. Meziuniverzitní konference postgraduálních studentů, uchazečů o studium a mladých vědců. 2022. č. 4. S. 310-312.
- Jaké je nebezpečí webového scrapingu pro firmy i jednotlivce? // Sberbank. URL: http://www.sberbank.ru/ru/person/kibrary/vocabulary/veb-skraping (datum přístupu: 06.05.2024).