úterý 3. února 2009

Google Custom Search API

Google kromě svého "klasického vyhledávače" nabízí možnost vytvořit si vlastní vyhledávač a umístit jej na své stránky. S takovým vyhledávačem můžete prohledávat jen jednu, nebo více, Vámi určených stránek a nastavovat jednotlivým stránkám prioritu. Takto lze snadno dodat Vašim uživatelům výsledky hledání, které oni očekávají (je jasné, že pokud vášnivý rybář hledá rybu, tak ho asi nezajímá např. jídelníček v restauraci).

... Pokračování

Jak vytvořit vlastní vyhledávač?


První krok
Ještě před vytvořením vlastního vyhledávače musíte mít účet u Google (Google Account). Vytvoření účtu je zdarma a lze ho vytvořit v průběhu tvorby vyhledávače.

Pokud se přihlásíte (po případném vytvoření) ke svému Google účtu a přejdete na adresu http://www.google.com/coop/manage/cse/create/1, dostáváte se k vlastní tvorbě vyhledávače.

Na vytvářecí stránce je potřeba zadat jméno vyhledávače, jeho popis a další vlastnosti. Důležitou částí procesu je volba, kde se bude hledat – můžete si vybrat prohledávání pouze Vámi zvolených stránek, celého webu s prioritou kladenou na Vámi zvolené stránky nebo celého webu.
Dále je potřeba zvolit stránky, které se mají prohledávat nebo preferovat. Je možné použít konkrétní stránky nebo je možné použít zástupnou * jako wildcard.

Získání xml souboru
Pokud v nastavení Vašeho vyhledávače přejdete na stránku "Advanced", můžete si zde stáhnout xml soubory, které jsou srdcem Vašeho vyhledávače. Pokud jej upravíte, můžete jej zde nahrát zase zpátky. Jde hlavně o soubor s anotacemi. Anotace jsou vlastně stránky, které chcete prohledávat a jakou prioritu při hledání mají.

Ukázkový soubor s anotacemi:
<?xml version="1.0" encoding="UTF-8" ?>
<Annotations start="0" num="3" total="3">
 <Annotation about="*.gug.cz/*" score="1" timestamp="0x0004511adac6b81c" href="CgoqLmd1Zy5jei8qEJzwmtato5QC">
  <Label name="_cse_to_-t5zgz2s" />
  <AdditionalData attribute="original_url" value="*.gug.cz/*" />
 </Annotation>
 <Annotation about="groups.google.com/group/*gugcz*" score="1" timestamp="0x0004511adac6b81a" href="Ch9ncm91cHMuZ29vZ2xlLmNvbS9ncm91cC8qZ3VnY3oqEJrwmtato5QC">
  <Label name="_cse_to_-t5zgz2s" />
  <AdditionalData attribute="original_url" value="groups.google.com/group/*gugcz*" />
 </Annotation>
 <Annotation about="vyvojari.gug.cz/*" score="1" timestamp="0x0004511adac6b813" href="ChF2eXZvamFyaS5ndWcuY3ovKhCT8JrWraOUAg">
  <Label name="_cse_to_-t5zgz2s" />
  <AdditionalData attribute="original_url" value="vyvojari.gug.cz/*" />
 </Annotation>
</Annotations>


Anotace na vlastním serveru
Pokud chcete, můžete soubor s anotacemi umístit na svůj server resp. kamkoliv mimo Google.

Do anotačního xml souboru pak stačí vložit pouze odkaz, kde tento soubor je:
<Include type="Annotations" href="http://mujweb.cz/mojeanotace.xml" />

XML soubory i lze kombinovat:

<GoogleCustomizations>

Klasická anotace:
<Annotations file="jidlo-anotace.xml">
 <Annotation about="www.jidlo-piti-ziti.cz/*">
  <Label name="jidlo"/>
  <Comment>Vse o jidle.</Comment>
 </Annotation>
</Annotations>


A připojení externího souboru:
<Include type="Annotations" href="http://mujweb.cz/mojeanotace.xml" />

</GoogleCustomizations>


Anotačních souborů může být více. Dokumentace popisuje i limity počtu souborů, resp. anotací (v době psaní článku je max. počet anotací 5000 nebo 50 souborů jinde).

Změna váhy odkazu
Po vytvoření vyhledávače se může stát, že výsledky jím vracené nejsou to, co jste si představovali.
Pro tento případ je možné upravit váhu výsledků hledání.

Příklad kódu:
<BackgroundLabels>
 <Label name="_cse_hwbuiarvsbo" mode="FILTER" weight="0.65"/>
 <Label name="_cse_exclude_hwbuiarvsbo" mode="ELIMINATE"/>
</BackgroundLabels>


V příkladu výše dochází ke změněn váhy výsledků pomocí "mode":
FILTER: V hledání budou pouze stránky s tímto tagem. Filter může nabývat váhy 1 až -1, pokud váha není definována, je nastavena na 0.7. Hodnota 1 je nejvzšší váha, naopak -1 se rovná eliminaci.

ELIMINATE: Takto otagované stránky ve výsledcích zobrazována, Eliminate váhu nemá.

BOOST: Do výsledků jsou zahrnuty všechny stránky, ale ty označené BOOST jsou výše či níže v seznamu výsledků. BOOST může mít hodnotu v rozsahu -1 až 1. Hodnota -1 výsledky bude řadit na konec, naopak 1 na první místa hledání. Pokud hodnota není zadána, je boost nastaven na 0.7.

Parametr top
<Label name="best_resource" mode="FILTER" top="3"/>

Pomocí top lze takto otagovanou stránku nastavit na první místo hledání, parametrem je celé číslo, které udává jak vysoko výsledek bude – zde to bude do třetího místa (nikoliv na třetím místě).

Skóre
Podobně jako možnosti nastavení váhy, je možné využít i skóre, které lze jednotlivým stránkám přiřazovat:
<Annotations>
 <Annotation about="clanky.gug.cz/*" score="1.0">
  <Label name="vision_label"/>
 </Annotation>

 <Annotation about="zkusenosti.gug.cz/*" score="0.7">
  <Label name="vision_label"/>
 </Annotation>
</Annotations>


V příkladu výše budou výsledky ukazující na clanky.gug.cz výše než ty ze zkušenosti.gug.cz.

Závěrem
Google Custom Search je silný nástroj, který umožňuje zcela využít potenciálu indexu, který stojí za vyhledávačem na google.com. Pokud máte stránky, které chcete prohledávat, Google Custom Search stojí rozhodně za úvahu. Text výše by Vás měl uvést do základů vlastního vyhledávače. Další informace naleznete na stránkách v odkazech níže.

Zajímavé odkazy:
Vyhledávač pro GUG.cz: http://www.google.cz/coop/cse?cx=011401745551477219962%3Agknwkhneuas


Zdroj: code.google.com

Autor: George Czech

Žádné komentáře: