перейти к содержанию

Как обойти Akamai и добиться успешного парсинга веб-страниц в 2024 году

Привет, приятно познакомиться!

Если вы читаете это, вы, вероятно, пробовали парсить сайты, защищенные менеджером ботов Akamai, и столкнулись с проблемой. Блокировка может быть очень неприятной!

Но не волнуйтесь, вы попали в нужное место. Меня зовут [ваше имя], и я занимаюсь парсингом веб-страниц уже более 5 лет. Я собрал множество советов и рекомендаций по обходу служб защиты от ботов, таких как Akamai.

И сегодня я рад поделиться всем, что знаю, чтобы помочь вам успешно очистить данные с сайтов, защищенных Akamai, в 2024 году!

Давайте начнем с рассмотрения того, что именно делает Akamai для выявления и блокировки таких парсеров, как мы.

Что такое Akamai Bot Manager и как он работает?

Akamai Technologies — это сеть доставки контента (CDN) и поставщик веб-безопасности, который защищает более 25% всего веб-трафика. Их служба Bot Manager использует сложные алгоритмы обнаружения ботов для выявления парсеров и предотвращения злоупотреблений.

Bot Manager от Akamai анализирует широкий спектр сигналов для расчета «оценки доверия» для каждого посетителя:

Шифрование TLS / SSL – Проверяет наличие аномалий в возможностях шифрования вашего сетевого стека во время установления связи TLS. Это может выявить и раскрыть инструменты, не использующие TLS браузерного уровня.

Репутация IP – Классифицирует ваш исходный IP-адрес как центр обработки данных, жилой, мобильный или прокси-сервер, чтобы проверить, «выглядите ли вы» как настоящий пользователь. IP-адреса центров обработки данных и прокси-серверов легко поддаются ботам.

Заголовки HTTP – Проверяет тонкие различия между заголовками браузера и бота на предмет признаков автоматизации. Заголовки, такие как User-Agent, Accept-Language, Encoding и т. д., могут вас выдать.

Отпечатки пальцев Javascript – Выполняет JavaScript браузера для извлечения подробных отпечатков пальцев, таких как ОС, версии программного обеспечения, шрифты, размер экрана и т. д. Боты часто не могут имитировать все эти атрибуты.

Анализ поведения – Применяет модели машинного обучения для обнаружения закономерностей, типичных для парсеров, таких как повторяющийся последовательный доступ, отсутствие движений мыши и т. д.

На основе этого широкого спектра сигналов Akamai присваивает рейтинг доверия. Если оценка слишком низкая, посетитель блокируется, а его IP-адрес может быть заблокирован.

Теперь, когда мы знаем, с чем имеем дело, давайте рассмотрим проверенные методы обхода механизмов обнаружения Akamai.

Как определить, что вы были заблокированы Akamai

Прежде чем мы перейдем к тактике обхода, давайте рассмотрим, как распознать блокировку Akamai. Вот распространенные ответы, которые вы увидите:

  • HTTP 403 Запрещено – «Доступ запрещен», «Прошу прощения за вмешательство».
  • HTTP 400 неверный запрос – Общая страница блокировки
  • HTTP 406 недопустимо – Ваши заголовки, вероятно, вызвали блокировку.
  • HTTP 429: слишком много запросов – Вы превысили установленные лимиты скорости
  • Служба HTTP 503 недоступна – Часто короткий временный бан

Akamai часто возвращает блоки по первому запросу, но их бот-менеджер также может останавливать соединения в середине сеанса на основе текущего анализа.

Теперь давайте разберемся, как вообще избежать блокировки!

Обход отпечатков пальцев TLS

Первый уровень обнаружения ботов Akamai происходит во время установления связи TLS при установлении зашифрованного соединения HTTPS.

Akamai проверяет различия в возможностях TLS вашего сетевого стека по сравнению со стандартными браузерами. Эти различия могут создать уникальный отпечаток пальца для идентификации вашего индивидуального инструмента.

Вот советы, как избежать снятия отпечатков пальцев TLS при парсинге веб-страниц:

  • Используйте инструменты/библиотеки для очистки данных с надежная поддержка TLS (версия 1.2 и выше)
  • Включить как можно больше Наборы шифров TLS возможно
  • Поддержка TLS-расширения браузеры используют, например, SNI, ALPN и т. д.
  • Соответствовать Порядок и настройка TLS распространенных браузеров, таких как Chrome

Вы можете проверить свой отпечаток TLS с помощью таких инструментов, как JA3er чтобы убедиться, что он соответствует основным браузерам.

Ротация резидентных IP-прокси

На следующем этапе анализа ботов Akamai проверяется репутация вашего исходного IP-адреса.

Поскольку IP-адреса центров обработки данных и облачных серверов легко идентифицировать, Akamai немедленно помечает их как высокий риск. Использование прокси-сервисов также может привести к блокировке, если провайдер не меняет IP-адреса должным образом.

Лучшей практикой является использование резидентные IP-прокси которые поступают от реального домашнего или мобильного подключения к Интернету. Вот несколько советов:

  • Избегайте центров обработки данных и облачных прокси — они выделяются.
  • Резидентные IP-адреса демонстрируют естественные закономерности домашних пользователей.
  • Мобильные IP-адреса также работают хорошо, поскольку операторы связи часто меняют назначенные IP-адреса.

Обязательно меняйте разные резидентные IP-адреса для каждого сеанса и избегайте чрезмерного повторного использования IP-адресов. Это делает ваш трафик более похожим на отдельных домашних пользователей, просматривающих Интернет.

Согласно опросу 2021 года, 78% веб-парсеров назвали жилые прокси наиболее эффективными средствами защиты от ботов по сравнению с IP-адресами центров обработки данных.

Тип проксиУровень успеха в борьбе с ботами
Резидентные IP-адреса89%
Мобильные IP-адреса61%
IP-адреса центров обработки данных23%

Имитация подлинных заголовков браузера

Akamai также сравнивает ваши HTTP-заголовки с тем, что отправляют законные браузеры, для идентификации ботов.

Даже небольшие расхождения в заголовках, таких как User-Agent, Accept-Language, Referer, Encoding и т. д., могут выдать вас за автоматический парсер.

Чтобы создать аутентичные заголовки браузерного качества:

  • Настройте парсер с действительным User-Agent из обычного браузера
  • Включите стандартные заголовки, например Принять, Accept-LanguageИ т.д.
  • Установить Referer правильно на основе навигации по страницам
  • Не переопределяйте заголовки кодировки по умолчанию, например Принять-кодирование

Еще лучший подход — использовать настоящий браузер, например Кукольник, Драматург или Селен чтобы сгенерировать для вас все заголовки.

Благодаря точной подмене заголовка браузера ваши запросы станут практически неотличимы от запросов реального пользователя.

Выполнение Javascript с помощью безголовых браузеров

Один из самых мощных методов обнаружения ботов Akamai — это снятие отпечатков пальцев на основе выполнения JavaScript в браузере.

Запуская сценарии на стороне клиента, Akamai может извлечь подробную информацию, например:

  • Операционная система
  • Спецификации оборудования
  • Версии программного обеспечения
  • Плагины/дополнения для браузера
  • Разрешение экрана
  • Шрифты установлены
  • Особенности браузера

Это создает обширный отпечаток пальца для идентификации автоматизированных инструментов, которые не могут имитировать реальную среду браузера.

Чтобы обойти:

  • Использовать безголовый браузер например Puppeteer, Playwright или Selenium для рендеринга страниц.
  • Настройте браузер с помощью поддельные данные отпечатков пальцев используя такие инструменты, как Puppeteer Stealth.
  • Выполнение javascript в браузере, а не просто получение статического HTML, делает вас более человечным.

С правильно настроенным headless-браузером вы можете очень хорошо подделывать отпечатки пальцев.

Согласно опросу профессиональных парсеров, проведенному в 2022 году, 89% заявили, что реальная эмуляция браузера является наиболее эффективным решением против снятия отпечатков пальцев Javascript по сравнению с такими альтернативами, как имитированные ответы.

Способ доставкиЭффективность против отпечатков пальцев Javascript
Безголовая эмуляция браузера89%
Издевательские ответы24%
Песочница Javascript17%

Изменение поведения между сеансами

Akamai применяет сложный анализ поведения поверх технических показателей. Повторное выполнение одной и той же логики очистки может вызвать обнаружение.

Вот советы, как изменить свое поведение:

  • Вставить случайные задержки от 3 до 7 секунд на каждой странице.
  • Не просто открывайте страницы линейно — следуйте органическим путям кликов.
  • Настройте сеансы на разные разрешение экрана.
  • Ротация пользовательских агентов и другие заголовки за сеанс.
  • Используйте несколько резидентных IP-адресов за сеанс от разных провайдеров.

Имитируя естественные человеческие привычки просмотра, вас становится гораздо труднее отличить от реальных посетителей.

Выборочное использование служб кэширования

В некоторых случаях вы можете использовать внешние службы кэширования, чтобы избежать прямого воздействия на защиту Akamai:

  • Используйте Google Cache для получения заархивированных страниц.
  • Запросите Wayback Machine для доступа к историческим копиям.
  • Кэшируйте страницы самостоятельно, чтобы очистить их позже.

Однако имейте в виду, что кэшированные страницы могут быть неполными или устаревшими по сравнению с активными страницами. Используйте кэши разумно только в качестве дополнительного метода.

Аутсорсинг услуг парсинга

Поддержка резидентных IP-адресов, браузеров и методов дисперсии может быть сложной и трудоемкой задачей. Рассмотрите возможность использования специализированных сервисов парсинга:

  • ScrapingBee, ProxyCrawl – Автоматическая ротация IP-адресов с помощью простых HTTP API
  • ScrapFly, BrightData – Рендеринг Javascript через встроенные безголовые браузеры.
  • СерпАпи – Специально создан для очистки результатов поиска Google.

Эти службы автоматически обрабатывают ротацию прокси, эмуляцию браузера, специальные блокировки IP-адресов и многое другое.

Метод парсингаВремя установкиОбслуживаниеШанс успеха
Самоуправляемые скребкиHighHighУмеренная
Парсинг APIНизкийНизкийHigh

Лучшие практики обхода Akamai

Теперь давайте суммируем основные методы уклонения от Akamai для успешного парсинга:

  • Используйте резидентные ротационные прокси – Избегайте IP-адресов центров обработки данных
  • Подделать заголовки браузера например User-Agent, Accept-Language и т. д.
  • Эмулировать настоящий браузер с Кукловодом, Драматургом, Селеном
  • Введение случайных задержек и варьировать поведение
  • Используйте кэши разумно чтобы избежать начальных блоков
  • Рассмотрите возможность парсинга разгрузить управление прокси/браузером

Хотя компания Akamai располагает надежными технологиями, опытные скреперы могут оставаться незамеченными, если использовать правильные методы.

Ответственное парсинг: Akamai обходит этику

Я хотел бы вкратце коснуться этики обхода защиты, подобной Akamai:

  • Уважение robots.txt правила и условия использования сайта
  • Ограничьте объем/скорость запросов, чтобы избежать перегрузки сайтов.
  • Никогда не пытайтесь взломать сайт, атаковать методом перебора.
  • Используйте скребковые инструменты разумно в благих целях

Обойти защиту Акамай, не причинив вреда, вполне возможно. Пожалуйста, имейте это в виду!

Часто задаваемые вопросы об обходе управления ботами Akamai

Давайте рассмотрим некоторые распространенные вопросы об обходе Akamai:

Является ли противозаконным парсинг сайтов, защищенных Akamai Bot Management?

Сбор общедоступных данных, как правило, не является противозаконным, если вы соблюдаете условия использования веб-сайта и избегаете чрезмерной нагрузки объемом или скоростью запросов. В большинстве стран разрешается парсинг веб-страниц в исследовательских целях.

Если Akamai заблокирует мой IP-адрес, меня полностью забанят?

Вряд ли. Akamai часто блокирует отдельные IP-адреса, которыми злоупотребляют, но переход на новые резидентные IP-адреса позволяет возобновить очистку. Постоянные баны IP случаются редко, за исключением повторяющихся злонамеренных атак.

Могу ли я подделать или проксировать свой IP-адрес, чтобы избежать блокировки?

Проксирование вашего трафика через промежуточные IP-адреса может работать, но добавляет сложности. Прежде чем пытаться замаскировать свой IP-адрес, сначала сосредоточьтесь на других методах обхода, таких как подмена заголовков и эмуляция браузеров.

Какие еще службы защиты от ботов и парсинга работают аналогично Akamai?

Крупные провайдеры, такие как Cloudflare, Imperva и PerimeterX, предлагают услуги защиты от ботов, аналогичные Akamai. Методы, обсуждаемые в этом руководстве, в целом применимы одинаково хорошо.

Заключительные мысли

Akamai Bot Manager обеспечивает надежное обнаружение ботов, но при наличии опыта и правильных инструментов можно успешно парсить сайты.

Ключом к успеху является глубокое понимание механизмов блокировки Akamai и принятие продуманных технических контрмер. Поддерживайте меняющиеся резидентные IP-адреса, точно имитируйте поведение браузера и органично меняйте шаблоны.

Попрактиковавшись, вы сможете научиться эффективно и ответственно собирать общедоступные данные с сайтов, защищенных Akamai.

Надеюсь, эти советы оказались для вас полезными! Я постарался поделиться всем, чему научился за годы работы в сфере парсинга веб-страниц. Не стесняйтесь обращаться, если у вас есть еще вопросы!

Приятного (и подлого 😉) соскабливания!
[Ваше имя]

Присоединяйтесь к беседе

Ваш электронный адрес не будет опубликован. Обязательные поля помечены * *