Блокировать автономные браузеры
Есть ли способ заблокировать автономные браузеры (такие как Teleport Pro, Webzip и т. Д.), Которые отображаются в журналах как "Mozilla"?
Пример: Webzip отображается в журналах моего сайта как "Mozilla/4.0 (совместимо; MSIE 8.0; Win32)"
Teleport Pro отображается в журналах моего сайта как "Mozilla/4.0 (совместимо; MSIE 7.0; Windows NT)"
Я провел несколько тестов с использованием файла.htaccess, но все они закончились тем, что мой браузер был заблокирован (Mozilla и Chrome), и, конечно же, я не хочу блокировать обычных посетителей, а только пользователей с полосой пропускания (которые также потребляют много ресурсов ЦП и ОЗУ их запросы), плюс выглядит так, что этот автономный браузер даже игнорирует файл robots.txt. Кто-нибудь знает способ идентифицировать их и заблокировать их? Если возможно, приведите примеры.
3 ответа
Краткий ответ: нет
Длинный ответ:...
Большинство "автономных браузеров"/ скребков просто загружают необработанный HTML/JS/CSS для последующей обработки браузером. Они, если их строки User-Agent выглядят как легитимные "онлайн-браузеры", это все, что вам нужно пройти и, следовательно, не может их заблокировать.
Если они должны были выполнить javascript на своих страницах (полезно для сайтов, которые используют javascript для загрузки частей страницы и т. Д.), То вы можете протестировать их JavaScript API, чтобы увидеть, какие функции они имеют, и нацелить их таким образом. Однако это в значительной степени бессмысленно, так как они, вероятно, будут использовать систему, подобную WebKit, которую также используют другие легальные браузеры.
Некоторые скребки могут придерживаться файла Robots.txt, однако они, скорее всего, будут скребками, такими как Google Search/Cache, а не "Автономные браузеры".
Последний способ - использовать аутентификацию, за которой скрываются загрузки. Это эффективно до тех пор, пока пользователь автономного скребка не предоставит ему аутентифицированный сеанс.
Надеюсь, это поможет:)
У меня нет хорошего ответа, только некоторые идеи. Но это интересный вопрос. Я не думаю, что ответ прост, за исключением тех случаев, когда кто-то еще вложил кучу работы в написание программы для этого. Если они не хотят говорить вам, что они роботы, им не нужно. Вы должны были бы использовать некоторые уловки, чтобы видеть, являются ли они.
Может быть, вы могли бы поместить невидимую ссылку вверху страницы, по которой человек не мог бы перейти, а затем заблокировать любого, кто действительно следует за ней.
Под невидимым я имею в виду поместить его в html-комментарий. Я не знаю достаточно об автономных браузерах, чтобы знать, достаточно ли они умны, чтобы не переходить по ссылкам внутри html-комментариев.
Любой, кто переходит по новой ссылке ровно каждые x секунд, также является роботом. Заблокируйте их.
Вроде того.
Если вам нужно защитить ваши большие загрузки, то лучший способ справиться с этим - поместить их за вход в систему. Как вы узнали, вмешательство в блокировку с помощью htaccess или роботов для пользовательского агента может привести к блокировке легитимного трафика.