Техническая поддержка сервиса Quadro.Boards

Объявление

Новости сервиса

О форуме

Quadro.Support – это форум технической поддержки различных проектов и сервисов Quadro.Systems LLC, на котором грамотные технические специалисты всегда смогут помочь вам в решении проблем, или же подсказать ответы на самые сложные вопросы. Так же на форуме собрана обширная база знаний по различным аспектам наших сервисов. Не забывайте пользоваться поиском ;)

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Техническая поддержка сервиса Quadro.Boards » Скрипты и дополнения » Идентифицирование поисковых ботов


Идентифицирование поисковых ботов

Сообщений 1 страница 7 из 7

1

Попробовал чуть минимизировать скрипт От Romych

В HTML Низ

<!-- Поисковые боты (расширенный список)-->
<div class=botlist style='display:none'>
<p>Yandex,#9E8DA7,95.108.,77.88.,93.158.</p>
<p>Google,#9E8DA7,66.249.</p>
<p>Mail,#9E8DA7,94.100.,217.69.134.,217.69.136.</p>
<p>Rambler,#9E8DA7,81.19.</p>
<p>Yahoo!,#9E8DA7,67.195.,72.30.,74.6.,202.160.</p>
<p>Bing,#9E8DA7,207.46.,65.52.,65.55.,157.55.</p>
<p>Baidu,#9E8DA7,119.63.,123.125.,220.181.</p>
<p>Ask,#9E8DA7,66.235.</p>
<p>Ezooms,#9E8DA7,208.115.111.</p>
<p>Aport,#9E8DA7,194.67.</p>
</div>

var L0=$("#navlogout").html(),L=$(".punbb").attr("id");if((L0!=null)&&(GroupID<3)&&(L=="pun-index"||L=="pun-online")){
var Botlist={},L=[];$(".botlist p").each(function(j){L[j]=$(this).text().split(",");Botlist[L[j][0]]=L[j];});
$.ajax({type: 'GET',url: 'online.php',
success: function(data){ $(data).find('div#pun-online td.tcl:first-child').map(function () {
var OnlineIP=$(this).find('a').attr('title');Str='<a href="/online.php" class="bot" title="';
for(var key in Botlist){
    for(i=2; i< Botlist[key].length; i++){
    var pattern = "^"+Botlist[key][i],regexp  = new RegExp(pattern,"ig");
       if(OnlineIP.search(regexp)!= -1) {
       var L=Str + OnlineIP + '"><span style="color:'+Botlist[key][1]+';" >&nbsp;, ' + Botlist[key][0] + '[bot]</span></a>';
       $('li#onlinelist.item5 span:first').append(L);//alert(L)
       };}}; }); } });

$('div#pun-online td.tcl a:contains("Гость")').map(function () {// alert("B")
OnIP=$(this).attr('title');
for(var key in Botlist){
    for(i=2; i< Botlist[key].length; i++){ //alert(Botlist[key][0]+Botlist[key][i])
       var pattern = "^"+Botlist[key][i],regexp  = new RegExp(pattern,"ig");
       if(OnIP.search(regexp)!= -1) {
       $(this).html(Botlist[key][0]+'[bot]').css({'color': Botlist[key][1]});
       };}};});}
</script>

Совсем ужатый вариант:

<!-- Поисковые боты (расширенный список)-->
<div class=botlist style='display:none'>
<p>Yandex,#9E8DA7,95.108.,77.88.,93.158.</p>
<p>Google,#9E8DA7,66.249.</p>
<p>Mail,#9E8DA7,94.100.,217.69.134.,217.69.136.</p>
<p>Rambler,#9E8DA7,81.19.</p>
<p>Yahoo!,#9E8DA7,67.195.,72.30.,74.6.,202.160.</p>
<p>Bing,#9E8DA7,207.46.,65.52.,65.55.,157.55.</p>
<p>Baidu,#9E8DA7,119.63.,123.125.,220.181.</p>
<p>Ask,#9E8DA7,66.235.</p>
<p>Ezooms,#9E8DA7,208.115.111.</p>
<p>Aport,#9E8DA7,194.67.</p>
</div>

<script>var L0=$("#navlogout").html(),L=$(".punbb").attr("id");if((L0!=null)&&(GroupID<3)&&(L=="pun-index"||L=="pun-online")){var Botlist={},L=[];$(".botlist p").each(function(j){L[j]=$(this).text().split(",");Botlist[L[j][0]]=L[j]});$.ajax({type:'GET',url:'online.php',success:function(data){$(data).find('div#pun-online td.tcl:first-child').map(function(){var OnlineIP=$(this).find('a').attr('title');Str='<a href="/online.php" class="bot" title="';for(var key in Botlist){for(i=2;i<Botlist[key].length;i++){var pattern="^"+Botlist[key][i],regexp=new RegExp(pattern,"ig");if(OnlineIP.search(regexp)!=-1){var L=Str+OnlineIP+'"><span style="color:'+Botlist[key][1]+';" >&nbsp;, '+Botlist[key][0]+'[bot]</span></a>';$('li#onlinelist.item5 span:first').append(L);}}}})}});$('div#pun-online td.tcl a:contains("Гость")').map(function(){OnIP=$(this).attr('title');for(var key in Botlist){for(i=2;i<Botlist[key].length;i++){var pattern="^"+Botlist[key][i],regexp=new RegExp(pattern,"ig");if(OnIP.search(regexp)!=-1){$(this).html(Botlist[key][0]+'[bot]').css({'color':Botlist[key][1]})}}}})}</script>

Кстать должен исчезнуть трабл - с массовостью сидения в "Смотрит список активных пользователей"

автор: Deff
ссылка на оригинал

Теги: Скрипты и дополнения, Дополнение статистики

+1

2

Из этих двух вариантов какой-то скрипт лучше другого или совершенно без разницы?

0

3

Allayd написал(а):

Из этих двух вариантов какой-то скрипт лучше другого или совершенно без разницы?

Да без разницы, только второй короче немного.

+1

4

Список ботов можно дополнить отсюда:
http://s3.uploads.ru/t/1yCQs.jpg http://s2.uploads.ru/t/hgD5Y.jpg

Отредактировано HerrOberEgerMaster (28.11.2012 01:38:32)

0

5

Использую этот скрипт - второй вариант

Код:
   <!-- Поисковые боты (расширенный список)-->
        <div class=botlist style='display:none'>
        <p>Yandex,#9E8DA7,95.108.,77.88.,93.158.</p>
        <p>Google,#9E8DA7,66.249.</p>
        <p>Mail,#9E8DA7,94.100.,217.69.134.,217.69.136.</p>
        <p>Rambler,#9E8DA7,81.19.</p>
        <p>Yahoo!,#9E8DA7,67.195.,72.30.,74.6.,202.160.</p>
        <p>Bing,#9E8DA7,207.46.,65.52.,65.55.,157.55.</p>
        <p>Baidu,#9E8DA7,119.63.,123.125.,220.181.</p>
        <p>Ask,#9E8DA7,66.235.</p>
        <p>Ezooms,#9E8DA7,208.115.111.</p>
        <p>Aport,#9E8DA7,194.67.</p>
        </div>

    <script>var L0=$("#navlogout").html(),L=$(".punbb").attr("id");if((L0!=null)&&(GroupID<3)&&(L=="pun-index"||L=="pun-online")){var Botlist={},L=[];$(".botlist p").each(function(j){L[j]=$(this).text().split(",");Botlist[L[j][0]]=L[j]});$.ajax({type:'GET',url:'online.php',success:function(data){$(data).find('div#pun-online td.tcl:first-child').map(function(){var OnlineIP=$(this).find('a').attr('title');Str='<a href="/online.php" class="bot" title="';for(var key in Botlist){for(i=2;i<Botlist[key].length;i++){var pattern="^"+Botlist[key][i],regexp=new RegExp(pattern,"ig");if(OnlineIP.search(regexp)!=-1){var L=Str+OnlineIP+'"><span style="color:'+Botlist[key][1]+';" >&nbsp;, '+Botlist[key][0]+'[bot]</span></a>';$('li#onlinelist.item5 span:first').append(L);}}}})}});$('div#pun-online td.tcl a:contains("Гость")').map(function(){OnIP=$(this).attr('title');for(var key in Botlist){for(i=2;i<Botlist[key].length;i++){var pattern="^"+Botlist[key][i],regexp=new RegExp(pattern,"ig");if(OnIP.search(regexp)!=-1){$(this).html(Botlist[key][0]+'[bot]').css({'color':Botlist[key][1]})}}}})}</script>

В списке активных юзеров, боты стали отображаться с запятой и пробелом впереди. Типа такого:

Активны (...........), Google [bot]

Как убрать эту запятую? Она где-то в скрипте стоит?

Отредактировано Ironman (13.12.2013 20:20:58)

0

6

Ironman

Ironman написал(а):

<span style="color:'+Botlist[key][1]+';" >&nbsp;, '+Botlist[key][0]+'[bot]</span>

пробел и запятая

0

7

sadhaka написал(а):

пробел и запятая

Спасибо. Помогло.

0


Вы здесь » Техническая поддержка сервиса Quadro.Boards » Скрипты и дополнения » Идентифицирование поисковых ботов


Рейтинг форумов | Создать форум бесплатно