как обнаружить поисковую систему на моем сайте? как phpBB - PullRequest
5 голосов
/ 20 июля 2009

Есть ли способ обнаружить поисковые системы или сканеры на моем сайте. я видел в phpBB у администратора, который мы можем видеть и разрешать поисковым системам, а также мы видим последний визит бота (например, Google Bot).

любой скрипт на PHP? Не Google Analytic или аналогичное приложение. Мне нужно реализовать это для моего блога, я думаю, есть какой-то способ узнать?

Ответы [ 5 ]

10 голосов
/ 20 июля 2009

Вы можете перейти либо по IP-адресам, либо по строке «User-Agent», которую вам посылает бот или веб-браузер.

Когда робот Google (или большинство других роботов с хорошим поведением) посещает ваш веб-сайт, он отправляет вам переменную $ _SERVER ['HTTP_USER_AGENT'], которая определяет, кто они такие. Вот некоторые примеры:

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; ru-ru) AppleWebKit / 531.4 (KHTML, как Gecko)

Вы можете найти еще много примеров на этих сайтах: текст ссылки текст ссылки

Затем вы можете использовать PHP, чтобы изучить эти строки агента пользователя и определить, является ли пользователь поисковой системой или нет. Я часто использую что-то подобное:

$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!'); } 

Помните, что ни один метод обнаружения (Google Analytics или другой пакет статистики или иным образом) не будет точным на 100%. Некоторые веб-браузеры позволяют устанавливать пользовательскую строку пользовательского агента, а некоторые неправильно работающие сканеры могут вообще не отправлять строку пользовательского агента. Этот метод, вероятно, может быть эффективен для 95% + сканеров / посетителей.

5 голосов
/ 20 июля 2009
  1. Вы можете попытаться обнаружить их, используя их строку user-agent. Список их можно найти здесь: http://www.botsvsbrowsers.com/

    Поисковые системы обычно используют слова crawler и robot .

  2. Поисковые системы - почти единственный пользователь интернета, который посещает robots.txt .

  3. Некоторые IP-адреса, как известно, являются роботами, такими как GoogleBot.

1 голос
/ 19 июня 2015

Использование Библиотека Piwik Device Detector .

Он автоматически обнаруживает множество ботов и автоматизированные службы мониторинга.

0 голосов
/ 20 июля 2009

Google Analytics позволит вам увидеть статистику сканирования для вашего сайта.

0 голосов
/ 20 июля 2009

Альтернатив Google Analytics, которые позволяют хранить ваши данные:

Piwik реализован на PHP и работает так же, как GA. Два других являются анализаторами журналов веб-сервера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...