Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Самый хитрый скрипт - браузер или бот? 
:(
    Опции темы
Analitik
Дата 16.1.2007, 13:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 16.1.2007

Репутация: нет
Всего: нет



Здравствуйте.
Мне необходим скрипт умеющий со 100% точностью распозновать, вернее даже отличать браузеры (пользователей сайта) от поисковых ботов. Естественно не по UserAgent!

Предполагаю необходимо смотреть список всех свойств объектов в DOM и использовать то, что может сделать ТОЛЬКО браузер.

В сети нашел вот такой пример скрипта:
Для выполнения скрипта требуются функциями форматирования и обработки блоков HTML страницы, подобныме браузерным.
Большинство ботов поисковых систем такими свойствами (к слову, совершенно лишними для робота индексатора) не обладают, но не все!

Код

<div style=”overflow:auto; height: 1px;”>
<table width=”100%”>
<tr>
<td id=”first”>aassssssdddddffffgggghhhhjjjkklll</td>
<td>aassssssdddddffffgggghhhhjjjkklll</td>
<td>aassssssdddddffffgggghhhhjjjkklll</td>
<td>aassssssdddddffffgggghhhhjjjkklll</td>
<td>aassssssdddddffffgggghhhhjjjkklll</td>
<td>aassssssdddddffffgggghhhhjjjkklll</td>
<td>aassssssdddddffffgggghhhhjjjkklll</td>
<td>aassssssdddddffffgggghhhhjjjkklll</td>
<td>aassssssdddddffffgggghhhhjjjkklll</td>
<td>aassssssdddddffffgggghhhhjjjkklll</td>
</tr>

<tr>
<td>aassssssdddddffffgggghhhhjjjkklll</td>
<td>aassssssdddddffffgggghhhhjjjkklll</td>
<td>aassssssdddddffffgggghhhhjjjkklll</td>
<td>aassssssdddddffffgggghhhhjjjkklll</td>
<td>aassssssdddddffffgggghhhhjjjkklll</td>
<td>aassssssdddddffffgggghhhhjjjkklll</td>
<td>aassssssdddddffffgggghhhhjjjkklll</td>
<td>aassssssdddddffffgggghhhhjjjkklll</td>
<td>aassssssdddddffffgggghhhhjjjkklll</td>
<td id=”second”>aassssssdddddffffgggghhhhjjjkklll</td>
</tr>

</table>
</div>

<script language=”JavaScript”>

var D=document;

function AbsPos(O, Parent){
var X=0, Y=0, Next, D=document;

Next=O; if (Parent==null) Parent=D;
while (Next!=null && Next!==Parent){
Y+=Next.offsetTop; X+=Next.offsetLeft; Next=Next.offsetParent;
}
return [X, Y];
}

var first = AbsPos(D.getElementById(’first’));

var second = AbsPos(D.getElementById(’second’));

if (first[0] != second[0]) {
Здесь выполняется действие;
}

else {
Здесь выполняется иное действие;
}

</script>


В принципе это нечто похожее на то, что мне нужно, но  не совсем.
Необходим скрипт который не при каких условиях не пропустит поискового бота на сайт, даже если этот бот будет "полностью" имитировать браузер. 

Вопросы:
1. Что умеют делать только браузеры и что может использоваться для моего скрипта?
2. Если не жалко, пример реализации?
3. Ваши предложения...

Это сообщение отредактировал(а) Analitik - 16.1.2007, 17:05
PM MAIL   Вверх
vasac
Дата 16.1.2007, 13:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1060
Регистрация: 4.5.2006

Репутация: 13
Всего: 36



Цитата(Analitik @  16.1.2007,  13:21 Найти цитируемый пост)
3. Ваши предложения...

Не страдать фигней.

Цитата(Analitik @  16.1.2007,  13:21 Найти цитируемый пост)
не пропустит поискового бота на сайт, даже если этот бот будет "полностью" имитировать браузер. 

Чем же он тогда будет отличаться?

Нормальные роботы-индексаторы ничего плохого не сделают, тем более большинство из них можно отвадить через robots.txt
PM WWW   Вверх
Analitik
Дата 16.1.2007, 13:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 16.1.2007

Репутация: нет
Всего: нет



Цитата

Не страдать фигней.

Хотелось бы конструктивных предложений.
Цитата

Чем же он тогда будет отличаться?

Это меня и интересует, наверняка есть то чего бот симитировать не сможет.

Дополнено:
Цитата

Нормальные роботы-индексаторы ничего плохого не сделают, тем более большинство из них можно отвадить через robots.txt

Robots.txt - реально это скорее рекомендация для ботов, а не запрет!
И смысл не в жестком и безотказном запрете, а в 100% верном отличии обычного пользователя от бота имитирующего пользователя!

Это сообщение отредактировал(а) Analitik - 16.1.2007, 13:37
PM MAIL   Вверх
12345c
Дата 16.1.2007, 16:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Круглый
****


Профиль
Группа: Vingrad developer
Сообщений: 2018
Регистрация: 26.12.2005
Где: наша не пропадала ?

Репутация: 57
Всего: 101



Если Вы не специалист, то какой смысл задавать вопросы, которые может оценить только специалист? Если Вы организатор, желающий нанять специалистов для реализации идеи - так и скажите, что нужна предварительная консультация, на которой (в этой теме) всё равно глубокий анализ не сделают, потому что не велика вероятность, что здесь попадётся  человек, писавший боты (это вероятнее в Си или Джава). Вот когда напустите сюда специалиста, он гораздо лучше будет представлять, какие вопросы задавать. А пока встречные вопросы:

1. Вы знаете случаи писания ботов, работающих через браузерный движок?
2. Для каких задач очень важно подстраиваться под человека и насколько важно противостоять?
3. Будут ли эти боты запускать движок с использованием графического интерфейса для полной идентичности поведения?

Когда скажете, какие существуют боты этой специфической категории, тогда можно подумать, как им противостоять. А то начнём тут глубочайшие теории разводить, а окажется, что они того не стоят.
PM WWW   Вверх
Analitik
Дата 16.1.2007, 16:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 16.1.2007

Репутация: нет
Всего: нет



Цитата

1. Вы знаете случаи писания ботов, работающих через браузерный движок?

Знаю случаи исполнения js скриптов поисковыми ботами.
Цитата

2. Для каких задач очень важно подстраиваться под человека и насколько важно противостоять?

Задач у них много - клоакинг, дорвеи...
Противостоять слово не совсем верное, вернее - определять, бот или человек.
Цитата

3. Будут ли эти боты запускать движок с использованием графического интерфейса для полной идентичности поведения?

Вряд ли...
PM MAIL   Вверх
Sardar
Дата 16.1.2007, 16:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



Большинство ботов вообще не разбирают JS, т.к. индексировать приходиться просто огромные обьёмы текста и тут уж не до заморочек. Кстати именно по этому боты (пока) не умеют индексировать флешки и менюшки сгенерированные на клиенте.

Если плевать на людей не имеющих JS и на свой рейтинг в поисковых, то можно ссылки генерить с onclick="specialLink(this.href)", где:
Код
function specialLink(url) {
  location.navigate((url.indexOf('?') >=0? '&': '?')+'i_am_not_a_bot=true');
}

Редкий бот догадаеться что это. Редкий юзер с отключенным JS поймёт зачем это было нужно smile


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
Analitik
  Дата 16.1.2007, 16:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 16.1.2007

Репутация: нет
Всего: нет



Цитата

... плевать на людей не имеющих JS ...

Это можно  smile 
Цитата

... на свой рейтинг в поисковых ...

А вот этого делать нельзя.
PM MAIL   Вверх
Sardar
Дата 16.1.2007, 17:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



Analitik, спасибо за инфу smile
Если верить статье, то современные кравлеры падают только на "отрисовке" страниц. Чем код из первого поста тебе не подходит я не понял. Бот который полностью иммитирует браузер (т.е. владеет отрисовкой, XMLHttpRequest и прочее) является браузером по определению.

Взглядом со стороны сей танец я не понял. Все поисковые боты объявляют себя по UserAgent'у, что бы продвинутые движки могли отдавать облегчённые страницы. Другие боты, что контент твой воруют лишь повышают твой рейтинг если ссылки на тебя оставляют (цитируемость), если и ссылки меняют, то забей на них, это не больше чем пыль под ногами smile


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
12345c
Дата 16.1.2007, 17:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Круглый
****


Профиль
Группа: Vingrad developer
Сообщений: 2018
Регистрация: 26.12.2005
Где: наша не пропадала ?

Репутация: 57
Всего: 101



Sardar, А нужно это для клоакинга всех мастей smile

Ты знаешь, буквально в последние 2 месяца появилась в логах сайта масса браузеров, которая ведёт себя как бот, но имеет юзер-агента, как у Мозиллы Firefox. И ведь как бота их не отметишь. Если, по статье, поисковики стали использовать хитрых ботов в последние месяцы, то это вполне может быть скрытый поисковик. Такие боты им нужны, чтобы обнаруживать клоакинг, сравнивая показания "честных" ботов и "хитрых".
PM WWW   Вверх
Analitik
Дата 16.1.2007, 20:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 16.1.2007

Репутация: нет
Всего: нет



Цитата

Analitik, спасибо за инфу 
 Всегда пожалуйста.  smile 
Цитата

Чем код из первого поста тебе не подходит я не понял.

Код из первого поста  подходит для гугла, но не для яши.
Цитата

Бот который полностью иммитирует браузер (т.е. владеет отрисовкой, XMLHttpRequest и прочее) является браузером по определению.

Вот потому то я и обратился за помощью к специалистам (к вам), знал бы я все тонкости работы IE и js - не было б вопросов, сам бы все написал!
Цитата

...  буквально в последние 2 месяца появилась в логах сайта масса браузеров, которая ведёт себя как бот, но имеет юзер-агента, как у Мозиллы Firefox. И ведь как бота их не отметишь. Если, по статье, поисковики стали использовать хитрых ботов в последние месяцы, то это вполне может быть скрытый поисковик. Такие боты им нужны, чтобы обнаруживать клоакинг, сравнивая показания "честных" ботов и "хитрых".

Добавить нечего, ответ изчерпывающий.  smile 
Хотя чуть поправлю, не последние 2 месяца, а гораздо раньше (для российского поиска), просто при хорошей посещаемости выявить подобных (хитрых) ботов в логах просто не возможно, на то они и хитрые, чтоб их видно не было (в логах в первую очередь)! 
PM MAIL   Вверх
S.A.P.
Дата 17.1.2007, 18:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2664
Регистрация: 11.6.2004

Репутация: 8
Всего: 71



Если что - то с нечеловеческой скоростью запрашивает различные страницы, то возможно это бот и ловить его надо на сервере, а не с помощью JS. Однако скачивая сайт с помощью scrapbook под Мозиллой, я веду себя как бот, хоть и не бот вовсе smile .
PM MAIL   Вверх
12345c
Дата 17.1.2007, 19:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Круглый
****


Профиль
Группа: Vingrad developer
Сообщений: 2018
Регистрация: 26.12.2005
Где: наша не пропадала ?

Репутация: 57
Всего: 101



S.A.P., хитрые боты могут вести себя как люди - их цель - не обойти сайт, а выявить клоакинг. Поэтому посетят (по наводке) главную страницу, и им этого достаточно. Если недостаточно, то медленно (куда спешить, если на сервере будет 20-50 окон Мозиллы с другими заданиями?) будут переходить по ссылкам, обойдя самые близкие. (Мозилла - потому что код открытый и под свои нужды настроить легко.)
PM WWW   Вверх
OZetus
Дата 22.1.2007, 18:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 22.1.2007

Репутация: нет
Всего: нет



В принципе, я думаю, тема актуальна. Допустим, есть сайт на Аджаксе (страницы подгружаются лишь частично Демка: cgroup2.drohobych.com.ua). Дураку ясно, что такой сайтец поисковый робот не проиндексирует. Следовательно, надо подменять контент. UserAgent, как уже было сказано выше,  не очень катет. Короче, думал я, думал, что делать... Есть одна идея, но нужно еще проверить.

В данной демке, ясное дело, используется джаваскипт, к тому же Куки. Кто это все отключает, всеравно ничего поюзать не сможет. Короче, идея в том, дабы проверку проводить по куки. Если их генерировать php, некотрые боты всеже могут схавать. Но если генерить их джаваскриптом, это мне кажется, может и проканать.

Вот, ничего пока лучше в голову не пришло smile
PM MAIL WWW ICQ   Вверх
Sardar
Дата 22.1.2007, 18:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



Если скрипт из соседней темы взять, там для генерации сигнатуры берёться очень много параметров доступных в разных браузерах. Вкупе с проверкой отрисовки контента (создать слои, замерить размеры, подвигать на абсолютной, змерить offset(Top|Left) и прочее), я даже представить не могу под какой накуркой можно создать бот, что всё это будет понимать. Другое дело что браузеры с наладонников и мобилок, а также просто экзотику можно забанить smile


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0598 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.