CAPSOLVER
Блог
Как решить капчу Cloudflare Turnstile с помощью Selenium

Как обойти капчу Turnstile Cloudflare с помощью Selenium

Logo of CapSolver

Nikolai Smirnov

Software Development Lead

11-Oct-2024

Ваш веб-скрейпер сталкивается с блокировкой запросов Cloudflare? Капчи Turnstile от Cloudflare предназначены для идентификации и блокировки автоматизированного трафика, создавая значительные препятствия для веб-скрейпинга и автоматизации. Однако, используя headless-браузер, такой как Selenium, вы можете эффективно преодолеть эти препятствия. Тем не менее, стандартные настройки Selenium могут по-прежнему вызывать сложные анти-ботовые защиты Cloudflare.

В этом блоге мы рассмотрим несколько эффективных методов преодоления капч Cloudflare Turnstile с использованием Selenium.

Понимание капч Cloudflare Turnstile

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

Почему стоит выбрать Selenium?

Selenium - это мощный инструмент для автоматизации веб-браузеров, позволяющий имитировать действия пользователя, такие как клики, отправка форм и навигация. Однако, в силу своей автоматизированной природы, обычные настройки Selenium по-прежнему могут быть отмечены системами безопасности Cloudflare. Чтобы эффективно управлять капчами Turnstile, интеграция Selenium с дополнительными инструментами и методами может значительно повысить успех вашего веб-скрейпинга.

Эффективные методы решения капч Cloudflare Turnstile с помощью Selenium

1. Реализация CapSolver

Один из самых эффективных методов решения капч - использование сервиса решения капч, такого как CapSolver. Этот сервис использует продвинутые алгоритмы и человеческих решальщиков для быстрого и точного решения различных типов капч, включая Cloudflare Turnstile.

Бонусный код

Затрудняетесь с постоянными неудачами в решении раздражающей капчи?

Откройте для себя бесшовное автоматическое решение капч с помощью технологии Auto Web Unblock от Capsolver с поддержкой AI!

Получите бонусный код для лучших решений по работе с капчами; CapSolver: WEBS. После его активации вы получите дополнительный бонус в 5% после каждого пополнения баланса, без ограничений.

Шаги по реализации:

  1. Зарегистрируйтесь на аккаунте CapSolver.
  2. Интегрируйте API CapSolver в ваш скрипт Selenium.

Пример кода:

python Copy
# pip install requests
import requests
import time
 
api_key = "YOUR_API_KEY"  # ваш api ключ Capsolver
site_key = "0x4XXXXXXXXXXXXXXXXX"  # site ключ вашего целевого сайта
site_url = "https://www.yourwebsite.com"  # url страницы вашего целевого сайта
 
def capsolver():
    payload = {
        "clientKey": api_key,
        "task": {
            "type": 'AntiTurnstileTaskProxyLess',
            "websiteKey": site_key,
            "websiteURL": site_url,
            "metadata": {
                "action": ""  # optional
            }
        }
    }
    res = requests.post("https://api.capsolver.com/createTask", json=payload)
    resp = res.json()
    task_id = resp.get("taskId")
    if not task_id:
        print("Failed to create task:", res.text)
        return
    print(f"Got taskId: {task_id} / Getting result...")
 
    while True:
        time.sleep(1)  # delay
        payload = {"clientKey": api_key, "taskId": task_id}
        res = requests.post("https://api.capsolver.com/getTaskResult", json=payload)
        resp = res.json()
        status = resp.get("status")
        if status == "ready":
            return resp.get("solution", {}).get('token')
        if status == "failed" or resp.get("errorId"):
            print("Solve failed! response:", res.text)
            return
 
token = capsolver()
print(token)

В этом коде замените YOUR_API_KEY, 0x4XXXXXXXXXXXXXXXXX и https://www.yourwebsite.com на ваш фактический API-ключ CapSolver, site-ключ с целевого сайта и URL страницы, которую вы нацеливаете, соответственно. Этот скрипт создаст задачу для решения капчи Turnstile и вернет токен решения.

2. Использование Undetected ChromeDriver

Чтобы избежать обнаружения Cloudflare, важно использовать нераспознанную версию ChromeDriver. Анти-ботовые системы Cloudflare могут легко распознать стандартные экземпляры ChromeDriver, что приводит к вызовам капчи. Undetected ChromeDriver модифицирует отпечаток браузера и его поведение, чтобы минимизировать шансы обнаружения.

Шаги по реализации:

  1. Загрузите нераспознанный пакет ChromeDriver, например, undetected-chromedriver.
  2. Настройте Selenium для использования этой модифицированной версии.

Пример кода:

python Copy
from undetected_chromedriver.v2 import Chrome, ChromeOptions

options = ChromeOptions()
options.add_argument('--headless')  # Use headless mode if needed
driver = Chrome(options=options)

driver.get('https://example.com')
# Выполните необходимые действия и обработайте CAPTCHA

3. Использование SeleniumBase

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

Шаги по реализации:

  1. Установите SeleniumBase через pip:

    bash Copy
    pip install seleniumbase
  2. Используйте функции SeleniumBase для управления веб-взаимодействиями и обработки капч.

Пример кода:

python Copy
from seleniumbase import BaseCase

class MyTestClass(BaseCase):
    def test_example(self):
        self.open('https://example.com')
        # Выполните необходимые действия и обработайте CAPTCHA

4. Использование плагина Selenium Stealth

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

Шаги по реализации:

  1. Установите плагин Selenium Stealth:

    bash Copy
    pip install selenium-stealth
  2. Интегрируйте плагин в вашу настройку Selenium.

Пример кода:

python Copy
from selenium import webdriver
from selenium_stealth import stealth

driver = webdriver.Chrome()

stealth(driver,
        languages=["en-US", "en"],
        vendor="Google Inc.",
        platform="Windows",
        webgl_vendor="Google Inc.",
        render="WebKit",
        fix_hairline=True
       )

driver.get('https://example.com')
# Выполните необходимые действия и обработайте CAPTCHA

5. Использование премиальных прокси

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

Шаги по реализации:

  1. Приобретите список премиальных прокси у надежного поставщика.
  2. Настройте Selenium для использования этих прокси для веб-запросов.

Заключение

Успешное преодоление капч Cloudflare Turnstile требует сочетания продвинутых методов и инструментов. Интегрируя CapSolver с Selenium, используя нераспознанные версии ChromeDriver, задействуя SeleniumBase, используя плагины скрытности и премиальные прокси, вы можете повысить свои возможности веб-скрейпинга, гарантируя при этом соблюдение протоколов веб-безопасности. Всегда помните о соблюдении этических норм и используйте эти инструменты ответственно в своих веб-скрейпинговых начинаниях.

Дисклеймер о соблюдении: Информация, представленная в этом блоге, предназначена только для справочных целей. CapSolver обязуется соблюдать все применимые законы и нормы. Использование сети CapSolver для незаконной, мошеннической или злоупотребляющей деятельности строго запрещено и будет расследовано. Наши решения для распознавания капчи улучшают пользовательский опыт, обеспечивая 100% соблюдение при помощи в решении трудностей с капчей в процессе сбора общедоступных данных. Мы призываем к ответственному использованию наших услуг. Для получения дополнительной информации, пожалуйста, посетите наши Условия обслуживания и Политику конфиденциальности.

Ещеe

Как обойти защиту Cloudflare JS при веб-скрейпинге и автоматизации
Как обойти защиту Cloudflare JS при веб-скрапинге и автоматизации

Научитесь решать JavaScript-вызов Cloudflare для бесшовного веб-скрапинга и автоматизации. Откройте для себя эффективные стратегии, включая использование headless-браузеров, ротацию прокси и использование расширенных возможностей решения CAPTCHA от CapSolver.

Cloudflare
Logo of CapSolver

Nikolai Smirnov

05-Mar-2025

Отпечатки TLS в Cloudflare: что это такое и как их решить
Отпечатки TLS Cloudflare: что это и как это решить

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

Cloudflare
Logo of CapSolver

Nikolai Smirnov

28-Feb-2025

Как извлечь данные с сайта, защищенного Cloudflare
Как извлечь данные с сайта, защищенного Cloudflare

В этом руководстве мы рассмотрим этичные и эффективные методы извлечения данных с веб-сайтов, защищенных Cloudflare.

Cloudflare
Logo of CapSolver

Ethan Collins

20-Feb-2025

Как решать задачи Cloudflare с использованием Python и Go в 2025 году
Как решать задачи Cloudflare с использованием Python и Go в 2025 году

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

Cloudflare
Logo of CapSolver

Nikolai Smirnov

05-Nov-2024

Как решить капчи Cloudflare Turnstile с помощью Selenium
Как обойти капчу Turnstile Cloudflare с помощью Selenium

В этом блоге мы рассмотрим несколько эффективных способов обхода Captcha Turnstile от Cloudflare с помощью Selenium.

Cloudflare
Logo of CapSolver

Nikolai Smirnov

11-Oct-2024

Руководство по решению капчи Cloudflare Turnstile в Java для веб-автоматизации
Руководство по решению капчи Cloudflare Turnstile в Java для веб-автоматизации

Узнайте, как автоматизировать взаимодействие с веб-сайтами на Java и обойти CAPTCHA Cloudflare Turnstile с помощью практических инструментов и методов программирования.

Cloudflare
Logo of CapSolver

Nikolai Smirnov

08-Oct-2024