sie
24
2012

Jak rozpoznać Googlebot – skrypt PHP

Google logo Dla osób zainteresowanych tematem Google w dzisiejszym odcinku z serii “krótkie, łatwe i potrzebne” opiszę jak rozpoznać na swojej stronie bota/crawlera wyszukiwarki, nie tylko Google :) Oczywiście zrobimy to przy pomocy skryptu PHP.
Może zaistnieć potrzeba rozpoznania kto ogląda daną stronę, np. w celu przedstawienia ceny w sklepie w odpowiedniej walucie. Ostatnio miałem do rozwiązania następujący problem…

Jeden z moich klientów chciał, aby osoby wchodzące na sklep z takich krajów jak USA, Kanada widzieli cenę w dolarach, natomiast z Polski i pozostałych, w złotówkach. Zrobiłem rozpoznanie po adresie IP z jakiego kraju dane wejście pochodzi i warunkiem if (.) {.} dałem odpowiednie podstawienie zmiennej odpowiedzialnej za walutę. OK, jest jedno ale… Google też pochodzi z USA, tzn. serwery Google mają IP z USA :) W ten sposób w wynikach wyszukiwań w opisach stron wszystko było przedstawione w dolarach. Taki wygląd mógł odstraszyć klientów, np. z Polski, jeżeli sklep działa globalnie. Dlatego też należy dodać rozpoznawanie według “User Agent String”. Oto krótki fragment kodu, który nam w tym pomoże:

Objaśnienie:
preg_match – Zwraca wartości 1 lub 0, w zależności gdy znajdzie dany ciąg znaków w elemencie tablicy $_SERVER['HTTP_USER_AGENT']. Po ograniczniku #, modyfikator “s” rozpoznaje znak kropki we wzorcu jako nowe linie, natomiast “i” oznacza szukanie niezależnie od wielkości znaku. Polecam poznanie wszystkich modyfikatorów w bibliotece PCRE dla wyrażeń regularnych.

Pełną listę crawlerów wyszukiwarek znajdziecie na stronach:

Jako ciekawostka – specjalne API do rozpoznawania agentów http://www.useragentstring.com/pages/api.php. Zwraca informacje o agencie w formacie JSON, po wysłanym zapytaniu metodą GET.

Podobne tematy

Autor wpisu: Arkadiusz Krakiewicz

Programista i właściciel sklepu jednocześnie, dzięki temu rozumie potrzeby osób prowadzących sprzedaż w internecie. Od 2006 związany z eCommerce. Zaczynał jako freelancer tworząc sklepy oraz strony www. Aktualnie zajmuje się: programowanie w PHP, Symfony 2, Android, PrestaShop, osCommerce, OpenCart, WordPress.

3 komentarzy + Dodaj komentarz

  • Keep on writing, great job!

  • Dzięki, tego szukałem. Wcześniej kombinowałem z językiem przeglądarki, ale to było za mało prezycyjne.

  • Świetny artykuł i pomocny.

Dodaj komentarz

Anti-Spam

O mnie

Arkadiusz Krakiewicz
Programista aplikacji webowych dla branży eCommerce. Jednocześnie jako właściciel sklepu zna od "podszewki" potrzeby osób prowadzących sprzedaż w internecie.
W swoich rozwiązaniach stawia na funkcjonalność i wydajność aplikacji pod kątem obsługi klienta.
[X]
Strona korzysta z plików cookies w celu realizacji usług i zgodnie z Polityką Plików cookies.
Możesz określić warunki przechowywania lub dostępu do plików cookies w Twojej przeglądarce.