Каковы наилучшие меры для защиты контента от сканирования? - PullRequest
0 голосов
/ 08 февраля 2011

В последнее время я сканировал множество веб-сайтов на предмет содержания и удивляюсь, как ни один сайт до сих пор не оказывал такого большого сопротивления.В идеале сайт, над которым я работаю, не должен быть так легко собирать.Поэтому мне было интересно, каковы наилучшие методы, чтобы мешать ботам собирать ваш веб-контент.Очевидные решения:

  • Robots.txt (да)
  • черные списки IP

Что можно сделать, чтобы поймать активность ботов?Что можно сделать, чтобы затруднить извлечение данных?Что можно сделать, чтобы дать им плохие данные?

Что касается озабоченности SEO, есть ли способ ограничить доступ к определенным блокам данных (вроде как <nofollow> блок текста?) Просто искать идеи, нет правильного / неправильного ответа

Ответы [ 6 ]

4 голосов
/ 08 февраля 2011

Используйте клиентскую схему дешифрования / декодирования.По сути, отправляют некоторые закодированные данные обратно, а затем полагаются на JavaScript для их декодирования во что-то читаемое.Сканеры получат ваш контент, но он будет бесполезен для них (по крайней мере, пока ваш сайт не станет настолько большим, что люди будут ориентироваться именно на него).

Однако зачем вам это делать?Вы не хотите, чтобы сайт был проиндексирован поисковыми системами?

2 голосов
/ 21 ноября 2013

Попытка остановить webscrapers не легка. Без сложного, постоянно развивающегося решения все, что вы можете сделать, это поднять планку сложности и надеяться, что они не достаточно решительны, чтобы продолжать идти. Некоторые вещи, которые вы можете сделать:

  • Ограничение скорости. Убедитесь, что вы не делаете это на основе IP, а скорее уникальные сеансы, чтобы избежать блокировки пользователей за NAT.
  • Заставить пользователей выполнять javascript для доступа к странице. Есть несколько способов сделать это, и это значительно затрудняет скрести, но все же не невозможно. Есть много скриптовых инструментов (рубин, селен и т. д.), которые позволяют очищать с помощью реальной сети браузер.
  • IP Blacklists. Блокировка прокси серверов, TOR, amazon ec2 и др.

Также важно отметить, что вы должны занести в белый список поисковые системы, чтобы избежать потери SEO / трафика. Вы можете внести в белый список большинство поисковых систем, посмотрев на их пользовательский агент и сравнив их с whois их IP.

Для полного раскрытия информации я являюсь соучредителем Distil Networks , и мы предлагаем решение для предотвращения взлома в качестве услуги. Это делает меня предвзятым, потому что я не верю, что на ваш вопрос есть статичный ответ, иначе вы не можете сделать одну вещь и остановиться. Это гонка вооружений, с которой вам всегда придется сражаться.

1 голос
/ 08 февраля 2011

вы не можете предотвратить сканирование, если гусеник действительно этого хочет, но вы можете посмеяться над ним.

Способы обнаружения ботов

  • агентом пользователя
  • по ip
  • при анализе логов (большую часть времени боты загружают одну страницу каждые x секунд)
  • Заставить javascript загружать определенный файл, например [yadda.gif]. Если вы загрузили указанную страницу, но не загрузили yadda.gif, у вас не включен js, и есть вероятность, что вы бот (или используете noscript)

Возможные наказания:

  • перенаправление на microsoft.com: -)
  • установить действительно низкую скорость передачи данных, поэтому для загрузки чего-либо требуется вечность. Вы можете сделать это с помощью функции apache mod_throughput или php для буферизации вывода
  • вернуть тарабарщину, удалить содержимое или что-то в этом роде.
1 голос
/ 08 февраля 2011

У javascript установлен cookie на клиенте.На стороне сервера проверьте наличие этого файла cookie и обслуживайте свое содержимое только при наличии файла cookie.

Если файл cookie отсутствует, отправьте страницу с javascript, который устанавливает файл cookie и перезагружает страницу.

Это должно помешать всем автоматизированным веб-инструментам, которые не выполняют никакой javascript.

1 голос
/ 08 февраля 2011

Отслеживайте активность по ip (возможно, в сочетании с пользовательским агентом) и пытайтесь обнаружить бота по задержке между вызовами страницы. Слишком много URL-адресов, запрошенных за определенный интервал - начните отправлять обратно измененный контент, перенаправить или все, что вы имели в виду.

0 голосов
/ 08 февраля 2011

Включите Captcha , чтобы только люди могли просматривать ваш сайт.

...