Vyhledßvacφ servery

jak spolupracovat s roboty

Co jsou vyhledßvaΦe - Jak pracujφ vyhledßvaΦe - Robot prochßzφ internetem - Jak p°ilßkat roboty - Zakßzßnφ p°φstupu robot∙m - Robots.txt - Meta robots - Indexovßnφ - KlφΦovß slova - Vyhledßvßnφ - P°φklady vyhledßvaΦ∙ - Trocha mytologie

Co jsou vyhledßvaΦe

T°eba Google, Jyxo, Altavista nebo Alltheweb. Servery, kterΘ majφ velikou databßzi o tom, kterß strßnka internetu obsahuje jakΘ slovo. Proto╛e um∞jφ hledat v celΘm textu strßnek, °φkß se jim fulltextovΘ. Takov²ch server∙ existujφ °ßdov∞ stovky. Neple╗te si fulltextovΘ vyhledßvaΦe s katalogy (Yahoo, Seznam). Program∙m, kterΘ prochßzejφ web a schra≥ujφ informace, se °φkß roboti, pavouci, spiders nebo crawlers.

Nejd∙le╛it∞l╣φ vyhledßvaΦ je Google. Vφce informacφ o Google.

Jak pracujφ vyhledßvaΦe

Ve t°ech krocφch:

  1. Roboti (crawle°i) sbφrajφ data
  2. Pak se to zpracuje do databßze (indexovßnφ)
  3. Nakonec se to zp°φstupnφ nßv╣t∞vnφk∙m, aby mohli klßst dotaz (webmodul).

Robot prochßzφ internetem

V∞t╣inou n∞kde zaΦne, t°eba v n∞jakΘm katalogu. Najde odkaz a sleduje ho. Nalezenou strßnku si stßhne pro zaindexovßnφ, zßrove≥ hledß dal╣φ odkazy, kterΘ p°φpadn∞ op∞t sleduje, aby si to zase postahoval.

Z toho vypl²vß, ╛e robot m∙╛e odhalit pouze strßnku, na kterou vede n∞jak² odkaz. Musφ p°itom jφt o klasick² odkaz (na to obzvlß╣t∞ upozor≥uji milovnφky r∙zn²ch JavaScriptov²ch parßdiΦek). Pokud na va╣e strßnky nebudou roboti chodit, ╛ßdn² Φtenß° ty strßnky nem∙╛e najφt fulltextov²m vyhledßvaΦem.

V praxi ale roboti najdou jenom Φßst strßnek, kterΘ existujφ, proto╛e to prost∞ v╣echno nestφhajφ. 

Jak p°ilßkat roboty

N∞kte°φ p°ijdou sami po tΘ, co se va╣e strßnka objevφ v n∞jakΘm katalogu. JinΘ roboty musφte popohnat. V∞t╣inou se to d∞lß na hlavnφ strßnce vyhledßvacφ slu╛by (t°eba Altavista) nenßpadn²m odkazem (p°idej odkaz, add a link, submit site, add site a podobn∞). Zadß se URL adresa (doporuΦuji kontrolovat), to je v╣e. Roboti Φasem p°ijdou.

Google a dal╣φ modernφ roboti pr² p°ijdou na strßnku teprve tehdy, kdy╛ najdou urΦitΘ mno╛stvφ odkaz∙, kterΘ na strßnku mφ°φ. Proto je t°eba mφt zajφmav² obsah, aby jinφ auto°i na moje strßnky odkazovali.

Osobn∞ jsem velmi skeptick² k program∙m, kterΘ slibujφ, ╛e p°idajφ odkaz do spousty vyhledßvaΦ∙. Jednak jde o vyhledßvaΦe zahraniΦnφ -- ty nejsou tak d∙le╛itΘ jako ΦeskΘ. Druhak se °φkß, ╛e ty programy stejn∞ jenom schra≥ujφ informace o zadavateli, aby to mohli prodat. Opravdu d∙le╛it²ch dobr²ch vyhledßvaΦ∙ je jen mßlo, nenφ t°eba b²t ve v╣ech ╣patn²ch. Navφc nap°φklad Altavista t∞mto program∙m blokuje p°φstup a Google je pr² v algoritmech penalizuje.

Zakßzßnφ p°φstupu robot∙m

Webmaste°i mohou nastavit, aby na web roboti nechodili nebo aby chodili jenom n∞kte°φ a n∞kam. NejΦast∞j╣φm d∙vodem pro tato opat°enφ b²vß velkΘ zatφ╛enφ linky nebo choulostivost informacφ. Existujφ dva zßkladnφ zp∙soby, jak to ud∞lat:

  1. Pro cel² web najednou souborem robots.txt
  2. Pro ka╛d² soubor zvlß╣╗ pomocφ meta tagu v hlaviΦce

Robots.txt

Ka╛d² robot, kter² p°ijde prohledßvat vß╣ server, by se m∞l nap°ed podφvat do souboru robots.txt, zda nemß zakßzan² vstup. Soubor robots.txt musφ b²t psßn mal²mi pφsmeny a musφ b²t umφst∞n v ko°eni webu (to jest hned za .cz nebo .com nebo tak). Je to obyΦejn² tex╗ßk. JednotlivΘ °ßdky °φkajφ, kter² robot (User-agent) kam nesmφ (Disallow).

P°φklady

User-agent: *

Disallow: /php/

Φili v╣ichni roboti (to je ta hv∞zdiΦka) nesm∞jφ do adresß°e /php (proto╛e °et∞zcem "/php/" zaΦφnß relativnφ URL soubor∙ v n∞m). Nebo:

User-agent: Scooter

Disallow:

 

User-agent: Gulliver

Disallow: /

Takov² zßpis °φkß, ╛e Scooter smφ v╣ude a Gulliver nikam. V╣imn∞te si povinnΘho prßzdnΘho °ßdku mezi polo╛kami. Nebo:

User-agent: *

Disallow: /cgi-bin/

Disallow: /in

Tento zßpis zakßzal v╣em robot∙m (hv∞zdiΦka) vstupovat do adresß°e /cgi-bin a naΦφtat strßnky, kterΘ zaΦφnajφ °et∞zcem "in". Tak╛e t°eba info.html, index.html a podobn∞. To je mimochodem i p°esnß definice polo╛ky Disallow: zakazuje sledovat cesty, kterΘ zaΦφnajφ vypsan²m °et∞zcem.

V╣imn∞te si, ╛e za jednφm °ßdkem User-agent se m∙╛e vyskytovat vφce °ßdk∙ zßkaz∙.

User-agent

Co se tam dß psßt krom∞ hv∞zdiΦky? JmΘno robota. «el, nepodobß se jmΘn∙m slu╛by a jß t∞ch jmen moc neznßm. Informace se dajφ najφt na strßnce http://www.robotstxt.org/wc/active/html/index.html (anglicky), za odkaz d∞kuji Davidu Moravcovi. 

ProblΘmy

Zp°φstupn∞nφ offline

Intenret Explorer kdy╛ stahuje soubory pro prohlφ╛enφ offline, tak se dφvß na robots.txt a zdß se, ╛e jeho omezenφ takΘ respektuje. Pokud chcete, aby si vßs Φtenß°i mohli Φφst v autobuse, tak ned∞lejte robots.txt moc restriktivnφ.

Meta robots

Meta tag v hlaviΦce umo╛≥uje zakßzat robot∙m jednak indexovßnφ obsahu, jednak sledovßnφ odkaz∙. D∙vody pro takovΘ zßkazy mi nejsou moc jasnΘ, leda snad mß smysl zakßzat indexovßnφ n∞kter²ch rßm∙ (typicky strßnka s menu: noindex, follow). Je╣t∞ musφm zmφnit, ╛e op∞t ne v╣ichni roboti to berou na v∞domφ.

Do hlaviΦky se v HTML napφ╣e tag:

<meta name="robots" content="noindex, nofollow">

P°φpustnΘ hodnoty:

noindex
Obsah strßnky nebude indexovßn
index
Obsah strßnky bude indexovßn (normßlnφ hodnota)
nofollow
Odkazy nebudou sledovßny
follow
Odkazy budou sledovßny (normßl)

Je dost otrava, ╛e se to musφ psßt do ka╛dΘ strßnky znova. Na╣t∞stφ ne ka╛d² se setkßvß s problΘmem vlezl²ch robot∙.

Indexovßnφ

╚ili zpracovßnφ dat do databßze. Ka╛d² vyhledßvaΦ si ╛v²kß nasbφranΘ informace po svΘm. NejΦast∞ji si vypisuje v╣echna slova, poΦφtß jejich vßhu a dßvß je do relace s adresou strßnky.

Vßha (d∙le╛itost)

P°i hledßnφ slova vyplivne databßze nap°ed adresy stßnek, na kter²ch mß hledanΘ slovo velkou vßhu. Jak se vßha poΦφtß? Aneb jak se poznß, zda je slovo pro strßnku charakteristickΘ? P°edev╣φm tak, ╛e se danΘ slovo vyskytuje v titulku strßnky, v klφΦov²ch slovech, v popisu a v nadpisech. Je nutno poznamenat, ╛e ka╛d² vyhledßvaΦ to poΦφtß jinak

Co vyhledßvaΦe sledujφ Jak je to v HTML D∙le╛itost (vßha)
titulek <title>text titulku</title> obrovskß
klφΦovß slova <meta name=keywords
content="slovo, slovo">
znaΦnß,
n∞kdy ╛ßdnß (Google)
popis (description) <meta name=description
content="StruΦn² popis">
r∙znß
nadpis 1. ·rovn∞ <H1>Nadpis</h1> znaΦnß
ostatnφ nadpisy <Hn>Nadpis</hn> spornß
zaΦßtek strßnky <body>N∞kolik prvnφch slov ... v∞t╣φ ne╛ malß
adresa URL jmΘno souboru vΦetn∞ cesty r∙znß
text odkaz∙ mφ°φcφch na tu strßnku z jinΘho serveru <a href="adresa">text odkazu</a> u n∞kter²ch robot∙ obrovskß (Google)
alty u obrßzk∙ <img alt="zßstupn² text" ...> malß
text strßnky prost∞ text malß

V tabulce jsem nastφnil pouze nejΦast∞j╣φ kritΘria. Je╣t∞ jednou musφm zd∙raznit, ╛e se r∙znΘ vyhledßvaΦe v poΦφtßnφ vßhy opravdu velmi li╣φ. Nap°φklad Google pr² zcela ignoruje klφΦovß slova. Nebo existujφ specializovanφ roboti, kte°φ hledajφ t°eba jenom obrßzky nebo poΦet odkaz∙.

KlφΦovß slova

Velk² v²znam b²vß p°ipisovßn klφΦov²m slov∙m (keywords) a popisu (description). Jejich popis mßm u meta tag∙. V zßsad∞ se dß °φci, ╛e keywords by m∞l b²t seznam slov charakteristick²ch pro danou strßnku. Nap°φklad zßpis klφΦov²ch slov pro tuto strßnku:

<meta name="keywords" content="vyhledßvaΦ,indexovßnφ,meta,keywords,description,robot,robots.txt, user-agent, disallow, altavista, google">

V²znam klφΦov²ch slov v poslednφ dob∞ (my╣leno 2002) pon∞kud upadß, proto╛e spousta lidφ do nich pφ╣e nesmysly a marketingovΘ ╛vßsty. Auto°i robot∙ to v∞dφ, a tak v²znam keywords v kritΘriφch sni╛ujφ.

Vyhledßvßnφ

Dotazuje databßze a vyhazuje to v²sledky.

Forma v²sledk∙

Je zajφmavΘ pop°em²╣let, jak se moje nalezenß strßnka zobrazφ. NejΦast∞ji se zobrazuje titulek strßnky (obsah tagu <title></title>), pod nφm t°i r∙znΘ v∞ci:

  1. Bu∩to obsah meta tagu description,
  2. nebo prvnφch n∞kolik slov ze zaΦßtku strßnky
  3. nebo kusy textu kolem hledanΘho v²razu.

NejΦast∞ji to b²val prßv∞ description (tak╛e je dobrΘ jej zadßvat), poslednφ dobou vφt∞zφ kusy textu kolem hledanΘho v²razu (zejm. Google, Webfast a Jyxo). Hlavn∞ je ale t°eba mφt sprßvn∞ zadan² titulek strßnky.

╪azenφ v²sledk∙

R∙znΘ vyhledßvaΦe °adφ v²sledky r∙zn∞. Obecn∞ se dß °φci, ╛e Φφm vφce se hledanß slova na strßnce vyskytujφ a Φφm majφ v²znamn∞j╣φ pozici (titulky, nadpisy), tφm je strßnka °azena v²╣e. Sleduje se i text odkaz∙ mφ°φcφch na strßnku, zda obsahuje hledanΘ slovo. Algoritmy ale nikdo p°esn∞ neznß a li╣φ se nejen od vyhledßvaΦe k vyhledßvaΦi, ale nap°. na Google pr² ka╛d² m∞sφc. Proto nemß cenu psßt sem vφc, ne╛ odkaz na archiv ΦeskΘ konference SEO (search engine optimalization).

Page Rank

Dal╣φ metodou je takzvan² PageRank (PR), kter² pou╛φvß Google (GPR) a poslednφ dobou mnoho jin²ch vyhledßvaΦ∙ (aktualizovßno 2003). PR vyjad°uje n∞co jako v∞rohodnost nebo d∙le╛itost strßnky. Page Rank ovliv≥uje °azenφ v²sledk∙, nikdo ale p°esn∞ nevφ jak (asi podstatn∞). JakΘ majφ va╣e strßnky Page Rank se m∙╛ete dozv∞d∞t, pokud si stßhnete a nainstalujete Google Toolbar, co╛ je takovß li╣tiΦka do prohlφ╛eΦe.

GPR se poΦφtß podle toho, kolik strßnek danou strßnku odkazuje, Φφm vφce, tφm lep╣φ PageRank. Navφc odkazy ze strßnek s vy╣╣φm PR majφ v∞t╣φ vßhu. Google Page Rank se poΦφtß postupn²m p°epoΦφtßvßnφm (iteracφ). Existuje na to vzoreΦek. Vφce o Google.

Nejlep╣φ Φesk² vyhledßvaΦ Jyxo mß navφc i JyxoRank, kter² se poΦφtß podle toho, z kolika r∙zn²ch domΘn druhΘ ·rovn∞ vedou na strßnku odkazy. Podle JyxoRanku °adφ v²sledky svΘho hledßnφ, ale tΘ╛ je dßvß k dispozici Atlasu a Seznamu pro °azenφ odkaz∙ v sekcφch (psßno v lΘt∞ 2003).

╚e╣tina

S Φe╣tinou jsou spojeny dv∞ zßsadnφ otßzky, kterΘ spolu nesouvisejφ:

  1. Jak vyhledßvat hßΦkovanß a Φßrkovanß slova?
  2. Jak poznß vyhledßvaΦ, ╛e je strßnka Φesky? (T°eba Altavista nebo Google to umφ poznat)

HßΦky a Φßrky

D°φve bylo nutno zadßvat dotaz dvakrßt. Jednou bez diakritiky, podruhΘ s nφ. Vyskytujφ-li se navφc ve slov∞ znaky ╛, ╣ a ╗, bylo t°eba opakovat hledßnφ v jinΘm k≤dovßnφ. Dnes (aktualizovßno 2003) u╛ to nenφ pot°eba, v╣echny modernφ vyhledßvaΦe rozum∞jφ Φe╣tin∞. Um∞jφ rozeznat v╣echny hlavnφ znakovΘ sady iso-8859-2, windows-1250 i UTF-8.

N∞kte°φ hloup∞j╣φ k≤dovßnφ Φe╣tiny ignorujφ a zapisujφ slova tak, jak je vidφ v ascii k≤du. To znamenß, ╛e t°eba pφsmenko ╣ si zapφ╣ou jednou jako $185, jindy jako $154. V∞t╣ina modernφch vyhledßvaΦ∙ si texty ale p°evßdφ do unicode.

Rozpoznßnφ jazyka

Jak vyhledßvaΦe poznajφ, v jakΘm jazyce je text? R∙zn∞. Majφ na to Φty°i mo╛nΘ zp∙soby:

  1. hledajφ meta deklaraci jazyka: <meta http-equiv="Content-Language" content="cs">
  2. hledajφ atribut lang=cs v jakΘmoli tagu
  3. provßd∞jφ heuristickou anal²zu: Φtou text a sna╛φ se poΦφtat slova charakteristickß pro ten kter² jazyk (pro Φe╣tinu nap°. "se", "ale" nebo "je").
  4. orientujφ se podle generickΘ domΘny (.cz) co╛ je ale velmi nespolehlivΘ

Proto╛e ╛ßdnß z popsan²ch metod nenφ spolehlivß (oznaΦenφ jazyka ve v∞t╣in∞ strßnek nenφ, heuristickß anal²za je pracnß), nenφ divu, ╛e se vyhledßvaΦe obΦas v rozpoznßnφ jazyka pletou.

P°φklady vyhledßvaΦ∙

╚eskΘ:

Aktualizovßno v Φervnu 2003, za dopln∞nφ d∞kuji Michalu Illichovi (·nor 2003).

AnglickΘ:

Trocha mytologie

V╣echno, co jsem psal na tΘto strßnce, je do znaΦnΘ mφry nejistΘ. Proto╛e nejsem permanentn∞ p°ipojen na net, nemohu chovßnφ vyhledßvaΦ∙ testovat, stejn∞ bych na to nem∞l Φas. V∞t╣inu informacφ jsem n∞kde Φetl nebo p°evzal ze specifikacφ. A v tom je prßv∞ problΘm.

Domnφvßm se, ╛e ka╛d², kdo popisuje meta tagy a v∙bec chovßnφ vyhledßvaΦ∙, takΘ jenom odn∞kud opisuje, upravuje a p°ejφmß. Obßvßm se, ╛e skoro nikdo ned∞lß v oblasti vyhledßvaΦ∙ seri≤znφ v²zkum. Proto jsou informace na tΘto strßnce jist²m druhem m²tu, kter² se p°edßvß z generace na generaci; pravdivΘ jßdro v n∞m sice je, ale kdo vφ, jak je to opravdu?

Koncem roku 2002 se objevila Φeskß konference SEO (Search Engine Optimalization), tak se snad dozvφme n∞co zajφmavΘho a novΘho.

Vizte tΘ╛: Katalogy, Google, Meta tagy, sprßva soubor∙, nastavenφ serveru, Φe╣tina na webu, moje anal²za ·sp∞╣nosti katalog∙, Hledßnφ na vlastnφm serveru, Titulek strßnky
Odkazy mimo: Seznam Φesk²ch vyhledßvacφch server∙ Petra Kocny, ╚lßnky o internetovΘm marketingu od Marka Prokopa, Zobecn∞nφ PageRanku Michal Illich, ObecnΘ rady pro optimalizaci Petr Weida

o tvorb∞, ·dr╛b∞ a zlep╣ovßnφ internetov²ch strßnek

Pφ╣e Yuh∙, dusan@pc-slany.cz

Hledßnφ:

Jak psßt web: www.jakpsatweb.cz

Pφ╣e Yuh∙: http://dusan.pc-slany.cz, mail: dusan@pc-slany.cz

Poslednφ aktualizace 10.12.2003