Из этого руководства вы узнаете:
- Что такое Cloudflare
- Почему решение WAF создает проблемы для ваших скриптов парсинга
- Как обойти Cloudflare WAF с помощью универсальных решений
- Как преодолеть все основные меры по борьбе с ботами, которые использует этот сервис
Давайте рассмотрим все это подробнее!
Что такое Cloudflare?
Cloudflare — компания, занимающаяся веб-инфраструктурой и безопасностью, которая управляет одной из крупнейших сетей в Интернете. Он предлагает полный набор услуг, призванных сделать веб-сайты более быстрыми и безопасными.
По своей сути Cloudflare в основном функционирует как CDN (сеть доставки контента), кеширующая содержимое сайта в глобальной сети для сокращения времени загрузки и уменьшения задержек. Кроме того, он предоставляет такие функции, как защита от DDoS (распределенный отказ в обслуживании), WAF (брандмауэр веб-приложений), управление ботами, службы DNS и многое другое.
Благодаря интеграции с сетью Cloudflare сайты могут быстро повысить безопасность и оптимизировать производительность. Это сделало Cloudflare идеальным решением для миллионов веб-сайтов по всему миру.
Cloudflare WAF в двух словах
WAF, сокращенно от Web Application Firewall, представляет собой систему безопасности, которая фильтрует и отслеживает HTTP-трафик между веб-приложением и Интернетом. Оно помогает защитить веб-сайты от таких атак, как DDoS-атаки, межсайтовый скриптинг (XSS), SQL-инъекции и другие вредоносные действия.
В частности, Cloudflare WAF является одним из наиболее широко используемых решений WAF в мире. Его популярность связана с широким распространением Cloudflare в качестве CDN. Для веб-сайтов, уже находящихся на Cloudflare, для включения WAF с конфигурациями по умолчанию требуется всего несколько щелчков мышью.
Ключевые технологии и методы борьбы с ботами, реализованные Cloudflare WAF, включают:
- Ограничение скорости: ограничивает количество запросов, которые может сделать один IP-адрес за определенный период времени, чтобы остановить DDoS-атаки и предотвратить попытки брутфорс-взлома.
- Задачи JavaScript: проверяет, может ли посетитель выполнять JavaScript, что является типичным поведением реальных пользователей.
- Турникет капч: отображает тесты капча подозреваемым ботам.
- IP-репутация: ведет базу данных репутации, чтобы немедленно блокировать подозрительные IP-адреса.
- Анализ поведения: отслеживает поведение посетителей для выявления автоматических закономерностей или аномальной активности.
Когда сайт защищен Cloudflare WAF, он обычно использует одно или несколько антибот-решений для блокировки автоматических запросов. Сочетание этих средств защиты делает парсинг сайта, защищенного CloudFlare, особенно сложной задачей.
Первые решения, позволяющие избежать блокировок Cloudflare при парсинге сайта
Откройте для себя лучшие решения и идеи для первого подхода к веб-парсингу на сайтах, защищенных CloudFlare.
Полный обход Cloudflare
Не забывайте, что Cloudflare действует как CDN, то есть кеширует и распределяет содержимое сайта по нескольким географически распределенным серверам. Таким образом, сайты, распространяемые через Cloudflare, обычно доступны только через серверы в сети CDN.
Теперь представьте, что вам удалось узнать IP-адрес сервера сайта, стоящего за CDN. В результате вы сможете взаимодействовать с сайтом, полностью обходя Cloudflare. В конце концов, Cloudflare может оценивать только запросы, проходящие через сеть.
Это возможно с помощью инструментов поиска истории DNS, таких как SecurityTrails, чтобы определить любые исторические записи DNS, раскрывающие IP-адрес исходного сервера. Получив IP-адрес, вы можете пытаться отправлять запросы непосредственно на сервер, избегая Cloudflare.
Проблема в том, что на сервере могут быть установлены дополнительные конфигурации, позволяющие принимать запросы только из диапазона IP-адресов Cloudflare. Это сделает практически невозможным прямое подключение к сайту без получения бана. Кроме того, найти исходный IP-адрес сервера довольно сложно и маловероятно.
Бесплатные решатели Cloudflare
В Интернете вы можете найти несколько бесплатных библиотек с открытым исходным кодом, предназначенных для обхода Cloudflare. Вот некоторые из самых популярных из них:
- cloudscraper: модуль Python, который решает проблемы Cloudflare по борьбе с ботами.
- Cfscrape: легкий PHP-модуль для обхода антибот-страниц Cloudflare.
- Humanoid: пакет Node.js, позволяющий обойти проблемы Cloudflare на JavaScript, направленные против ботов.
Хотя эти решения могут временно сработать, помните, что борьба с парсингом — это игра в кошки-мышки. То, что работает сегодня, может не сработать завтра, поскольку Cloudflare постоянно обновляет свои механизмы защиты.
Неудивительно, что большинство из этих проектов не обновлялись уже много лет. Причина в том, что разработчики сдались из-за постоянной борьбы с обновлениями Cloudflare.
Премиум-решатели Cloudflare
В большинстве случаев лучшим решением для парсинга сайта, защищенного CloudFlare, является использование продукта премиум-класса. Эта стоимость обеспечивает регулярные обновления от экспертов в области парсинга, обеспечивая высокую надежность защиты Cloudflare.
Кроме того, такие первоклассные провайдеры, как Bright Data, также предлагают круглосуточную техническую поддержку для решения любых проблем. Если вы ищете профессиональное решение для парсинга Cloudflare, попробуйте наш Scraping Browser.
Являясь облачным масштабируемым браузером с графическим интерфейсом, он интегрируется с Playwright, Puppeteer, Selenium и любыми другими библиотеками headless-браузеров. Чтобы гарантировать высокую эффективность борьбы с Cloudflare, он включает такие функции, как ротация IP-адресов, возможности распознавания капчи, ротация пользовательских агентов и многое другое.
Парсинг сайта, защищенного Cloudflare: способ обойти антиботов своими руками
Взломать Cloudflare сложно, особенно если вы не хотите использовать универсальное решение премиум-класса. Если вы хотите пойти по этому пути, вы должны принять во внимание все средства защиты Cloudflare от ботов и найти способы их преодоления.
В этом разделе вы познакомитесь с некоторыми из наиболее полезных высокоуровневых методов, позволяющих обойти Cloudflare и очистить сайты, защищенные WAF. Подробные инструкции см. в нашем руководстве о том, как обойти Cloudflare.
Давайте начнем!
Рендеринг JavaScript
Один из наиболее распространенных методов, используемых Cloudflare для обнаружения ботов, — это задачи JavaScript. Это JavaScript-скрипты, встроенные в веб-страницы, которые выполняются браузером во время рендеринга. Они проводят специальные проверки, чтобы определить вероятность того, что посетитель является ботом:
Если в результате этих испытаний Cloudflare заподозрит в вас бота, сервис покажет вам капчу. В противном случае вам будет разрешен доступ к содержимому страницы.
Таким образом, чтобы настроить таргетинг на страницу, защищенную Cloudflare, вам необходимо использовать инструменты автоматизации браузера, такие как Playwright, Selenium или Puppeteer. Эти инструменты позволяют настроить браузер на взаимодействие с веб-страницами в том же формате, в каком их используют обычные пользователи. Узнайте больше в нашем руководстве «Веб-парсинг с помощью Playwright».
Проблема в том, что браузеры без головы имеют стандартные конфигурации, которые могут подвергать их воздействию систем обнаружения ботов. Чтобы избежать этого, вам следует использовать такие библиотеки, как Playwright Stealth или Puppeteer Stealth через Puppeteer Extra, которые помогают замаскировать безголовую активность браузера.
Решатель капч
Если Cloudflare сочтет вас ботом, оно попытается остановить вас с помощью турникета капч:
В зависимости от конфигурации CAPTCHA может представлять собой простой тест на основе кликов, как показано выше, или более сложную головоломку, как показано ниже:
Автоматизировать разрешение CAPTCHA сложно, поскольку CAPTCHA — это тесты, специально разработанные для различения ботов и людей. Если ваш headless-браузер сталкивается с такой проблемой, вы можете попробовать методы, описанные в нашем руководстве по обходу CAPTCHA с помощью Python.
Чтобы получить более надежное решение, которое работает независимо от технологии, которую вы используете в своем скрипте очистки, обратите внимание на Решатель для турникета Cloudflare от Bright Data . Это быстро и автоматически устраняет капчи Турникета Cloudflare за вас.
Обход ограничителя скорости
Если вы сделаете слишком много запросов с одного и того же IP-адреса за короткое время, Cloudflare, скорее всего, временно или даже навсегда заблокирует ваш IP-адрес. Это проблематично, так как это останавливает операцию парсинга и наносит ущерб репутации вашего IP-адреса.
Описанный выше метод, используемый для предотвращения DDoS-атак и нежелательных автоматических запросов, называется rate limiting. Поскольку ваш IP-адрес привязан к сети, к которой вы подключены, его нелегко изменить. Единственный эффективный способ реализовать ротацию IP-адресов и избежать запретов — использовать прокси-сервис.
С помощью таких решений, как резидентные прокси-серверы, вы можете сделать так, чтобы запросы вашего скрипта выглядели так, как будто они поступают с реальных устройств в определенном месте. Узнайте больше о наших предложениях резидентных прокси-серверов.
Подмена браузера
Браузеры, даже в headless-режиме, потребляют много ресурсов. Таким образом, создание процедуры парсинга сайта, защищенного CloudFlare, с помощью инструмента автоматизации браузера может потребовать значительных ресурсов. Потенциально для этого может потребоваться несколько серверов и сложная архитектура.
Чтобы избежать этой проблемы (а также в тех случаях, когда WAF от Cloudflare настроен не слишком агрессивно), вы можете попробовать другой подход. Идея состоит в том, чтобы отправлять автоматические запросы от HTTP-клиентов, имитирующих реальные браузеры, что называется подменой браузеров.
Цель состоит в том, чтобы ваши HTTP-запросы выглядели как можно ближе к запросам обычного браузера. Вы можете добиться результата, установив определенные HTTP-заголовки, такие как пользовательский агент (User-Agent). Для получения дополнительной информации следуйте нашему руководству по лучшему пользовательскому агенту для парсинга веб-страниц.
В более сложных сценариях одного этого трюка может оказаться недостаточно. Cloudflare по-прежнему может распознавать ваши запросы как исходящие от HTTP-клиента, а не от браузера, благодаря отпечатку TLS:
Если вы не знакомы с этой концепцией, отпечатки пальцев TLS включают идентификацию клиента на основе способа установления безопасных соединений по протоколу TLS. Чтобы воспроизвести TLS-отпечаток браузера, вы можете использовать HTTP-клиент, например curl-impersonate, как описано в нашем специальном руководстве.
Заключение
В этой статье вы ознакомились с несколькими советами и рекомендациями по парсингу сайтов, защищенных CloudFlare. Cloudflare — самый популярный сервис CDN на рынке, который также предлагает передовые решения для борьбы с ботами. Как мы узнали здесь, обойти меры Cloudflare по борьбе с парсингом сложно, но возможно.
Независимо от того, какой подход вы выберете, помните, что все становится проще благодаря профессиональным, быстрым и надежным решениям для очистки, таким как:
- Web Unlocker: автономный обход ограничений скорости, проверки отпечатков и других ограничений, связанных с защитой от ботов, обеспечивает беспрепятственный сбор данных в общедоступном Интернете.
- Решатель капч: автоматическое распознавайте различные типы капч, позволяющее вам получать доступ к содержимому любой веб-страницы или осуществлять взаимодействие без ручного вмешательства.
- Браузер для парсинга: полностью размещенный браузер, позволяющий собирать динамические веб-данные и автоматизировать процесс разблокировки веб-сайтов.
Благодаря обширному набору инструментов для парсинга данных от Bright Data извлечение данных с сайтов, защищенных CloudFlare, еще никогда не было таким простым!
Зарегистрируйтесь сейчас, чтобы узнать, какое из решений Bright Data лучше всего соответствует вашим потребностям. Начните бесплатное опробование сегодня!
Кредитная карта не требуется