inpost
14.11.2015 - 03:56
Поделитесь скриптом определения поисковых роботов.
Только мне бы корректный с нормальной поддержкой. Допустим наличие в USER_AGENT строки "yandex" некорректное.
П.С. В гугле не забанили, но что-то найти не получается. Либо допишите сами, либо список не полный, либо некорректный, как выше указал.
_____________
Обучаю веб-программированию качественно и не дорого:
http://school-php.comФрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
FatCat
14.11.2015 - 12:37
Очень упрощенно:
$s_user_agent = $_SERVER['HTTP_USER_AGENT']." ".@gethostbyaddr($ibforums->input['IP_ADDRESS']);
if ( preg_match( '/(YandexBlogs|googlebot|google-proxy|slurp@inktomi|ask jeeves|lycos|whatuseek|ia_archiver|aport|yandexbot|stackrambler|yahoo|msnbot|webalta|Mail.Ru|bingbot| mj12bot|exabot|baiduspider|hosttracker|AhrefsBot|SputnikBot|BLEXBot)/i', $s_user_agent, $match ) )
{
}
Подумываю, не сократить ли этот список. Например мсн-бот - нафига он мне нужен; с этой поисковки нет нормальных посетителей. А поисковым ботам у нас есть ряд льгот...
_____________
Бесплатному сыру в дырки не заглядывают...
inpost
14.11.2015 - 15:10
FatCathttps://yandex.ru/support/webmaster/robot-w...ndex-robots.xmlВот USER_AGENTы:
Mozilla/5.0 (compatible; YandexAccessibilityBot/3.0; +http://yandex.com/bots) — скачивает страницы для проверки их доступности пользователям, особым образом интерпретирует robots.txt.
Mozilla/5.0 (iPhone; CPU iPhone OS 8_1 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12B411 Safari/600.1.4 (compatible; YandexMobileBot/3.0; +http://yandex.com/bots) — робот, определяющий страницы с версткой, подходящей под мобильные устройства, особым образом интерпретирует robots.txt.
Цитата |
Имена всех роботов Яндекса заканчиваются на 'yandex.ru', 'yandex.net' или 'yandex.com'. |
Так же предлагают определять по gethostbyaddr, яндекс возвращает: spider-100-43-81-130.yandex.com.
В итоге этот скрипт не определяет корректно ботов яндекса, я не проводил анализ других поисковиков, но у меня закладывается подозрение, что есть косяки и с остальными.
В общем, этот не подходит, но всё равно спасибо.
_____________
Обучаю веб-программированию качественно и не дорого:
http://school-php.comФрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
S.Chushkin
14.11.2015 - 15:39
А вот пара вопросов:
1) Зачем Вам точное определение ботов? В чём смысл?
2) Как Вы сможете определить реальный это бот или фантом? (ибо любой параметр заголовка можно подделать)
_____________
Рекламка / ad.pesow.com Хрень / mr-1.ru
inpost
14.11.2015 - 15:49
S.ChushkinВыводить окно с просьбой зарегистрироваться обычным пользователям, перекрывающее часть контента на странице. Не хочу попасть в фильтры, так как контент будет находиться именно за всплывающем окне и поисковики могут расценить его как клоакинг
_____________
Обучаю веб-программированию качественно и не дорого:
http://school-php.comФрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
inpost
14.11.2015 - 15:52
Ах, ещё одно уточнение. Этот блок запихну в <noindex>, то есть разницы между контентом пользователя+контентом робота не будет, содержание будет одинаковым, но при этом защищусь от клокинга.
_____________
Обучаю веб-программированию качественно и не дорого:
http://school-php.comФрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
FatCat
14.11.2015 - 16:25
Цитата (inpost @ 14.11.2015 - 14:49) |
Выводить окно с просьбой зарегистрироваться обычным пользователям, перекрывающее часть контента на странице. |
Для меня такое окно как какашка на обеденном столе - хочется быстрее покинуть это место.
В вынужденной ситуации, когда мне позарез нужна информация, а ее не получить без регистрации, я зарегистрируюсь, но никогда не вернусь на такой сайт.
Смысл фильтрации ботов для меня в оптимизации нагрузки на сервер. Если бот поисковки, с которой нет посетителей, или вообще бот воровальщик контента - я его забаню по айпишнику.
_____________
Бесплатному сыру в дырки не заглядывают...
inpost
14.11.2015 - 16:43
FatCatВозможно, но люди разные бывают и проекты тоже. Мне тоже подобные окна не очень нравятся, приходится идти в HTML-инспектор и вручную убирать его ради контента. Но всё же задача стоит, её необходимо реализовать.
_____________
Обучаю веб-программированию качественно и не дорого:
http://school-php.comФрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
S.Chushkin
14.11.2015 - 20:28
Цитата (inpost @ 14.11.2015 - 15:49) |
Выводить окно с просьбой зарегистрироваться обычным пользователям, перекрывающее часть контента на странице. |
Т.е. Вам не нужно
точное определение, вполне достаточно бот/юзер.
"Стандартный" список ботов + поиск регуляркой по UA даст 90+ процентов точности. Если такой точности мало, то или делаете свой велосипед или заказываете на стороне или используете платные online-сервисы (вроде есть такие), это даст точность 98+% (от числа показов страниц). 100% не даст никто, кроме шарлатанов.
_____________
Рекламка / ad.pesow.com Хрень / mr-1.ru
inpost
14.11.2015 - 21:17
S.Chushkin
Вот я и говорю, что не могу найти стандартный список ботов. Придется колошматить всю документацию каждого из поисковиков и под каждого в отдельности писать, что, на мой взгляд, будет выглядеть как велосипед.
Цитата |
поиск регуляркой по UA |
Открой документацию Яндекса, я ссылку же дал, UA не подходит, надо хост проверять.
Цитата |
заказываете на стороне |
И сколько людей с этой задачей справятся? 90% дадут код, похожий на код от FatCat, который примерно +- будет переполнен в интернете с такими же неправильными примерами.
Цитата |
делаете свой велосипед |
Сначала ищем, если не находим, тогда делаем уже, и это не будет велосипедом, так как подобного нет в других местах.
В любом случае подожду, может у кого найдется подобная подборка.
_____________
Обучаю веб-программированию качественно и не дорого:
http://school-php.comФрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
S.Chushkin
14.11.2015 - 22:03
Цитата (inpost @ 14.11.2015 - 21:17) |
Вот я и говорю, что не могу найти стандартный список ботов. Придется колошматить всю документацию каждого из поисковиков и под каждого в отдельности писать, что, на мой взгляд, будет выглядеть как велосипед. |
1) Не надо ничего "колошматить". Всё уже "проколошмачено" до нас.
2) Плохо искали.
Например, возмите awstats, найдите там robots.pm - это и будет начальный/базовый список регулярок сотен ботов, который даст 90+ точности. Адаптировать под ПХП 1-2 дня работы.
Плюс ещё кучка ресурсов в инете.
Цитата |
Открой документацию Яндекса, я ссылку же дал, UA не подходит, надо хост проверять. |
Ещё раз, - какая разница для Вашей задачи, какой из роботов пришёл на сайт?
Абсолютно никакой. Бот - скрыть popup-окно, юзер - показать.
Цитата |
Сначала ищем, если не находим, тогда делаем уже, и это не будет велосипедом, так как подобного нет в других местах. |
Будет, будет - ничего нового вы не напишете, такой же велосипед, +/-.
_____________
Рекламка / ad.pesow.com Хрень / mr-1.ru
inpost
14.11.2015 - 23:23
S.Chushkin
Глянул awstats, проверил по Яндексу, опять некорректно. Вот цитата: 'yandex', а это не подходит.
Искал хорошо. Находил такие же кривые.
Цитата |
Ещё раз, - какая разница для Вашей задачи, какой из роботов пришёл на сайт? |
Мне надо быть уверенным, что это Яндекс бот, а не яндекс браузер.
_____________
Обучаю веб-программированию качественно и не дорого:
http://school-php.comФрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
S.Chushkin
15.11.2015 - 01:22
Как сказал выше, это "базовый список". Идеальных списков нет, в т.ч. список ботов часто пополняется. Кроме того, у каждого сайта свой набор роботов.
Например, мне пришлось добавить порядка 3-х сотен ботов и поправить десятки регулярок, чтобы более-менее корректно обрабатывать логи пары сайтов за последние 10 лет. И ежемесячно добавляется несколько новых роботов.
В общем, актуальная ("не кривая") это та база, которая обновляется фактически ежедневно. Вероятно есть такие сервисы, - я не знаю, не искал. И стоит учитывать, по статистике 99+% трафика роботов дают всего пара десятков ботов, остальные на уровне фона. Написать скрипт, которые будет эти 2 десятка отлавливать, день работы, - может это будет быстрее, чем долго и упорно искать халявы?
_____________
Рекламка / ad.pesow.com Хрень / mr-1.ru