ďťż

[PHP] Jak rozpoznać wyszukiwarki? Cechy charakterystyczne

       

Podstrony


telcocafe

Chcę wyświetlić listę wyszukiwarek, które przeglądają witrynę. Google wykrywam tak:if(strpos($_SERVER['HTTP_USER_AGENT'],'Googlebot')! ==false) { $name = 'Google'; }Wywoływanie 10 razy funkcji strpos(), aby wykryć inne przeglądarki, jest raczej bez sensu. Jak można to zrobić inaczej - najlepiej tak, aby wykorzystać instrukcję switch? Albo jak sprawdzić, czy użytkownik NIE jest wyszukiwarką?

Jakie są cechy charakterystyczne? Testując konkretne wartości, na HTTP_USER_AGENT polegać nie można - powstanie nowa wersja Googlebota (np. Googlebot/5.0) i trzeba aktualizować skrypt. Adresy IP raczej też są niepewne. Może HOST?



Przydatność info jakie boty odwiedzają stronę jest żadna, ale jak ktoś musi to da się to zrobić. Wrzuć logowanie HTTP_USER_AGENT na ruchliwej stronie to sobie listę botów zrobisz. Zazwyczaj bot podaje link do strony wyszukiwarki dla której odwala robotę. Googlebot to wiadomo Google, Slurp to Yahoo, reszta ci powie skąd się wzięła :) czy też przejrzyj kodzik jakiejś wtyczki do forum dodającej info o botach do osób online.

//niedoczytałem ;)
<? $boty=array('Googlebot','Bot2','Bot3','Bot4'); $names=array('Google','Bot2','Bot3','Bot4'); foreach($boty as $check){ $i+='1'; if(ereg($check,$_SERVER['HTTP_USER_AGENT'])){ $name=$names[$i]; } else{ $name='user'; } } ?>
Użytkownik użytkownik anonimowy edytował ten post 16 sierpień 2009, 14:56
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.