Seškrabování webu

Web scraping (nebo scraping, nebo scraping ← anglicky  web scraping ) je technologie pro získávání webových dat jejich extrakcí ze stránek webových zdrojů [1] . Web scraping může být prováděn ručně uživatelem počítače, nicméně tento termín obvykle označuje automatizované procesy implementované pomocí kódu, který vytváří požadavky GET na cílový web [2] .

Web scraping se používá k syntaktické transformaci webových stránek do použitelnějších forem [3] . Webové stránky jsou vytvářeny pomocí textových značkovacích jazyků ( HTML a XHTML ) a obsahují mnoho užitečných dat v kódu. Většina webových zdrojů je však určena pro koncové uživatele a nikoli pro automatizovanou použitelnost, proto byla vyvinuta technologie, která „čistí“ obsah webu.

Načítání a prohlížení stránky jsou nejdůležitější součásti technologie, jsou nedílnou součástí sběru dat [4] .

Historie

Historie web scrapingu začíná s příchodem internetu.

Metody

Web scraping je oblastí aktivního vývoje, která sdílí ambiciózní iniciativu v oblasti interakce mezi člověkem a počítačem, která vyžaduje průlom ve zpracování a porozumění textu online stránek umělou inteligencí. Moderní scrapingová řešení sahají od ad hoc, vyžadujících lidské úsilí, až po plně automatizované systémy, které jsou schopny převést celé webové stránky na strukturované informace v určitém formátu. V ideálním případě je web, jehož data je třeba získat, poskytuje prostřednictvím API s povoleným přístupem napříč doménami [13] . V případech, kdy tomu tak není, lze použít jiné metody škrábání.

"Kopírovat-vložit" ručně

Někdy ani ta nejlepší technologie škrábání webu nemůže nahradit manuální práci člověka, když uživatel zkopíruje a vloží text. V některých případech je to jediné možné řešení, například když si webové stránky nastaví blokování škrábání webu a kopírování textu.

Volání proxy služby

Pokud je stránka html nebo xml dokumentem a jsou na ni povoleny požadavky napříč doménami, pak můžete obsah dokumentu získat pomocí požadavku na jednu z proxy služeb dostupných na internetu [13] .

Odpovídající vzor textu

Jednoduchý, ale účinný způsob, jak získat informace z webových stránek. Může být založeno na příkazu UNIX grep (vyhledejte vzor [14] v jednom nebo více souborech ) nebo na porovnávání regulárních výrazů v programovacích jazycích (jako je Perl nebo Python ).

Analýza HTML

Mnoho webových stránek se skládá z velkého množství stránek, které jsou dynamicky generovány ze základního strukturovaného zdroje, databáze. Data stejné kategorie jsou obvykle zakódována do podobných stránek pomocí běžného skriptu nebo šablony. V data miningu se program, který detekuje takové vzory v konkrétním zdroji informací, extrahuje jeho obsah a převede jej do formy, nazývá obal. Předpokládá se, že analyzované stránky systému odpovídají společnému vzoru a že je lze snadno identifikovat pomocí společného schématu URL [15] . Některé jazyky pro polostrukturované dotazy na data, jako je XQuery a HTML, lze navíc použít k analýze stránek HTML a extrahování a transformaci obsahu stránky.

Objektový model dokumentu ( DOM)

DOM je program s API pro HTML a XML dokumenty [16] . Vložením plnohodnotného webového prohlížeče, jako je Internet Explorer nebo Mozilla Browser Control, mohou programy získávat dynamický obsah generovaný skripty na straně klienta. Seškrábání stromu DOM umožňuje přístup k informacím v jeho jednotlivých částech [17] .

Vertikální agregace dat

Existuje několik společností, které vyvinuly speciální online platformy, které vytvářejí a řídí mnoho robotů. Boti pracují bez přímého lidského zásahu a zároveň k jejich interakci s uživateli dochází bez komunikace s cílovou stránkou. Příprava zahrnuje vytvoření znalostní báze, díky které je možná práce botů. Boti agregují data o jednotlivých vlastnostech každého zdroje v souladu se zadanými podmínkami pro další srovnání a analýzu získaných hodnot vlastností [18] . Spolehlivost platformy se měří kvalitou přijímaných informací (obvykle počtem polí) a její škálovatelností (až stovky nebo tisíce stránek). Tato škálovatelnost se používá hlavně k převodu dat umístěných na konci dlouhého kódu webu, který konvenční agregátory považují za obtížné nebo příliš časově náročné na shromažďování obsahu.

Rozpoznávání sémantické anotace

Některé stránky mohou obsahovat metadata nebo sémantické označení a anotace, pomocí metody rozpoznávání sémantických anotací je lze z takových stránek extrahovat [19] .

Analyzátory stránek

Vývoj probíhá v oblasti umělé inteligence, kdy strojové vidění identifikuje data, interpretuje je, jako by to dělal člověk, a extrahuje je [20] .

Technologie Web scraping je vhodná pro převod dat webových stránek do pohodlnějších forem, nicméně existují i ​​metody parsování , které v případě otevřeného API dokážou problém vyřešit produktivněji [21] .

Aplikace

Web scraping se stal důležitým nástrojem pro automatizované shromažďování informací na internetu. Je součástí marketingových informačních systémů (MIS) pro tvorbu databází či databank, díky čemuž jsou potřebné informace poskytovány ve formě tabulkových reportů [22] . Technologie vyhledávačů, obsahové agregátory jsou také propojeny s web scraping programy [23] .

Web scraping je forma kopírování dat, při které se určité informace nezbytné pro získání shromažďují z internetu a shromažďují se, obvykle v centrální lokální databázi nebo tabulkovém procesoru, pro následnou extrakci nebo analýzu [24] . Web scraping software může přistupovat na World Wide Web přímo pomocí protokolu Hypertext Transfer Protocol a také prostřednictvím webového prohlížeče.

Výsledný obsah stránky lze analyzovat, přeformátovat, zkopírovat do tabulky a tak dále. Web scraping obvykle bere část dat ze stránky, aby je bylo možné použít pro jiný účel. Příkladem scrapingu může být vyhledávání na různých stránkách a kopírování jmen, telefonních čísel, emailových adres, URL určitého subjektu za účelem vytvoření databáze kontaktů.

Webové škrabky v zásadě řeší následující úkoly:

  • Vyhledejte potřebné informace;
  • Kopírování dat z internetu;
  • Sledování aktualizací na stránkách [25] .

Web scraping může být použit jako samostatný nástroj a slouží jako cílené vyhledávání informací, může se také stát součástí vývoje webu pro indexaci webu, web mining a data mining, online sledování, změny a porovnávání cen, pro pozorování konkurence a další sběr dat.

Programy a analogy

Web scraping programy nejsou určeny pro běžné uživatele, pracují s nimi programátoři, kteří ve většině případů píší kódy pro konkrétní úkoly. Na internetu můžete najít různé nástroje a nástroje pro web scraping: knihovny, aplikace, online služby, cloudové služby, služby typu DaaS, pluginy do prohlížečů. Jedním z populárních scrapingových nástrojů je Scrapy (jedná se o bezplatný a open source framework [26] ) . Nejoblíbenější komerční platformou je Import.IO [27] .

Existuje vývoj, například Nokogiri, který byl vytvořen speciálně pro programovací jazyk Ruby [21] , škrabky, které plní konkrétní úkol z celé řady možných: Outwit Hub [28] shromažďuje textové informace a distribuuje je mezi buňky. Nové formy web scrapingu zahrnují naslouchání datových kanálů z webových serverů. JSON se například běžně používá jako transportní mechanismus pro ukládání dat mezi klientem a webovým serverem.

Efektivní je také získávání dat ze stránek pomocí přístupu API. Společnosti jako Amazon AWS a Google Google (služba API Discovery) poskytují koncovým uživatelům bezplatné nástroje, služby a veřejná data pro scraping.

Způsoby ochrany a obcházení zámků

Existují metody, jak zabránit webovým stránkám ve stírání webu, jako je detekce a blokování robotů v procházení (prohlížení) jejich stránek. V reakci na to existují systémy stírání webu, které se spoléhají na použití analýzy DOM, počítačového vidění a technik zpracování přirozeného jazyka k simulaci lidského procházení za účelem shromažďování obsahu webových stránek pro offline analýzu.

Správci mohou blokovat programy pro škrabání webu, aby zabránili použití informací konkurenty. Škrabací programy lze rozpoznat podle následujících funkcí:

  • Neobvyklé chování uživatelů (například stovky přechodů na novou stránku webu každou sekundu);
  • Opakující se neprůkazné akce (uživatel nebude provádět stejné úkoly znovu a znovu);
  • Použití odkazů, které jsou obsaženy pouze v kódu webu a nejsou viditelné pro běžné uživatele [29] .

Způsoby blokování:

  1. Odepřít přístup na stránku z konkrétní IP adresy (například když robot prošel více než 100 stránkami za relaci);
  2. Odepřít ID uživatele, což je z pohledu správce webu útočník vstupující na web autentizací [25] .

Chcete-li obejít blokování, musí programy pro stírání webu provádět na webu akce, které jsou co nejblíže chování uživatele. Proto byste měli pravidelně střídat IP adresy, měnit identifikátor uživatelského agenta ( User Agent ) a konfigurovat rychlost web scraper hitů na optimální a mezi hity zabudovat na webu náhodné akce, které nevzbudí podezření [29] .

Právní znaky

Právní aspekty web scrapingu se řídí legislativou v oblasti ochrany osobních údajů . V Rusku je regulačním dokumentem 152 federálního zákona „O osobních údajích“ [30] . V Evropské unii musí škrabky splňovat obecné nařízení o ochraně osobních údajů (GDPR) [31] . Ve Francii je od dubna 2020 v platnosti samostatný regulační dokument vydaný Národní komisí pro informatizaci a svobodu (CNIL), který omezuje shromažďování osobních údajů z otevřených zdrojů [32] .

Viz také

Poznámky

  1. Boeing, G.; Waddell, P. Nové pohledy na trhy s nájemním bydlením ve Spojených státech: seškrabávání webu a analýza Craigslist Rental Listings // Journal of Planning Education and Research. - 2016. - doi : 10.1177/0739456X16664789 . - arXiv : 1605.05397 .
  2. Web-scraping a naivní Bayesova klasifikace textu . cyberleninka.ru. Staženo 14. ledna 2020. Archivováno z originálu 13. prosince 2019.
  3. Tyutyarev A. A., Solomatin D. I. Vývoj rámce pro vytváření webových scraperů  // Problémy vědy. - 2016. - V. 3 , č. 13 . Archivováno z originálu 25. ledna 2021.
  4. Vargiu & Urru. Využití web scraping v přístupu k webové reklamě založeném na kolaborativním filtrování  //  Výzkum umělé inteligence. - 2013. - č. 2 (1) . - doi : 10.5430/air.v2n1p44 .
  5. World Wide Web Wanderer . Staženo 9. ledna 2020. Archivováno z originálu dne 3. ledna 2020.
  6. První webový robot – 1993 . Získáno 9. ledna 2020. Archivováno z originálu dne 19. ledna 2021.
  7. Vliv stylu prezentace stránky s výsledky vyhledávače na spokojenost uživatelů a pohyby očí | Sémantický učenec
  8. Valeria Cherepenchuk, Irina Lomakina, Natalya Serdtseva. Technologie, které změnily svět . — Litry, 2019-12-13. — 322 s. - ISBN 978-5-04-220661-0 .
  9. S. Kingsnorth. Digitální marketingová strategie . — ISBN 9785041757397 .
  10. ↑ 1 2 3 4 Web Scraping : Jak to všechno začalo a bude  . www.octoparse.com. Získáno 9. ledna 2020. Archivováno z originálu dne 7. srpna 2020.
  11. Krásná polévka: Říkali jsme mu Želva, protože nás to naučil. . www.crummy.com Získáno 14. ledna 2020. Archivováno z originálu dne 27. března 2022.
  12. Jeff Desjardins. Co se stane za minutu internetu v roce 2018? . www.visualcapalist.com . Vizuální kapitalista (14. května 2018). Staženo 14. ledna 2020. Archivováno z originálu 11. listopadu 2019.
  13. ↑ 1 2 Kitaev E. L., Skornyakova R. Yu., “On-the-fly seškrabování externích webových zdrojů řízené značkováním stránky HTML”, předtisky Keldysh Institute. M. V. Keldysha, 2019, 020, 31 s. . www.mathnet.ru Staženo: 7. března 2020.
  14. Demidova O.O., Saveliev A.O. Srovnávací analýza technik pro extrakci dat z webových stránek při řešení problému shlukování vědeckých publikací // Elektronické prostředky a řídicí systémy. Materiály zpráv z mezinárodní vědecko-praktické konference..
  15. Song, Ruihua. Joint Optimization of Wrapper Generation and Template Detection" (PDF) . 13. mezinárodní konference o zjišťování znalostí a dolování dat . Výzkum společnosti Microsoft (14. září 2007). Staženo 27. listopadu 2019. Archivováno z originálu 27. listopadu 2019.
  16. Co je objektový model dokumentu? . www.w3.org. Staženo 9. ledna 2020. Archivováno z originálu 6. května 2019.
  17. Song R. Společná optimalizace generování Wrapperů a detekce šablon // 13. mezinárodní konference o získávání znalostí a dolování dat. - 2007. - S. 13-20 .
  18. Metoda agregace a transformace dat a zařízení pro její implementaci . findpatent.ru. Staženo: 9. března 2020.
  19. Co je FreeFormat  . www.gooseeker.com Získáno 7. března 2020. Archivováno z originálu dne 3. prosince 2019.
  20. Xconomy: Diffbot využívá počítačové vidění ke znovuobjevení sémantického  webu . Xconomy (25. července 2012). Získáno 7. března 2020. Archivováno z originálu dne 29. února 2020.
  21. ↑ 1 2 Tim Jones M. Získávání informací z internetu pomocí jazyka Ruby (22. května 2014). Staženo 13. prosince 2019. Archivováno z originálu 13. prosince 2019.
  22. Pavlov N. V. Metody marketingového výzkumu .
  23. Joyce G. (Přístup 06/01/19 Data odhalují GRAMMY 2017 Highlights on Social Media . Získáno 17. prosince 2019. Archivováno z originálu 17. prosince 2019.
  24. Basalaeva A. Yu., Gareeva G. A., Grigoryeva D. R. Web scraping a klasifikace textu od Naive Bayes  // Innovative Science. - 2018. - č. 5-2 . — ISSN 2410-6070 . Archivováno z originálu 13. prosince 2019.
  25. ↑ 1 2 Moskalenko A. A., Laponina O. R., Sukhomlin V. A. Vývoj webové škrabací aplikace se schopností obejít blokování // Moderní informační technologie a IT vzdělávání. - 2019. - T. 15 , č. 2 . - S. 413-420 . - doi : 10,25559 .
  26. Scrappy | Rychlý a výkonný rámec pro škrábání a procházení webu . scrapy.org. Získáno 7. března 2020. Archivováno z originálu dne 22. března 2020.
  27. Webová integrace dat - Import.io - Extrakce dat, Webová data, Web Harvesting, Příprava dat,  Integrace dat . import.io. Získáno 7. března 2020. Archivováno z originálu dne 5. března 2020.
  28. Skleníkový videonávod: Co je Web Scraping . te-st.ru _ Staženo 13. prosince 2019. Archivováno z originálu 13. prosince 2019.
  29. ↑ 1 2 Moskalenko A. A., Laponina O. R., Sukhomlin V. A. Vývoj webové škrabací aplikace se schopností obejít blokování // Moderní informační technologie a IT vzdělávání. - 2019. - V. 5 , č. 2 .
  30. Jak se majitelé stránek vyhýbají pokutám podle 152-FZ – federálního zákona „O osobních údajích“ . PDMaster.ru - Informační portál o osobních údajích (15. dubna 2020). Získáno 5. července 2020. Archivováno z originálu dne 5. července 2020.
  31. Legal Web Scraping -  Vysvětlení služby Web scraping . Web scraping služba od FindDataLab (6. dubna 2020). Získáno 5. července 2020. Archivováno z originálu dne 28. ledna 2021.
  32. FindDataLab.com. Můžete stále provádět škrábání webu s novými směrnicemi CNIL?  (anglicky) . Střední (9. června 2020). Získáno 5. července 2020. Archivováno z originálu dne 5. července 2020.

Literatura

  • Kitaev E. L., Skornyakova R. Yu.  StructScraper — Nástroj pro dynamické zahrnutí sémantických dat externích webových zdrojů do obsahu webové stránky // Vědecká služba na internetu. — 2019.
  • Kitaev E. L., Skornyakova R. Yu. Průběžné  škrábání externích webových zdrojů řízené značkováním stránky HTML. M. V. Keldysh. - 2019. - č. 20. - DOI : 10.20948/prepr-2019-20.
  • Soloshchenko M. V., Karamova A. I.  Implementace importu dat z webových zdrojů // Moderní matematika a její aplikace : Článek ve sborníku konference. — Ufa, 2017.
  • Tyutyarev A. A., Solomatin D. I.  Vývoj rámce pro vytváření webových škrabek // Voprosy nauki. - 2016. - V. 3, č. 13.
  • Adamuz P.L. Vývoj generického testovacího zařízení pro web scraping. Barcelona: Evropské centrum pro akreditaci vzdělávání a odborné přípravy, 2015.
  • Boeing, G.; Waddell, P. Nové pohledy na trhy s nájemním bydlením ve Spojených státech: seškrabávání webu a analýza Craigslist Rental Listings // Journal of Planning Education and Research. - 2016. - DOI : 10.1177/0739456X16664789. - arXiv : 1605.05397.
  • Huan Liu, Fred Morstatter, Jiliang Tang, Reza Zafarani.  Dobré, špatné a ošklivé: odhalování nových výzkumných příležitostí v oblasti těžby sociálních médií (anglicky) // International Journal of Data Science and Analytics. — 2016-11. — Sv. 1, iss. 3-4. — ISSN 2364-4168 2364-415X, 2364-4168. - DOI :10.1007/s41060-016-0023-0.
  • Geoff Boeing, Paul Waddell.  Nové pohledy na trhy s nájemním bydlením v celých Spojených státech: seškrabávání a analýza webu Craigslist Rental Listings // Journal of Planning Education and Research. — 2017-12. — Sv. 37, iss. 4. - ISSN 1552-6577 0739-456X, 1552-6577. — DOI : 10.1177/0739456X16664789.
  • Rizqi Putri Nourma Budiarti, Nanang Widyatmoko, Mochamad Hariadi, Mauridhi Hery Purnomo. Web scraping pro automatizovaný systém monitorování kvality vody: Případová studie PDAM Surabaya // Mezinárodní seminář o inteligentních technologiích a jejich aplikacích 2016 (ISITIA). — Lombok, Indonésie: IEEE, 2016-07. - ISBN 978-1-5090-1709-6 . — DOI :10.1109/ISITIA.2016.7828735.

Odkazy