Как выявить парсер?
Была у меня одна история. Нужно было спарсить фотографии с сайта одного крупного. За сайтом следили (то есть админы/программеры не дауны), поэтому обычные get-запросы curl-ом через 100-200 штук блокировались по IP. Дальше привожу нашу борьбу в качестве списка.
1. Блокировка частых запросов - Я выставляю задержку. Скорость существенно падает, а количество запросов возрастает не значительно. Формирую список прокси, завожу их в скрипт и выставляю при достижении Gateway Timeout смену прокси.
2. Блокируют все прокси с которыми я работал (новых не нашёл) - Анализирую имена файлов и выясняю алгоритм их формирования (idшники и названия уже были у меня на руках спарсеные), таким образом исключаю запросы к html и начинаю выкачивать только фотки (у каждой сущности было несколько фотографий. каждый раз разное). Как только приходит 404 - меняю сущность.
3. Продолжаются блокировки по IP, но теперь терпимо - за сессию успеваю выкачивать около 1000 фоток, потом смена IP на роутере и снова в путь.
4. Они снимают ВСЕ блокировки и отдают изображения на каждый запрос (Казалось бы всё хорошо), но через некоторое время на этот IP они начинают отдавать ОЧЕНЬ сильно искаженное изображение (ЧБ + шум + скрученное в спираль).
Анализатор изображения я уже конечно писать не стал... :)
Можно запускать джаваскрипт $(window).on('mousemove') и смотреть двигает ли пользователь мышкой )
Проблема правда в том что контент уже улетел.