Webový prohledávač - Web crawler
A Webový prohledávač, někdy nazývané a pavouk nebo spiderbot a často zkráceno na prohledávač, je Internetový robot který systematicky prochází Celosvětová Síť, obvykle za účelem Webové indexování (web spidering).
Webové vyhledávače a některé další webové stránky k aktualizaci svého softwaru pro procházení nebo spiderování webu Webový obsah nebo indexy webového obsahu jiných stránek. Webové prohledávače kopírují stránky ke zpracování vyhledávačem, který indexy stažené stránky, aby uživatelé mohli vyhledávat efektivněji.
Prohledávače spotřebovávají zdroje v navštívených systémech a často navštěvují weby bez schválení. Problémy s plánem, načtením a „zdvořilostí“ vstupují do hry při přístupu k velkým sbírkám stránek. Existují mechanismy pro veřejné weby, které si nepřejí procházení, aby to agentovi procházení oznámil. Například včetně a robots.txt
soubor může požádat roboti indexovat pouze části webu nebo vůbec nic.
Počet internetových stránek je extrémně vysoký; dokonce ani největší prohledávače nedosahují úplného indexu. Z tohoto důvodu se vyhledávače snažily poskytovat relevantní výsledky vyhledávání v prvních letech World Wide Web, před rokem 2000. Dnes jsou relevantní výsledky poskytovány téměř okamžitě.
Prohledávače mohou ověřovat hypertextové odkazy a HTML kód. Mohou být také použity pro škrábání webu (viz také programování založené na datech ).
Nomenklatura
Prohledávač webu je také známý jako pavouk,[1] an mravenec, an automatický indexátor,[2] nebo (v FOAF kontext softwaru) a Webový scutter.[3]
Přehled
Webový prohledávač začíná seznamem URL navštívit, zavolal semena. Když prohledávač tyto adresy URL navštíví, identifikuje všechny hypertextové odkazy na stránkách a přidá je do seznamu adres URL k návštěvě, který se nazývá procházet hranice. URL z hranice jsou rekurzivně navštívil podle souboru zásad. Pokud prohledávač provádí archivaci webové stránky (nebo archivace webu ), kopíruje a ukládá průběžné informace. Archivy jsou obvykle uloženy takovým způsobem, že je lze prohlížet, číst a procházet, jako tomu bylo na živém webu, ale jsou uchovány jako „snímky“.[4]
Archiv je znám jako úložiště a je navržen k ukládání a správě sbírky webové stránky. Úložiště pouze ukládá HTML stránky a tyto stránky jsou uloženy jako odlišné soubory. Repozitář je podobný jakémukoli jinému systému, který ukládá data, jako je moderní databáze. Jediný rozdíl je v tom, že úložiště nepotřebuje všechny funkce nabízené databázovým systémem. Úložiště ukládá nejnovější verzi webové stránky načtenou prohledávačem.[5]
Velký objem znamená, že prohledávač může stáhnout pouze omezený počet webových stránek v daném čase, takže musí upřednostnit stahování. Vysoká míra změn může znamenat, že stránky již mohly být aktualizovány nebo dokonce smazány.
Počet možných procházených adres URL generovaných softwarem na straně serveru také znemožnil webovým prohledávačům vyhnout se načítání duplicitní obsah. Nekonečné kombinace HTTP ZÍSKAT Existují parametry (založené na URL), z nichž pouze malý výběr ve skutečnosti vrátí jedinečný obsah. Například jednoduchá online fotogalerie může uživatelům nabídnout tři možnosti, jak je uvedeno v HTTP ZÍSKEJTE parametry v adrese URL. Pokud existují čtyři způsoby třídění obrázků, tři možnosti miniatura velikost, dva formáty souborů a možnost zakázat obsah poskytovaný uživateli, pak ke stejné sadě obsahu lze přistupovat pomocí 48 různých adres URL, z nichž všechny mohou být na webu propojeny. Tento matematická kombinace vytváří problém pro prohledávače, protože pro získání jedinečného obsahu musí třídit nekonečné kombinace relativně malých skriptovaných změn.
Jako Edwards et al. poznamenal: „Vzhledem k tomu, že šířka pásma protože procházení není nekonečné ani bezplatné, stává se nezbytným procházet web nejen škálovatelným, ale účinným způsobem, pokud má být zachována přiměřená míra kvality nebo aktuálnosti. “[6] Prohledávač si musí v každém kroku pečlivě vybrat, které stránky má dále navštívit.
Zásady procházení
Chování webového prolézacího modulu je výsledkem kombinace zásad:[7]
- A politika výběru který uvádí stránky ke stažení,
- A zásady opětovné návštěvy který uvádí, kdy zkontrolovat změny na stránkách,
- A politika zdvořilosti který uvádí, jak se vyhnout přetížení Webové stránky.
- A politika paralelizace který uvádí, jak koordinovat distribuované webové prohledávače.
Zásady výběru
Vzhledem k aktuální velikosti webu pokrývají i velké vyhledávače pouze část veřejně dostupné části. Studie z roku 2009 ukázala dokonce rozsáhlou vyhledávače indexovat ne více než 40-70% indexovatelného webu;[8] předchozí studie od Steve Lawrence a Lee Giles ukázal, že ne indexován vyhledávač více než 16% webu v roce 1999.[9] Protože prohledávač stáhne vždy jen zlomek webové stránky, je velmi žádoucí, aby stažená část obsahovala nejrelevantnější stránky a ne jen náhodný vzorek webu.
To vyžaduje metriku důležitosti pro stanovení priorit webových stránek. Důležitost stránky je její funkcí vnitřní kvalita, její popularita, pokud jde o odkazy nebo návštěvy, a dokonce i její URL (to je případ vertikální vyhledávače omezeno na jednoho doména nejvyšší úrovně nebo vyhledávače omezené na pevný web). Návrh zásady dobrého výběru má další potíže: musí pracovat s částečnými informacemi, protože během procházení není známa celá sada webových stránek.
Junghoo Cho et al. provedl první studii o zásadách pro procházení plánování. Jejich datová sada byla 180 000 stránek procházených z stanford.edu doména, ve které byla simulace procházení provedena s různými strategiemi.[10] Testované metriky objednávání byly nejdříve na šířku, zpětný odkaz počet a částečné PageRank výpočty. Jedním ze závěrů bylo, že pokud prohledávač chce stáhnout stránky s vysokým Pagerankem brzy během procesu procházení, pak je lepší částečná strategie Pagerank, následovaná prvním šířkou a počtem zpětných odkazů. Tyto výsledky jsou však pouze pro jednu doménu. Cho také napsal svou doktorskou disertační práci ve Stanfordu o procházení webu.[11]
Najork a Wiener provedly skutečné procházení na 328 milionech stránek pomocí objednávání na šířku.[12] Zjistili, že procházení na první šířku zachycuje stránky s vysokým Pagerankem na začátku procházení (ale tuto strategii neporovnávali s jinými strategiemi). Autoři tohoto výsledku vysvětlili, že „nejdůležitější stránky mají mnoho odkazů na ně od mnoha hostitelů a tyto odkazy budou nalezeny brzy, bez ohledu na to, na kterém hostiteli nebo stránce procházení pochází.“
Abiteboul navrhl strategii procházení založenou na algoritmus s názvem OPIC (výpočet důležitosti online stránky).[13] V OPICu je každé stránce dán počáteční součet „hotovosti“, který je rovnoměrně rozdělen mezi stránky, na které ukazuje. Je to podobné výpočtu PageRank, ale je rychlejší a provádí se pouze v jednom kroku. Prohledávač řízený OPIC nejprve stáhne stránky na hranici procházení s vyššími částkami „hotovosti“. Pokusy byly provedeny na 100 000stránkovém syntetickém grafu s distribucí in-odkazů podle zákona o moci. Ve skutečném webu však nebylo srovnání s jinými strategiemi ani experimenty.
Boldi et al. použila simulaci na podmnožinách webu 40 milionů stránek z .to doména a 100 milionů stránek z procházení WebBase, testování nejdříve proti hloubce, náhodné řazení a vševědoucí strategie. Porovnání bylo založeno na tom, jak dobře se PageRank vypočítaný při částečném procházení přibližuje skutečné hodnotě PageRank. Překvapivě některé návštěvy, které velmi rychle akumulují hodnocení PageRank (nejvíce pozoruhodně první a vševědoucí návštěva), poskytují velmi špatné progresivní aproximace.[14][15]
Baeza-Yates et al. použila simulaci na dvou podmnožinách webu o 3 milionech stránek z .GR a .cl domény, testování několika strategií procházení.[16] Ukázali, že jak strategie OPIC, tak strategie využívající délku front na jednotlivé stránky jsou lepší než nejdříve na šířku procházení a že je také velmi efektivní použít předchozí procházení, pokud je k dispozici, k vedení aktuálního.
Daneshpajouh et al. navrhl komunitní algoritmus pro objevování dobrých semen.[17] Jejich metoda prochází webové stránky s vysokým hodnocením PageRank z různých komunit v menší iteraci ve srovnání s procházením počínaje náhodnými semeny. Pomocí této nové metody lze extrahovat dobré semeno z dříve procházeného webového grafu. Pomocí těchto semen může být nové procházení velmi účinné.
Omezení sledovaných odkazů
Prohledávač může chtít vyhledávat pouze stránky HTML a vyhýbat se všem ostatním Typy MIME. Aby mohl prohledávač požadovat pouze prostředky HTML, může před požadavkem na celý prostředek s požadavkem GET vytvořit požadavek HTTP HEAD k určení typu MIME webového prostředku. Aby se prohledávač vyhnul četným požadavkům HEAD, může prozkoumat adresu URL a požádat o zdroj, pouze pokud adresa URL končí určitými znaky, jako jsou .html, .htm, .asp, .aspx, .php, .jsp, .jspx nebo lomítko . Tato strategie může způsobit neúmyslné přeskočení mnoha webových zdrojů HTML.
Některé prohledávače se také mohou vyhnout požadavku na jakékoli zdroje, které mají a "?" v nich (jsou vyráběny dynamicky), aby se zabránilo pavoučí pasti to může způsobit, že prohledávač stáhne z webu nekonečný počet adres URL. Tato strategie je nespolehlivá, pokud web používá Přepisování URL pro zjednodušení jeho URL.
Normalizace URL
Prohledávače obvykle provádějí nějaký typ Normalizace URL aby se zabránilo procházení stejného zdroje více než jednou. Termín Normalizace URL, také zvaný Kanonizace URL, odkazuje na proces úpravy a standardizace adresy URL konzistentním způsobem. Existuje několik typů normalizace, které lze provést, včetně převodu adres URL na malá písmena, odstranění znaku „.“ a „..“ segmenty a přidání koncových lomítek do neprázdné komponenty cesty.[18]
Cesta stoupající procházení
Některé prohledávače mají v úmyslu stáhnout / nahrát co nejvíce zdrojů z konkrétní webové stránky. Tak pásově vzestupný prohledávač byl představen, který by vystoupil na každou cestu v každé adrese URL, kterou hodlá procházet.[19] Pokud je například zadána počáteční adresa URL http://llama.org/hamster/monkey/page.html, pokusí se procházet / křeček / opice /, / křeček / a /. Cothey zjistil, že prolézací modul stoupající po cestě byl velmi efektivní při hledání izolovaných zdrojů nebo zdrojů, u nichž by při běžném procházení nebyl nalezen žádný příchozí odkaz.
Cílené procházení
Důležitost stránky pro prohledávač lze také vyjádřit jako funkci podobnosti stránky s daným dotazem. Volají se webové prohledávače, které se pokoušejí stáhnout stránky, které jsou si navzájem podobné zaměřený prohledávač nebo aktuální prohledávače. Pojmy aktuální a cílené procházení byly poprvé představeny Filippo Menczer[20][21] a Soumen Chakrabarti et al.[22]
Hlavním problémem při cíleném procházení je to, že v kontextu webového prohledávače bychom chtěli být schopni předpovědět podobnost textu dané stránky s dotazem před samotným stažením stránky. Možným prediktorem je text ukotvení odkazů; to byl přístup, který zvolil Pinkerton[23] v prvním webovém prohledávači raných dob webu. Diligenti et al.[24] navrhnout použití úplného obsahu již navštívených stránek k vyvození podobnosti mezi hnacím dotazem a stránkami, které ještě nebyly navštíveny. Výkon cíleného procházení závisí hlavně na bohatosti odkazů v konkrétním prohledávaném tématu a zaměřené procházení se obvykle spoléhá na obecný webový vyhledávací stroj, který poskytuje výchozí body.
Akademicky zaměřený prohledávač
Příklad zaměřené prohledávače jsou akademické prohledávače, které procházejí volně přístupné akademické související dokumenty, například citeseerxbot, což je prohledávač CiteSeerX vyhledávač. Jiné akademické vyhledávače jsou Google Scholar a Microsoft Academic Search atd. Protože většina akademických prací je publikována v PDF formáty, takový druh prohledávače se zvláště zajímá o procházení PDF, PostScript soubory, Microsoft Word včetně jejich na zip formáty. Z tohoto důvodu jsou běžné prohledávače s otevřeným zdrojovým kódem, například Heritrix, je nutné upravit tak, aby odfiltroval ostatní Typy MIME nebo middleware se používá k extrakci těchto dokumentů a jejich importu do zaměřené databáze procházení a úložiště.[25] Určit, zda jsou tyto dokumenty akademické nebo ne, je náročné a může procesu procházení přidat značné režijní náklady, takže se to provádí jako postup po procházení pomocí strojové učení nebo regulární výraz algoritmy. Tyto akademické dokumenty jsou obvykle získávány z domovských stránek fakult a studentů nebo z publikační stránky výzkumných ústavů. Protože akademické dokumenty zabírají na celých webových stránkách jen malou část, je pro zvýšení efektivity těchto webových prohledávačů důležitý dobrý výběr osiva.[26] Ostatní akademičtí prohledávači si mohou stáhnout prostý text a HTML soubory, které obsahují metadata akademických prací, jako jsou tituly, práce a abstrakty. Tím se zvyšuje celkový počet papírů, ale významná část nemusí poskytovat zdarma PDF stahování.
Sémanticky zaměřený prohledávač
Dalším typem zaměřených prohledávačů je sémanticky zaměřený prohledávač, který využívá doménové ontologie reprezentovat aktuální mapy a propojovat webové stránky s relevantními ontologickými koncepty pro účely výběru a kategorizace.[27] Kromě toho lze ontologie automaticky aktualizovat v procesu procházení. Dong a kol.[28] představil takový prolézací modul založený na ontologii a učení, který pomocí vektorového podpůrného stroje aktualizoval obsah ontologických konceptů při procházení webových stránek.
Zásady opakované návštěvy
Web má velmi dynamickou povahu a procházení zlomku webu může trvat týdny nebo měsíce. V době, kdy webový prohledávač dokončil procházení, mohlo dojít k mnoha událostem, včetně výtvorů, aktualizací a odstranění.
Z hlediska vyhledávače jsou náklady spojené s nedetekováním události, a tedy s neaktuální kopií prostředku. Nejpoužívanějšími nákladovými funkcemi jsou aktuálnost a věk.[29]
Svěžest: Toto je binární měřítko, které označuje, zda je místní kopie přesná nebo ne. Svěží stránka p v úložišti v čase t je definován jako: