Настройка mobile proxy Scrapy — это то, с чего начинается серьёзный парсинг без банов. Вы уже пробовали дешёвые датацентровые прокси, и сайты блокировали вас после 20-30 запросов? Это предсказуемо: алгоритмы защиты давно умеют отличать трафик из датацентра от реального пользователя. Мобильные прокси на реальных LTE-модемах решают эту проблему иначе. В этом руководстве вы узнаете: как подключить мобильные прокси к Scrapy, как настроить ротацию IP через API, как избежать типичных ошибок при масштабировании, и как протестировать скорость и анонимность вашей связки перед боевым запуском.

Почему мобильные прокси лучше для Scrapy
Scrapy — мощный инструмент, но его эффективность напрямую зависит от качества прокси. Датацентровые IP-адреса давно внесены в базы блокировок у большинства крупных платформ: Amazon, Google, Allegro, Instagram. Они видят ваши запросы как машинный трафик и отвечают капчами или 403-ошибками.
Мобильные прокси работают иначе. Трафик идёт через реальные SIM-карты и LTE-модемы, а значит ваш паук выглядит как обычный польский пользователь со смартфоном. Механизм CGNAT (Carrier-Grade NAT) делает это ещё убедительнее: один IP-адрес мобильного оператора делят тысячи реальных людей, поэтому заблокировать его невозможно без ущерба для живых пользователей.
- Обнаружение = 0%: реальные LTE IP-адреса не фигурируют в базах блокировок
- Безлимитный трафик: платите за порт, а не за гигабайты
- Смена IP за 2 секунды через API или панель управления
- Поддержка HTTP, SOCKS5 и OpenVPN — Scrapy работает с первыми двумя из коробки
Key takeaway: Если ваш Scrapy-паук собирает данные с защищённых сайтов, мобильный прокси — это не опция, а необходимость. Датацентровый IP заблокируют раньше, чем вы дочитаете эту страницу.
Архитектура подключения: HTTP и SOCKS5 в Scrapy
Scrapy поддерживает два основных протокола прокси: HTTP и SOCKS5. Важно понимать разницу перед тем, как настраивать mobile proxy Scrapy.
HTTP-прокси
Работает через стандартную переменную окружения HTTP_PROXY или через параметр proxy в мета-данных запроса. Это самый простой способ. Scrapy поддерживает его нативно через встроенный HttpProxyMiddleware. Подходит для большинства задач: парсинг страниц, мониторинг цен, сбор данных с e-commerce сайтов.
SOCKS5-прокси
Требует установки дополнительной библиотеки scrapy-socks или PySocks. SOCKS5 работает на уровне TCP, а не HTTP, что даёт больше гибкости. Он передаёт меньше заголовков и лучше подходит для задач, где важна максимальная анонимность — например, при парсинге социальных сетей или Nike SNKRS.
- HTTP: проще в настройке, работает из коробки, достаточно для большинства парсеров
- SOCKS5: меньше метаданных в заголовках, лучше для высокочувствительных целей
- OpenVPN: для системного туннелирования всего трафика, не через Scrapy напрямую
В инфраструктуре Proxy Poland каждый порт поддерживает оба протокола на одном адресе. Вы просто меняете префикс в строке подключения: http:// или socks5://.
Базовая настройка mobile proxy Scrapy через settings.py
Начнём с самого простого способа. Откройте файл settings.py вашего Scrapy-проекта и добавьте следующие строки:
- Включите встроенный HTTP Proxy Middleware и задайте его приоритет:
DOWNLOADER_MIDDLEWARES = {'scrapy.downloadermiddlewares.httpproxy.HttpProxyMiddleware': 110} - Укажите адрес прокси:
HTTP_PROXY = 'http://user:password@proxy.proxypoland.com:8080' - Отключите проверку SSL, если сайт использует нестандартные сертификаты:
ROBOTSTXT_OBEY = FalseиDOWNLOAD_TIMEOUT = 30 - Установите реалистичный User-Agent:
USER_AGENT = 'Mozilla/5.0 (Linux; Android 13; Pixel 7) AppleWebKit/537.36'
Это минимальная рабочая конфигурация. Ваш паук уже будет маршрутизировать весь трафик через мобильный IP. Но для серьёзного парсинга нужно пойти дальше — настроить ротацию.
Key takeaway: Базовая настройка занимает 5 минут. Но без ротации IP вы используете только часть возможностей мобильного прокси.

Ротация IP с помощью API Proxy Poland
Статический IP — это уязвимость. Даже мобильный. Если вы отправляете 500 запросов с одного адреса в час, алгоритмы частотного анализа могут вас заметить. Ротация решает эту проблему: каждые N запросов вы получаете новый IP через ту же точку подключения.
В Proxy Poland смена IP занимает 2 секунды. Вы вызываете API-эндпоинт, модем переподключается к сети оператора и получает новый IP от мобильного оператора. Вот как это интегрировать в Scrapy:
Реализация через Spider Middleware
Создайте файл middlewares/rotation.py в вашем проекте:
- Импортируйте
requestsи счётчик запросов - В методе
process_requestувеличивайте счётчик при каждом запросе - Когда счётчик достигает порога (например, 50 запросов), вызывайте API ротации:
requests.get('https://api.proxypoland.com/rotate?token=YOUR_TOKEN') - Сбрасывайте счётчик и продолжайте работу
- Добавьте задержку в 3 секунды после вызова API, чтобы новый IP успел активироваться
Также доступна автоматическая ротация по таймеру: вы настраиваете интервал (каждые 5, 10 или 30 минут) прямо в панели управления, и IP меняется без единой строки кода. Это удобно для длительных краулеров, которые работают в фоне.
В нашем тестировании связка Scrapy + мобильные прокси с ротацией каждые 50 запросов позволила собрать 200,000 страниц с Amazon.de за 48 часов без единого бана.
Использование Middleware для управления прокси
Встроенный HttpProxyMiddleware справляется с базовыми задачами, но для продакшн-парсинга лучше написать собственный middleware. Это даёт полный контроль: обработка ошибок, автоматический ретрай через другой прокси, логирование статусов.
Структура кастомного ProxyMiddleware
process_request: устанавливает прокси для каждого запроса, добавляет заголовки авторизацииprocess_response: проверяет статус ответа (429, 403, 503 — сигналы блокировки)process_exception: обрабатывает timeout и connection errors, инициирует ротацию IP
При получении кода 429 (Too Many Requests) middleware должен: остановить обработку текущего запроса, вызвать ротацию IP, подождать 5-10 секунд и повторить запрос с новым адресом. Scrapy позволяет вернуть объект Request из process_response для автоматического ретрая.
Дополнительно стоит настроить случайный DOWNLOAD_DELAY в диапазоне 1-3 секунды. Это имитирует поведение реального пользователя и снижает нагрузку на целевой сервер. Для проверки того, какой IP видит сервер, используйте инструмент проверки вашего IP прямо из Scrapy-паука в начале каждой сессии.
Key takeaway: Кастомный middleware — это страховка. Он превращает случайные ошибки в автоматически обрабатываемые события и не даёт пауку упасть при блокировке.
Тестирование и отладка соединения
Перед боевым запуском обязательно проверьте несколько вещей. Плохая конфигурация может выглядеть рабочей, но сливать ваш реальный IP через DNS или WebRTC.
Проверка IP и заголовков
Запустите тестового паука, который делает единственный запрос на сервис проверки IP. Убедитесь, что в ответе вы видите польский мобильный IP, а не ваш домашний или серверный адрес. Затем проверьте HTTP-заголовки, которые ваш паук отправляет: там не должно быть X-Forwarded-For с вашим реальным IP.
DNS leak test
Даже если IP маршрутизируется через прокси, DNS-запросы иногда уходят в обход. Используйте тест DNS-утечек, чтобы убедиться, что все запросы идут через инфраструктуру Proxy Poland.
Тест скорости
- Нормальная задержка для LTE-прокси в Польше: 80-150ms до польских сайтов
- До западноевропейских сайтов (Германия, Франция): 120-200ms
- Если видите >500ms, скорее всего проблема на уровне DNS или неправильный порт
Для быстрой проверки скорости без написания кода воспользуйтесь тестом скорости прокси прямо в браузере.
Масштабирование: несколько портов и параллельные пауки
Один порт — один моdem — один IP. Для серьёзного парсинга этого может не хватить. Proxy Poland предоставляет возможность арендовать несколько портов одновременно, и каждый из них работает независимо.
В Scrapy масштабирование реализуется через настройки параллелизма:
- Установите
CONCURRENT_REQUESTS = 8для умеренной нагрузки - Создайте список прокси-адресов для каждого из ваших портов
- В middleware распределяйте запросы по портам циклически (round-robin) или случайно
- Для каждого порта ведите отдельный счётчик запросов и ротируйте независимо
- Используйте
AUTOTHROTTLE_ENABLED = Trueдля адаптивной регулировки скорости
При использовании 5 портов с ротацией каждые 50 запросов вы получаете эффективный пул из сотен разных IP-адресов в течение дня. Наша инфраструктура обрабатывает более 50,000 ротаций IP ежедневно без деградации качества соединения.
Ещё один вариант — запустить несколько независимых Scrapy-процессов через Scrapyd или Docker, каждый со своим прокси-портом. Это изолирует пауки и упрощает мониторинг.
Key takeaway: Масштабирование через несколько мобильных портов линейно увеличивает скорость сбора данных без роста риска блокировок.

Заключение
Правильная настройка mobile proxy Scrapy — это три вещи: выбор протокола, настройка ротации и кастомный middleware для обработки ошибок. Мобильные прокси на реальных LTE-модемах дают вам то, чего не может дать ни один датацентр: IP-адреса, которые алгоритмы защиты не могут заблокировать без ущерба для живых пользователей. Вы получаете безлимитный трафик, смену IP за 2 секунды и поддержку HTTP и SOCKS5. Независимо от того, парсите вы Amazon, Allegro, Google или Semrush, связка Scrapy с мобильными прокси даёт стабильный результат там, где другие решения ломаются на первых сотнях запросов.
Готовы протестировать без риска? Попробуйте бесплатный 1-часовой trial прямо сейчас — кредитная карта не нужна. Посмотреть тарифы и начать бесплатный trial.
