| 1.1, Аноним (1), 19:01, 09/03/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– |
Так себе идея, не учитывающая много исключений.
Мы сделали чуть сложнее - проанализировали набор заголовков, используемых провайдеров, подсети и собрали набор маркеров. При поступлении запроса он (с помощью кода на lua в nginx) анализируется, при совпадении любого из маркеров ему начисляются очки. Например если Firefox шлет Chrome-специфичный заголовок, используется китайская локаль (90% скрейперов нападающих на наш хостинг имеют китайскую локаль), поведение не соответствует версии браузера, меченая ASN и т.д. Набрал больше первого порога - страницу отдаем, но с минимальной скоростью (в планах челлендж, но это потом). Набрал выше второго порога - давай до свидания! (с)
В среднем 27-35% трафика летит в 444, еще 8-10 отдается с задержкой. И с момента внедрения нагрузка на ноды бэкендов ни разу не превысила штатную.
| | |
| |
| 2.2, Гость (??), 20:58, 09/03/2026 [^] [^^] [^^^] [ответить]
| +1 +/– |
С ботами из сети Tencent как? оттуда валится столько запросов и входящего трафика, что лучше из банить до http сервера.
| | |
| |
| 3.4, Аноним (1), 06:52, 10/03/2026 [^] [^^] [^^^] [ответить]
| +2 +/– |
С ними проще - можно банить прям подсетями. Брать из BGP списки подсетей принадлежащие AS Tencent, Alibaba, Huawei cloud и пр. и закидывать пачками в ipset/netfilter. Простенький скрипт в кроне раз в неделю
| | |
| 3.14, Аноним (14), 09:09, 15/03/2026 [^] [^^] [^^^] [ответить]
| +/– |
> С ботами из сети Tencent как? оттуда валится столько запросов и входящего
> трафика, что лучше из банить до http сервера.
Ну так поставь им -j DROP или что там у тебя - прямо по подсети их датацентров, что ты как маленький, файрвол никогда не видел?! Да, чайники очень наглые. И вынос их подсеток сильно разгружает сервера.
Просто посмотри какие подсетки в топчатре - посмотри чье это - и расчистка даже просто топ10 этого хитпарада уже сильно разгружает сервак. И да, в топе будут ДЦ алибабы и тенсента.
| | |
|
|
| 1.3, S_Paul (??), 21:55, 09/03/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Вложенные "if"'ы наверное можно map'ами сделать.
map $is_http2:$is_rss:$is_bot $isdrop {
default 0
"0:0:0" 1;
}
server {
...
if ($isdrop = 1) { return 418; }
...
}
| | |
| 1.5, Аноним (5), 08:42, 11/03/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Все нормальные скрейперы давно мимикрируют под браузер не только заголовком user-agent, но и протоколами. Продвинутые же скрейперы используют настоящий браузер. "Памяти всегда докупить можно (тм)". Сейчас у смузихлёбов на гитхабе тенденция - вообще всё делать через Microsoft Playwright (который через WebDriver работает с живой страницей), и не заморачиваться с реверсингом и кастомными скрейперами. Тьфу.
| | |
| |
| 2.6, Аноним (5), 08:44, 11/03/2026 [^] [^^] [^^^] [ответить]
| +/– |
Вообще всё - это когда этот playwright вообще ни к селу ни к месту. Но у Американских Высокооплачиваемых Скрейперописателей рабочее время слишком дорого для этого, дешевле оперативки докупить, оперативка ведь один раз покупается, а скрейпер писать - каждый раз надо.
| | |
| |
| 3.8, Аноним (8), 17:50, 12/03/2026 [^] [^^] [^^^] [ответить]
| +/– | |
Меня как-то с работы попёрли за то, что я долго писал скрейпер с обвязкой на C и JS и полной автоматизацией. Джун, который за меня переписал другой мой скрейпер на вебдрайвере, который до этого был написан через реверсинг приложения, по шапке не получил.
Если скрейпер пишет корпорация, она не заслужила оптимизации. Она твой результат работы и так перепродаёт за 10x твоей стоимости.
Если скрейпер пишешь ты или ты пишешь сервис для общего блага, только тогда и стоит потратить ценные годы своей жизни на реверсинг.
| | |
|
| 2.13, Аноним (14), 09:06, 15/03/2026 [^] [^^] [^^^] [ответить]
| +/– |
> Все нормальные скрейперы давно мимикрируют под браузер не только заголовком user-agent,
> но и протоколами.
Таки нет. Как ни странно они в массе своей писаны дешево, сердито и максимально наколенно. И поэтому есть чертова куча отличий между ними и норм клиентами.
Вплоть до того как тут в советах сбоку написано - они даже куки не запоминают в массе своей. И если вы поставили куку - а оно ее не помнит - добро пожаловать в tarpit или что там у вас. Дебиан вон местами стал им выгружать какой-то рандомный AI-generated бред, во они друг друга потренируют :)
> Продвинутые же скрейперы используют настоящий браузер. "Памяти всегда
> докупить можно (тм)".
Проблема в том что
1) Его перфоманс полная днина а ресурсы не бесплатны.
2) Конкурент в итоге индексит лучше и быстрее.
3) Память нынче стала довольно дорогой.
4) А вон там еще всякие an(ub)is'ы - вам счета proof of work как раз подкинут, да побольше.
5) Кстати если скрейпер не будет режектить кукисы, можно будет влет оттрекать агрессивных клиентов по дикому числу корелированых запросов - и зобанить их айпишники или даже подсети, для ДЦ крупняка.
> всё делать через Microsoft Playwright (который через WebDriver работает с живой
> страницей), и не заморачиваться с реверсингом и кастомными скрейперами. Тьфу.
Осталось найти желающих проплатить им ресурсов на это все. AI очень конкурентный рынок, там у кого модель лучше тот и в дамках. А для этого надо БЫСТОЛ и МНОГО индексить. С вашим вебдрайвером вы проиндексируете весь интернет - в актуальном виде - примерно никогда.
| | |
|
| |
| 2.12, Аноним (-), 08:56, 15/03/2026 [^] [^^] [^^^] [ответить]
| +/– | |
> скоро боты поразмыслят и заявят о дискриминации.
При том для убедителности заявлений взяв БОЛЬШОЕ ружье. Где-то я это уже видел...
| | |
|
| 1.11, Аноним (11), 08:55, 15/03/2026 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
> Пример правил для http-сервера Caddy, возвращающих клиенту
> ошибку при обращении по HTTP/1:
Что, ваш caddy не потянул нагрузку и не умел в кеширование контента? Надо было nginx юзать :)
| | |
|