2009-07-20 2 views
5

C'è un modo per rilevare motori di ricerca o crawler sul mio sito. ho visto in phpBB presso l'admin possiamo vedere e consentire i motori di ricerca e anche possiamo vedere l'ultima visita del bot (come Google Bot).come rilevare le visite al motore di ricerca sul mio sito? come phpBB

qualsiasi script in PHP? Non Google Analytic o lo stesso tipo di applicazione. ho bisogno di implementarlo per il mio blog, penso che ci sia un modo per scoprirlo?

risposta

10

È possibile passare tramite gli indirizzi IP o la stringa "User-Agent" che il bot o il browser Web inviano.

Quando Googlebot (o la maggior parte degli altri robot ben funzionanti) visita il tuo sito web, ti invieranno una variabile $ _SERVER ['HTTP_USER_AGENT'] che identifica ciò che sono. Alcuni esempi sono:

Googlebot/2,1 (+ http://www.google.com/bot.html)

NutchCVS/0,8-dev (Nutch; http://lucene.apache.org/nutch/bot.html

Baiduspider + (+ http://www.baidu.com/search/spider_jp.html)

Mozilla/5.0 (X11; U; Linux i686; en-US) AppleWebKit/531,4 (KHTML, come Gecko)

Si possono trovare molti altri esempi in questi siti web: link text link text

Si potrebbe quindi utilizzare PHP per esaminare quelle stringhe user-agent e determinare se l'utente è un motore di ricerca o meno. Io uso spesso qualcosa di simile:

$searchengines = array(
    'Googlebot', 
    'Slurp', 
    'search.msn.com', 
    'nutch', 
    'simpy', 
    'bot', 
    'ASPSeek', 
    'crawler', 
    'msnbot', 
    'Libwww-perl', 
    'FAST', 
    'Baidu', 
    ); 
$is_se = false; 
foreach ($searchengines as $searchengine){ 
    if (!empty($_SERVER['HTTP_USER_AGENT']) and 
      false !== strpos(strtolower($_SERVER['HTTP_USER_AGENT']), strtolower($searchengine))) 
    { 
      $is_se = true; 
      break; 
    } 
} 
if ($is_se) { print('Its a search engine!'); } 

Ricordate che nessun metodo di rilevazione (Google Analytics o un altro pacchetto di statistiche o altro) sta per essere accurato al 100%. Alcuni browser Web consentono di impostare una stringa utente-agente personalizzata e alcuni crawler Web malintenzionati potrebbero non inviare alcuna stringa user-agent. Questo metodo può essere probabilmente efficace per il 95% + di crawler/visitatori.

+0

Penso che questo mi stesse guardando .... – coderex

0

Alternative a Google Analytics che permettono di mantenere i vostri dati:

Piwik è implementato in PHP e funziona nello stesso modo come GA . Gli altri due sono analizzatori di log del server Web.

-2

Google Analytics ti consente di visualizzare le statistiche di scansione per il tuo sito.

5
  1. È possibile provare a rilevarli utilizzando la stringa di user-agent. Un elenco di essi può essere trovato qui: http://www.botsvsbrowsers.com/

    I motori di ricerca tendono ad usare le parole cingolati e robot.

  2. I motori di ricerca sono quasi l'unico utente Internet che visita lo robots.txt.

  3. Ci sono alcuni IP noti per essere bot come GoogleBot.