Vyšlo v týdeníku CHIPweek č. 46/96, 12. listopadu 1996
Vytištěno z adresy: http://www.earchiv.cz/a96/a646k130.php3

Grabber

Také jste si už někdy pořádně a od plic zanadávali nad dlouhou odezvou některého WWW serveru? Přesněji nad tím, jak dlouho trvá než k vám „dotečou" požadovaná data skrz čím dál tím ucpanější linky Internetu? Nebo jste se již někdy zasnili i nad možností mít celý obsah určitého WWW serveru „u sebe", což by vám umožňovalo pohodlně a rychle se brouzdat jeho obsahem, a to dokonce i v době kdy vůbec nejste připojeni k Internetu?

Myšlenka „stáhnout si k sobě" celý obsah určitého WWW serveru či některou jeho ucelenou část není nijak nová. Má i své racionální opodstatnění - bude-li mít uživatel požadovaná data přímo u sebe, nebude je muset průběžně stahovat z Internetu, nebude zatěžovat jeho přenosové trasy, a v neposlední řadě odlehčí i své kapse, když se bude moci brouzdat i v off-line režimu, nebude muset být připojen k Internetu, a tudíž ani za připojení platit.

Bylo proto jen otázkou času, kdy se objeví první programy schopné vyjít těmto požadavkům vstříc. Ačkoli jejich označení není ještě zcela ustáleno, nejčastěji se takovémuto programu říká „grabber" (v doslovném překladu „chamtivec, hltoun, hltavec", ale zde spíše „stahovač"), a způsobu jeho fungování se říká „grabbing" (nejspíše: „stahování"). To také dobře vystihuje skutečnou podstatu věci: grabber vystupuje jako automaticky fungující WWW prohlížeč, který si z WWW serveru stahuje jednu stránku za druhou, a ukládá je včetně všech jejich součástí (například obrázků, ikon atd.) „do lokálu", typicky na místní pevný disk. Důležité je ovšem uvědomit si, že nejde jen o zrychlené a zautomatizované „ukládání" načtených WWW stránek, které by si uživatel mohl zajistit i sám (byť mnohem méně efektivně). Aby „stažením" vznikla taková soustava lokálně umístěných WWW stránek, kterou lze procházet prostřednictvím obvyklých hypertextových odkazů, musí být jejich vzájemné odkazy náležitě upraveny (tak aby nesměřovaly na původní verze příslušných stránek, ale na jejich „stažené" kopie). No a tuto značně netriviální činnost má na starosti právě zmíněný program typu grabber.

Programy typu „grabber" se dnes již vyskytují v mnoha variacích, od volně šiřitelných až po běžné komerční produkty, a jejich prostřednictvím lze v ideálním případě získat funkčně ekvivalentní „lokální kopii" obsahu určitého WWW serveru. V běžné praxi ale bývají konkrétní výsledky poněkud méně ideální, protože celá věc má několik nepříjemných „háčků".

První problém „grabbingu" spočívá v tom, že vzájemně provázané WWW servery v dnešním Internetu vytváří jednu obrovskou pavučinu, kterou samozřejmě nelze stáhnout celou. To lze učinit pouze s relativně malou částí, kterou je ale nutné přesně vymezit. A zde je první kámen úrazu: jak „grabberu" říct, co ještě chcete stáhnout a co už ne? Většina grabberů postupuje tak, že nejprve stáhnou určitou WWW stránku, a pak se vydají po všech odkazech, které z této stránky vedou „ven", na další stránky. A právě zde je velmi těžké správně vymezit, kam až se grabber smí vydat a kam už se naopak nemá zatoulat.

Ještě větším problémem je ale dynamický charakter mnoha dnešních WWW stránek. Zde se vyskytuje celá řada problémů, se kterými si ani ten nejchytřejší grabber nemá šanci poradit - jak by měl například stáhnout stránky, které vznikají dynamicky, až na základě předchozích požadavků a akcí uživatele? Jak by se měl zachovat například vůči interaktivní formě jízdního řádu Českých drah, ve které lze vyhledávat prostřednictvím WWW? Měl by systematicky generovat všechny možné dotazy a stahovat odpovědi na ně? To by nemělo smysl, a nebylo by to ani reálně zvládnutelné.

Stejně tak nemohou u „stáhnutých" stránek z principu fungovat ani další interaktivní mechanismy, vázané na skutečný WWW server a jeho fungování - například všelijaké formuláře, tzv. klikovatelné mapy apod. Samotný proces „stahování" se pak čím dál tím více komplikuje i přidáváním nejrůznějších prvků, které přidávají „život" do původně statických WWW stránek - tedy například appletů jazyka Java, prvků ActiveX apod. Obecně může být „grabbing" relativně bezproblémový u statických (například čistě textových) stránek, ale čím „živější" naopak WWW stránky jsou, tím je jejich „stahování" problematičtější.