LINUX.ORG.RU

Отследить curl?

 ,


1

1

Реально ли отследить, что по сайту ходит не пользователь, а curl? Если всегда передавать предыдущий урл в качестве реферера и делать запросы со случайным промежутком, скажем от 1 до 5 сек. Вчера забанили на одноклассниках, подозреваю, что из-за запросов без паузы.



Последнее исправление: macsucks (всего исправлений: 1)

Ответ на: комментарий от macsucks

Хотя, если какой-то .js-файл отдается серверным скриптом, то да...

macsucks
() автор топика

Да, сейчас есть специальные системы для этого, защищаются от ботов. Реферер был важен пять лет назад. Теперь подсовывают js, который указывает браузеру, что ему делать (curl игнорирует скрипты). Попробуй headless browser/phantomjs/casperjs.

amomymous ★★★
()
Ответ на: комментарий от amomymous

Да не, это чересчур в данном случае, мне кажется. Мобильные классники даже noscript-ом работают вполне себе.

macsucks
() автор топика

конечно

anonymous
()

подозреваю, что из-за запросов без паузы.

Ага, а еще, наверное, от самого количества запросов.

goingUp ★★★★★
()
Ответ на: комментарий от goingUp

Ну, да, их куча была. За один раз порядка десяти выполнялось, а тестировалось это на протяжении пары часов, после чего был схлопочен бан:( причем в 3 часа ночи, чему я был довольно-таки удивлен.

macsucks
() автор топика
Ответ на: комментарий от macsucks

Это, скорее всего, какой-то анти-ддос режет. На низком уровне. Я решал проблему путем лимитирования количества запросов в минуту.

goingUp ★★★★★
()
Последнее исправление: goingUp (всего исправлений: 1)
Ответ на: комментарий от amomymous

Теперь подсовывают js, который указывает браузеру, что ему делать (curl игнорирует скрипты)

Зато гуглобот научился JS выполнять. Что было неприятным сюрпризом для тех, кто через JS закрывался от публикации каких-то внутренних ссылок :)

KRoN73 ★★★★★
()
Ответ на: комментарий от goingUp

Я решал проблему путем лимитирования количества запросов в минуту

Я тупо храню в БД время генерации всех скриптов на IP или на бота. И если к обращению к скрипту сумма затраченного времени за последние N=10 минут превышает некоторый предел, то боту возвращается «503, зайдите позже». В результате статика отдаётся вообще без ограничений (ею сложно сервер положить), лёгкие динамические страницы отдаются свободно (мало влияют на сумму), а тяжёлые перестают отдаваться, когда бот или юзер сильно наглеет.

KRoN73 ★★★★★
()

Я тягал ботом одну базу... Банили тупо по общему количеству запросов с одного IP. Попробуй selenium webdriver.

Shadow ★★★★★
()
Последнее исправление: Shadow (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.