Большинство проектов по скрапингу проваливаются не из-за кода, а из-за стратегии по IP: выбран неверный тип прокси, бюджета либо не хватает, либо он расходуется впустую, а при изменении цели архитектура рушится. Эта статья превращает выбор прокси в системный процесс принятия решения.
Шаг 1: Проанализируйте свою цель
Выбор начинается с цели. Ответьте на три вопроса:
- Каков уровень защиты? Простой тест: отправьте 50-100 запросов с datacenter IP. Если проходят без проблем — цель толерантна; если приходят CAPTCHA/403 — она защищена.
- Нужна ли сессия? Если есть вход, корзина, многошаговая форма — вам нужна sticky session.
- Важна ли локация? Если контент/цена меняются по регионам, нужен таргетинг.
Шаг 2: Решение о типе
| Профиль цели | Правильный тип | Влияние на бюджет |
|---|---|---|
| Толерантные (открытые данные, небольшие сайты) | Datacenter | Самое низкое — безлимитный трафик |
| Средняя защита (новости, объявления, каталоги) | Rotating residential | По GB, средняя |
| Агрессивная защита (маркетплейсы, бронирование) | Residential + таргетинг по городу | По GB, требует планирования |
| Крупные цели с поддержкой IPv6 | IPv6-подсеть | Десятикратно дешевле |
| Контент социальных платформ | Мобильные (крайняя мера/смешанный вариант) | По портам, высокая |
Смешанная архитектура чаще всего эффективнее всего: страницы списков — через datacenter, защищённые страницы деталей — через residential.
Шаг 3: Стратегия ротации
- Ротация по запросам: вариант по умолчанию для независимых страниц.
- Sticky session: для сценариев с сессией; разделяйте идентификатор сессии по каждому потоку.
- Темп: случайные задержки 1-5 с; увеличивайте объём в ночные часы цели.
- Политика повторов: при 403/429 не упорствуйте с тем же IP; применяйте новый IP + экспоненциальное ожидание.
Шаг 4: Рассчитайте стоимость заранее
Простая формула, чтобы избежать сюрпризов на пакетах с оплатой по GB:
Месячный трафик ≈ число страниц × средний размер страницы × (1 + доля retry)
Пример: 20 000 страниц в день × 0,6 MB (только HTML) × 30 дней ≈ 360 GB/мес — такой объём уже тема для корпоративного плана. Отказ от загрузки изображений, приём gzip и блокировка ненужных ресурсов (блокировка изображений/CSS в headless-браузере) снижают трафик на 50-80%.
Шаг 5: Чек-лист для продакшена
- Я логирую процент успешных запросов (2xx), долю CAPTCHA и метрики задержки.
- Учётные данные прокси хранятся не в коде, а в переменных окружения.
- Определены отдельные пулы сессий для каждой цели.
- Просмотрены robots.txt и условия использования цели.
- Резервный план: если основной пул забивается, в дело вступает второй тип.
Стоит ли начинать с бесплатных?
Для прототипа — да: бесплатные адреса прокси идеальны, чтобы проверить интеграцию прокси в вашем коде. Но для продакшен-скрапинга они не подходят — изменчивость, медлительность и общая репутация IP саботируют процесс. Прототип → бесплатные, продакшен → платный пул — это естественный ход вещей.