Grupa
MagazynyInternetowe.pl
Google AJAX Search API to biblioteka JavaScript zapewniająca programistyczny dostęp do zasobów wyszukiwarki Google. Początkowo dostępne wyłącznie jako zestaw skryptów JavaScript, obecnie Google AJAX Search API stosuje model REST. Pozwala to na implementację wyszukiwarek zarówno w JavaScript/AJAX, jak i po stronie serwera, np. w PHP.
Włodzimierz Gajda
Biblioteka Google AJAX Search API zastąpiła wycofane pod koniec 2006 roku rozwiązanie o nazwie Google SOAP Search API. Obecny interfejs API wyszukiwarki Google jest dostępny pod dwoma postaciami: jako biblioteka JavaScript oraz jako zestaw adresów URL, realizujących usługę w modelu REST.
Biblioteka JS pozwala na osadzenie wyszukiwarki WWW w kodzie HTML, natomiast model REST udostępnia zasoby Google skryptom przetwarzanym po stronie serwera (np. PHP, Perl).
Usługi Google AJAX Search API są bezpłatne, lecz wymagają rejestracji i generowania kluczy. Po utworzeniu konta Google (możemy oczywiście wykorzystać istniejące konto Google Analitycs, Google AdSense czy Gmail) należy odwiedzić stronę http://code.google.com/apis/ajaxsearch/signup.html, przedstawioną na rysunku 1.
Rys. 1. Generowanie klucza aplikacji
(http://code.google.com/apis/ajaxsearch/signup.html)
W formularzu wprowadzamy adres URL aplikacji, która będzie wykorzystywała Google API, np.: http://example.com/szukaj
Powyższy adres pozwoli na korzystanie z wygenerowanego
klucza na stronach, których adres
rozpoczyna się od http://example.com/szukaj, np.:
http://example.com/szukaj/index.html
http://example.com/szukaj/app1/index.php
http://example.com/szukaj/a/b/c/
Wyszukiwarkę AJAX-ową osadzamy w kodzie HTML w dwóch miejscach:
Pierwszy ze znaczników script widocznych na listingu 1 odpowiada za ustalenie klucza aplikacji (key=abc...). Jako wartość parametru key należy oczywiście podać klucz wygenerowany na stronie z rysunku 1.
1. <html> 2. <head> 3. ... 4. <script src="http://www.google.com/jsapi?key=abc..." type="text/javascript"></script> 5. <script type="text/javascript"> 6. google.load("search", "1"); 7. function OnLoad() 8. { 9. var searchControl = new google.search.SearchControl(); 10. searchControl.addSearcher(new google.search.WebSearch()); 11. searchControl.draw(document.getElementById("searchcontrol")); 12. } 13. google.setOnLoadCallback(OnLoad); 14. </script> 15. </head> 16. <body> 17. <div id="searchcontrol">Loading... 18. </div> 19. </body> 20. </html>
Kod JS zawarty w drugim elemencie script zawiera:
Wewnątrz funkcji OnLoad() tworzymy kontrolkę do wyszukiwania oraz ustalamy, że ma ona być wyświetlana wewnątrz elementu HTML o identyfikatorze searchcontrol. Decyduje o parametrze funkcji getElementById().
Strona zawierająca powyższy skrypt jest przedstawiona na rysunku 2.
Rys. 2. Strona z listingu 1
Po wprowadzeniu w formularzu hasła magazyn internet, wyniki wyszukiwania pojawiają się poniżej formularza, co ilustruje rysunek 3.
Rys. 3. Strona z rysunku 2 po wyszukaniu hasła
magazyn internet
Wyszukiwarka zawiera kontrolki zaznaczone na rysunku 4. Pozwalają one zmienić liczbę wyświetlanych wyników.
Rys. 4. Kontrolki do modyfikacji wyglądu wyszukiwarki
Działanie wyszukiwarki możemy modyfikować programowo. Pozwalają na to opcje klasy WebSearch oraz metody klasy SearchControl. Skrypt przedstawiony na listingu 2 będzie automatycznie (tj. po wejściu na stronę) rozpoczynał wyszukiwanie. Wyniki wyszukiwania będą prezentowane w postaci rozwiniętej listy.
1. function OnLoad() 2. { 3. options = new GsearcherOptions(); 4. options.setExpandMode(GSearch Control.EXPAND_MODE_OPEN); 5. var searchControl = new google.search.SearchControl(); 6. searchControl.addSearcher(new google.search.WebSearch(), options); 7. searchControl.draw(document. getElementById("searchcontrol")); 8. searchControl.execute("Internet Maker"); 9. }
Powiązane publikacje
Komentarzy: 2
To pozwala na przeszukanie tylko internetu. Jednak jest pewien przypadek jest pewnie jakas funkcja ktora pozwoli na przeszukanie w googlach wedlug slowa tylko twojej strony www. Trzeba po prostu przejrzec API Googla dla tego modulu. Np jak wpiszesz w wyszukiwarce "wifi site:http://wifi.owe.pl" wyszuka wszystkie wyniki dla slowa wifi ze strony wifi.owe.pl
Czy pozwala to na przeszukiwanie tylko internetu czy też własnej strony jak starsze rozwiązania.
Nie wiem czemu ale pana artykuły zawsze ciężko mi się czyta, takie lekko chaotyczne i niedopowiedziane ![]()
Artykuły tego autora:
Novell wraz z grupą partnerów zaprasza wszystkich chętnych do udziału w międzynarodowym konkursie (www.howdoyoulinux.com) na krótki film wideo w najciekawszy sposób przedstawiający zastosowania systemu Linux.
Polecamy:
Na skróty:
Magazyny Internetowe| Co za ile| Programy| Praca| Magazyn Internet| Internet Maker| Web Toster| ForumNasze serwisy: