1 Úvod do webscrapingu
Díky digitalizaci napříč světem a odvětvími je k dispozici prakticky neomezený zdroj dat ve formě webových stránek a webových aplikací. Informace obsažené na těchto stránkách dokážou poskytnout firmám podklady pro lepší rozhodování tím i výhodu na trhu. Tato data ale nemusí být použita jen komerčně, ale jsou také často využívána v akademickém výzkumu. Získávání těchto dat je tedy kritickým procesem, který může zajistit úspěch projektu. Problémem je ovšem obrovské množství a typ těchto dat, jde o miliardy gigabytů dat, které nejsou strukturované, nejsou na jednom místě a neustále přibývají nová. Naštěstí, pro uživatele dat se jako řešení nabízí možnost tato data sbírat automaticky, namísto manuálního prohledávání mohou použít techniky webscrapingu. (Krotov, et al., 2020)
Webscraping je technika, která je využívána při dolování znalostí a informací z webu. Tato data jsou následně ukládaná ve strukturované nebo nestrukturované podobě do databáze pro následnou analýzu. Při automatizovaném dolování informací jsou používané scrapery či web crawlery, které přistupují na webové stránky stejně, jako by to dělal běžný uživatel neboli přes uživatelské rozhraní. Scraper následně prohledává obsah daného webu a ukládá relevantní informace. Webscraping může být zásadní zdroj informací a poskytovat informační výhodu při rozhodování poskytnutím velké báze informací, která není běžně dostupná. Problémem může být právní regulace tohoto stahování dat, ale i etický aspekt. (Zhao, 2017)
2 Použití v tématice Competitive intelligence
Cílem prakticky každé firmy je zisk a pro zajištění zisku je potřeba zajistit konkurenceschopnost vůči ostatním firmám na trhu. Některé firmy proto sbírají relevantní informace ohledně konkurenčního prostředí za účelem podpory rozhodování a informovanosti. Samotný proces sbírání, filtrování a zpracování dat k dalšímu využití je často přehlížený a firmy mnohdy nevykládají dostatečné úsilí na zajištění kvalitních a relevantních dat. Tato data by jim přitom mohla poskytnout značný náskok nad konkurencí. Obecně je proces sbírání dat považován za zdlouhavý, a ne vždy vede k užitečným závěrům. (Bulley et al., 2014)
Jako řešení se může ukázat webscraping, který díky prohledávání veřejného webu dokáže získat potřebná data ohledně tržního prostředí. Příklady dat, které dokáže sesbírat jsou následující:
- informace o cenové politice konkurence
- Informace ohledně změn cen konkurence
- katalogy existujících produktů a jejich hodnocení.
- Informace týkající se veřejných právních dokumentů, jako jsou veřejné listiny
- Lokality, ve kterých se konkurence pohybuje
Firma se na základě těchto dat může efektivně rozhodovat a dokáže pružně reagovat na nabídky konkurence z hlediska ceny či kvality. (Zhao, 2017)
3 Implementace
Data, která jsou volně dostupná na internetu se dají označit jako Big Data, jejich objem je extrémně velký, jsou různorodá z hlediska sktruktury, jejich věrohodnost je proměnlivá a jsou dostupná prakticky okamžitě. Proto je webscraping poměrně rozmanitá a náročná činnost, která vyžaduje expertízu v oblasti technologií a zpracování textu. Implementace závisí na požadavcích, která má proces splnit, může jít o vyhledávání specifických informací na pár webech, ale také o stahování tisíců textových dokumentů. Proto je nutné správně dimenzovat technologické řešení podle daného zadání. (Khder, 2021)
Proces webscrapingu se dá rozdělit do čtyř částí:
- Crawler – načtení dokumentů
- Parsing a extrakce
- Formátování
- Ukládání
V závislosti na implementaci je možné, že zde budou kroky navíc, ale pro přehled stačí tyto čtyři. (Ho, 2020)
3.1 Crawler
První úkol, který je potřeba splnit, je posílání požadavků na specifikovanou webovou adresu za pomoci HTTP dotazu. HTTP je Hyper Text Transfer Protocol, který používají prohlížeče na získání obsahu ze serveru, který pak zobrazují uživateli. Některé scrapery používají http dotazy napřímo a některé používají prohlížeče jako prostředníka, jelikož dokážou pracovat s dynamickým obsahem. (Ho, 2020)
3.2 Parsing a extrakce
Po získání HTML obsahu je potřeba vybrat části obsahu, který je pro potřeby úlohy relevantní. Data jsou často uložena ve stromové struktuře a je potřeba je převést na požadovanou strukturu. K tomu se používají regulární výrazy, specializované knihovny pro zpracování HTML či XPath dotazy. (Ho, 2020)
3.3 Formátování
Tento krok úzce souvisí s krokem extrakce a jsou v něm data transformována do podoby, která je snadno čitelná pro člověka. Často používané formáty jsou JSON, CSV nebo XML. (Krotov a Silva, 2018)
3.4 Ukládání
Při ukládání dat je potřeba vybrat správný typ úložiště na základě datového formátu. Může jít o excely, pokud je dat opravdu málo, či o relační či jiné typy databází.
Z hlediska technologií má uživatel poměrně širokou paletu, ze které může volit. Pokud by šel cestou vlastního řešení, tak se nabízejí dostupné knihovny v Pythonu a R. Jde například o knihovny typu beautiful soup pro Python či rvest pro R. (Krotov a Silva, 2018)
Na trhu jsou ale i již hotová řešení, často v podobě webových aplikací. Jde o služby typu Import.io, což je cloudová služba, která poskytuje mnoho nástrojů na scrapování, extrakci dat, a i jejich následné uložení. Poskytuje také možnosti jako je plánování scrapingu či vizualizace dat. Další příklady mohou být Dexi.io, Octaparse, ParseHub a další. (Krotov et. al, 2020)
4 Právní a etické problémy
Z obecného hlediska není webscraping nelegální, i samotný Google a jiné vyhledávače jsou na něm závislé. Využívají jej totiž pro generování obsahu, který je uživatelům zobrazován při vyhledávání. Před samotným procesem je potřeba vzít v úvahu některé formální aspekty. Například je nutné, aby scraper reagoval na složku Robots.txt, ve které je specifikováno, ke kterým částem webu má mít přístup. Další faktor, na který je potřeba si dát pozor jsou zákony týkající se ochrany dat. Může jít například o GDPR či o americký Privacy Act. (Ho, 2020)
4.1 USA
Ve Spojených státech amerických může potencionálně při webscrapingu dojít k porušení několika zákonů. Od nelegálního nabytí dat, nelegálního přístupu k počítači až po porušení obchodního tajemství. Problematika je ještě složitější kvůli tomu, že USA má mnoho států, které také mohou aplikovat vlastní právní úpravu. Například Kalifornie je známá pro své přísné zákony. (Krotov et. al, 2020)
4.1.1 Nelegální nabytí a použití dat
Ilegální či podvodné použití dat získaných z webscrapingu je zakázán několika zákony. Jde například o Computer Fraud and Abuse Act (CFAA) a zákony implementované na úrovni jednotlivých států. CFAA zakazuje úmyslný neoprávněný přístup k počítači nebo přístup, který překračuje autorizaci. Takovéto jednání může být považováno za trestný čin. Ve více než 60 případech se touto problematikou zabýval soud v kontextu dolování znalostí z webu. Soudy zatím nedospěly jednotného názoru, takže se každý případ musí posuzovat individuálně na základě specifik daného případu. (Krotov et. al, 2020)
4.1.2 Porušení smluvních podmínek
Majitelé často umisťují na web podmínky užívání, které specifikují, jak může být obsah na webu využíván. V právní oblasti se proto používá argument, že majitel stránky může zamezit webscrapingu tím, že ho výslovně zakáže v podmínkách užití. Názor odborníků je ale takový, že aby bylo možné vymáhat tyto smluvní podmínky, musí uživatel webu explicitně souhlasit s uvedenými podmínkami, například kliknutím na tlačítko. Znamená to tedy, že i výslovný zákaz nemusí chránit obsah webu před webscrapingem. Aby mohl Majitel vymáhat škodu po pachateli, tak by navíc musel dokázat, že webscrapingem došlo ke hmotné škodě, aby byla žaloba na porušení smlouvy relevantní. (Paggallo a Sciolla, 2020)
4.1.3 Porušení autorského práva
Dolování a následné využití dat, která podléhají autorskému právu může vést k žalobě za porušení autorských práv, zvlášť pokud jsou data využita k výdělečné činnosti. Autorský zákon ale nezamezuje samotnému scrapingu dat, záleží hlavně na následném využití těchto dat. Pokud spadá využití dat pod „fair use“, například pokud je tento materiál transformován či využit novým originálním způsobem, tak se nemusí jednat o porušení autorských práv. Tyto případy se posazují individuálně, jelikož má každý případ svá specifika. (Krotov et. al, 2020)
4.1.4 Poškození majetku
Během webscrapingu může být na cílovou webovou adresu vysláno velké množství požadavků na data. To může mít za následek dočasné přetížení serveru a tím i odepření služeb zákazníkům. Aby se ale mohl majitel stránek dožadovat náhrady, tak musí dokázat, že mu daná škoda vznikla, což není snadné. Množství požadavků by také muselo být ohromné. Tato problematika se proto často v soudních sporech webscrapingu neobjevuje. (Krotov et al., 2020)
4.2 EU
Evropská unie se skládá z mnoha států a každý z nich má specifickou legislativu, která by mohla legalitu webscrapingu ovlivňovat. Například je potřeba prozkoumat rozdíly v autorských právech daného státu, ve kterém chceme webscraping aplikovat.
Z pohledu legislativy evropské unie může být scrapováním dat porušeno nejčastěji GDPR. General Data Protection Regulation vytváří právní rámec v evropské unii, který má za cíl zajistit ochranu osobních dat. Ochranu dat označuje za základní právo a zakazuje zpracování osobních údajů, pokud není zpracováno na základě jednoho ze šesti zákonných důvodů. Zákonné důvody jsou například souhlas se zpracováním, veřejný zájem či právní povinnost. Správce dat musí také jasně dát najevo, jaká data zpracovává a jak a za jakým účelem tak koná. (Joshi, 2021)
To se ale týká hlavně přímého sbírání dat, u nepřímého sbírání dat, jako je webscraping se aplikuje směrnice 14 GDPR. Podle ní musí být subjekt, jehož data jsou zpracována, kontaktován ohledně zpracování dat buď do 1 měsíce od nabytí dat, během prvního kontaktu subjektu či při poskytnutí dat další osobě. Má to ale výjimku, kterou je, že poskytnutí informací ohledně zpracování dat není nutné, pokud by to bylo nemožné, či by bylo potřeba neadekvátního úsilí. Vzhledem k objemu dat, který se dá scrapingem získat, by se dala tato výjimka za specifických podmínek uplatnit. (Williamson a Lambertus, 2023)
4.3 Použití webscrapingu při trénování AI
S velice rychlým rozvojem v oblasti generativních jazykových modelů, který v posledních letech zažíváme je nutné se zaměřit i na zdroj dat, který se pro trénování používá. Jeden z důležitých zdrojů dat pro trénování je právě webscraping. Při trénování jazykových modelů jsou použity miliony dokumentů, na kterých se model učí jazykové vzory a poznatky. Vyvstává ale otázka, zda se výstup těchto modelů dá brát jako nový poznatek z hlediska autorského práva. Touto otázkou se nyní zabývají soudy, státní orgány i Evropská unie. (Gallese, 2024)
5 Etika webscrapingu
Scraping má velké množství aplikací a je často používán jednotlivci, kteří slouží veřejnému zájmu. Scrapování je užitečné i pro majitele webů a dat, jelikož na základě jejich zpracování získávají publikum přes vyhledávače. Novináři používají scrapery pro sběr a analýzu velkého množství informací, aby mohli svému publiku přinést relevantní informace. I přes to se dá tento způsob získávání informací zneužít, může jít o emailový spam až po vydírání. (Paggallo a Sciolla, 2020)
Přehled vybraných etických problémů:
5.1 Reprezentativnost vzorku
Scrapuje-li výzkumník pouze jeden informační kanál, například specifické mediální publikace, můžou být výsledky jeho výzkumu nereprezentativní kvůli specifickému publiku, které předmětem studie. Následný výzkum může dělat chybné závěry o celé skupině lidí a tím je poškozovat. Je proto potřeba brát v úvahu nejenom výsledky z dat, ale i jejich původ a případný bias těchto dat. Příklad může být otázka, zda z chování osob na Facebooku můžeme dělat závěry o jejich běžném životě. (Rao, 2021)
5.2 Nedostatečná transparentnost
Mnozí výzkumníci nejdou do detailu, jak získali data, které jsou předmětem studie. Je tedy možné, že získání těchto dat porušilo podmínky užívání. Toto chování může být přehlíženo, zvláště když nejsou stanovena jasná pravidla, podle kterých by se mělo postupovat. (Rao, 2021)
5.3 Zvýšení latence služeb
Jak již bylo zmíněno, dolování dat vyžaduje vyslání mnoho požadavků na cílový server, což může standardním uživatelům způsobit větší latenci. Toto zahlcení serveru by se také v opravdu velkém množství dalo označit jako DDoS útok. Je potřeba, aby scrapingové projekty byly šetrné k internetové službě a neovlivnili její běžný chod. (Rao, 2021)
5.4 Poškození postavení na trhu
Pokud je služba postavena na poskytování informací a její podnikání stojí na reklamě, tak vyscrapováním jejího obsahu a použití toho obsahu pro vlastní podnikání, může dojít k tomu, že zákazník odejde od původního poskytovatele informací. (Krotov et. al, 2020)
5.5 Zamezení scrapingu
Z druhé stránky ale může být neetické i zamezení scrapingu jako takového. Internet má být otevřený a zamezování může omezovat svobodný přístup k informacím. (Densmore, 2017)
6 Framework pro webscraping
Johnson a Silva na základě jejich práce sestavili sadu otázek, které dokáží napovědět, zda je scrapingový projekt legální a etický. Podobnou sadu vytvořil i Moaiad Ahmad Khder. Vybrané otázky jsou následující:
- Je k získání dat dostupné API?
- Je scraping explicitně zakázaný ve smluvních podmínkách webové stránky?
- Podléhá obsah webu autorskému právu?
- Může scraping poškodit webovou stránku či server, na kterém je hostována?
- Obsahuje složka robots.txt instrukce k tomu co může být a nemůže být předmětem scrapingu?
- Mohou vytěžená data a způsob jejich použití porušovat ochranu osobních údajů?
- Může projekt, který vyžaduje těžení dat ohrozit kompetitivnost těžených stránek?
Pokud si dokážeme na tyto otázky odpovědět tak, že splňují požadavky, tak se snižuje pravděpodobnost, že projekt bude podléhat právnímu stíhání či etickým problémům. (Khder, 2021)
Z druhé strany této problematiky pohlíží James Densmore, který vytvořil principy pro majitele stránek. Vybrané body jsou následující:
- Budu tolerovat scrapování dat, pokud moc nezatěžují server
- Dříve, než zablokuji scrapování dat, tak se pokusím oslovit majitele scraperu
- Chápu, že web má být otevřený a scrapování k němu patří
- Je-li to možné, tak vytvořím veřejné API
7 Známé soudní případy
Meta x Bright Data
Bright Data z platforem Facebook a Instagram vyscrapovala velké množství dat, které následně prodala. Celkem šlo o 615 milionů záznamů o uživatelích. Obsažené informace byly jména, země a informace obsažené na profilech. Meta tuto společnost soudila za to, že údajně použila při scrapingu uživatelský účet, což je ve smluvních podmínkách zakázáno. Metě se toto tvrzení ale nepovedlo dokázat a žalobu zrušila. (Perez, 2024)
eBay vs Bidder’s Edge
Jedna z hlavních funkcí eBay je aukce zboží. Bidder’s Edge je firma, která scrapovala data ohledně cen nabízeného zboží a používala je ve formě srovnávače cen. To umožnovalo jejím zákazníkům snadno porovnávat ceny na stránkách jako je eBay ve srovnání s jinými službami. Množství HTTP dotazů, které bylo na server eBay vysláno bylo přibližně 100 000 denně, což bylo zhruba 1,53 % ze všech požadavků. eBay žaloval úspěšně Bidder’s Edge na základě doktríny narušení movité věci. Na základě toto byly aktivity Bidder’s Edge přerušeny. (Samson, 2024)
Facebook vs Power Ventures
Power Ventures byla služba, která spojovala jendotlivé sociální sítě v jednu platformu. Uživatel jí poskytl přihlašovací údaje k sociálním sítím a Power Ventures integrovala jejich účet na platformu. Podle Facebooku během přihlašování udělala Power Ventures kopii jejich stránky a tím přímo i nepřímo porušilo autorská práva. Facebook proti Power Ventures podal žalobu za porušení autorského práva, DMCA, CFAA, ochranné známky a další. Soud uznal žalobu podle CFAA a podle CAN-SPAM Act. CFAA se zabývá využitím neoprávněné autorizace a CAN-SPAM Act slouží proti rozesílání komerčních emailů, které mají zavádějící obsah. Power Venture podle rozhodnutí soudu mělo zaplatit 3 miliony dolarů. (Shrapiro et al., 2017)
8 Závěr
Webscraping je technika, která je široce využívaná pro získávání informací z webu. Uplatnění má v komerční, ale i akademické sféře. V kontextu Competitive intelligence je webscraping používán pro získávání informací o konkurenci a externím prostředím. Tyto informace můžou být následně využívány pro podporu rozhodování. Technologická implementace je závislá na specifické úloze, jelikož můžou být velké rozdíly ve struktuře dat a jejich objemu.
Z hlediska práva není webscraping ilegální, ale často se pohybuje v „šedé zóně“. Před implementací je potřeba se zamyslet, zda projekt neporušuje některý ze zákonů, například GDPR, autorské právo, ochrannou známku či poškození majetku. Důležitá je i etická stránka projektu, aby projekt neškodil okolí. Může proto být vhodné při posuzování projektu následovat framework pro webscraping, například ten, co byl v této práci zmíněn. Ten stanovuje otázky, které je potřeba zodpovědět a dá se podle nich posoudit legálnost a etičnost projektu.
9 Zdroje
Krotov, V., Johnson, L., & Silva, L. (2020). Tutorial: Legality and Ethics of Web Scraping. Communications of the Association for Information Systems, 47, pp-pp. https://doi.org/10.17705/1CAIS.04724
ZHAO, Bo. Web Scraping. Online. 2017, s. 3. Dostupné z: https://doi.org/10.1007/978-3-319-32001-4_483-1. [cit. 2024-05-30].
Competitive Intelligence Information: A Key Business Success Factor. Online. 2014, roč. 2014, č. 2. 2014. ISSN 1925-4733. Dostupné z: https://www.academia.edu/67642377/Competitive_Intelligence_Information_A_Key_Business_Success_Factor?auto=download. [cit. 2024-05-31].
AHMAD KHDER, Moaiad. Web Scraping or Web Crawling: State of Art, Techniques, Approaches and Application. Online. International Journal of Advances in Soft Computing. Roč. 2021, s. 24. Dostupné z: https://doi.org/10.15849/IJASCA.211128.11. [cit. 2024-05-31].
KROTOV, Vlad a SILVA, Leiser. Legality and Ethics of Web Scraping. Online. 2018. Dostupné z: https://www.researchgate.net/publication/324907302_Legality_and_Ethics_of_Web_Scraping. [cit. 2024-05-31].
HO, Hoang Phuong Thao. LEVERAGING WEB SCRAPING FOR COLLECTING COMPETITIVE MARKET DATA. Online, Bachelor’s thesis. LAB UNIVERSITY OF APPLIED SCIENCES LTD, 2020. Dostupné z: https://www.theseus.fi/bitstream/handle/10024/352844/Ho_Thao.pdf?sequence=2&isAllowed=y. [cit. 2024-05-31].
PAGALLO, Ugo a SCILLA, Jacopo Ciani. Anatomy of web data scraping: ethics, standards, and the troubles of the law. Online. Roč. 2024, s. 12. Dostupné z: https://deliverypdf.ssrn.com/delivery.php?ID=156082089114108071084095083118112102002054084092007058124026030088064094014089125096027019013002018046016025092064088076081117059084071008033070124011067080028004094019081083091002081013116096118100115016023083077119011117005067088082027083080101006074&EXT=pdf&INDEX=TRUE. [cit. 2024-05-31].
JOSHI, Asmit. Legality of Web Scraping — An Overview. Online. Medium. 2021. Dostupné z: https://medium.com/grepsr-blog/legality-of-web-scraping-an-overview-3cf415885e16. [cit. 2024-05-31].
WILLIAMSON, Neil a LAMBERTUS, Colin. EU: Data scraping – navigating the challenges old and new. Online. Data Guidance. 2023. Dostupné z: https://www.dataguidance.com/opinion/eu-data-scraping-–-navigating-challenges-old-and-new. [cit. 2024-05-31].
DENSMORE, James. Ethics in Web Scraping. Online. Medium. 2017. Dostupné z: https://towardsdatascience.com/ethics-in-web-scraping-b96b18136f01. [cit. 2024-05-31].
GALLESE, Chiara. Web scraping and Generative Models training in the Directive 790/19. Online. Roč. 2024, s. 16. Dostupné z: https://doi.org/10.6092/issn.1825-1927/18871. [cit. 2024-05-31].ko
SHAPIRO, Ilya; BURRUS, Trevor a WATKINS, Devin. Power Ventures v. Facebook. Online. Cato institute. 2017. Dostupné z: https://www.cato.org/legal-briefs/power-ventures-v-facebook. [cit. 2024-05-31].
PEREZ, Sarah. Meta drops lawsuit against web-scraping firm Bright Data that sold millions of Instagram records. Online. Cato institute. 2024. Dostupné z: https://techcrunch.com/2024/02/26/meta-drops-lawsuit-against-web-scraping-firm-bright-data-that-sold-millions-of-instagram-records/. [cit. 2024-05-31].
SAMSON, Martin. Ebay Inc. v. Bidder’s Edge, Inc. Online. Internet Library of Law and Court Decisions. 2000. Dostupné z: http://www.internetlibrary.com/cases/lib_case249.cfm. [cit. 2024-05-31].