Jak ominąć CAPTCHA za pomocą Pythona#

O CAPTCHA#

CAPTCHA to skrót od „Completely Automated Public Turing test to tell Computers and Humans Apart”, który jest testem Turinga, który całkowicie automatycznie odróżnia komputery od ludzi. Jest to test służący do potwierdzenia, czy osoba odwiedzająca witrynę jest prawdziwą osobą, a nie zautomatyzowanym programem, takim jak bot lub złośliwe oprogramowanie. CAPTCHA jest zwykle prezentowana użytkownikowi w postaci obrazu i wymaga od użytkownika wprowadzenia słów lub liczb, które widzi w polu tekstowym. Ten rodzaj testów wykorzystuje rozpoznawanie obrazów i tekstu przez człowieka, aby zapewnić bezpieczeństwo witryny internetowej i zapobiec złośliwym atakom oraz zautomatyzowanym operacjom.

Przygotowanie środowiska#

Możesz zainstalować zestaw SDK NextCaptcha Python za pomocą pip:
pip install nextcaptcha-python

stosowanie#

Aby rozpocząć korzystanie z zestawu SDK NextCaptcha Python, należy najpierw uzyskać klucz API (clientKey) z dashboardu NextCaptcha. Następnie możesz utworzyć instancję NextCaptchaAPI:
from nextcaptcha import NextCaptchaAPI
 
api = NextCaptchaAPI(client_key="YOUR_CLIENT_KEY")
Teraz możesz używać obiektów API do rozwiązywania różnych typów captcha. Aby rozwiązać wyzwanie reCAPTCHA v2, użyj metody recaptchav2:
result = api.recaptchav2(website_url="https://example.com", website_key="SITE_KEY")
Rozwiązywanie problemów reCAPTCHA v2 Enterprise Aby rozwiązać problemy związane z reCAPTCHA v2 Enterprise, użyj metody recaptchav2enterprise:
result = api.recaptchav2enterprise(website_url="https://example.com", website_key="SITE_KEY")
Rozwiązywanie problemów reCAPTCHA v3 Aby rozwiązać wyzwania reCAPTCHA v3, użyj metody reCAPTCHAv3:
result = api.recaptchav3(website_url="https://example.com", website_key="SITE_KEY")
Rozwiązywanie zadania reCAPTCHA Mobile Aby rozwiązać wyzwanie reCAPTCHA Mobile, użyj metody recaptcha_mobile:
result = api.recaptcha_mobile(app_key="APP_KEY")
Rozwiązywanie problemów hCaptcha Aby rozwiązać wyzwania związane z hCaptcha, użyj metody hcaptcha:
result = api.hcaptcha(website_url="https://example.com", website_key="SITE_KEY")
Rozwiązywanie problemów z hCaptcha Enterprise Aby rozwiązać problemy związane z hCaptcha Enterprise, użyj metody hcaptcha_enterprise:
result = api.hcaptcha_enterprise(website_url="https://example.com", website_key="SITE_KEY")
Rozwiązywanie FunCaptcha Aby rozwiązać wyzwanie FunCaptcha, użyj metody funcaptcha:
result = api.funcaptcha(website_public_key="WEBSITE_PUBLIC_KEY")
Sprawdzanie salda konta Aby sprawdzić saldo konta NextCaptcha, użyj metody get_balance:
balance = api.get_balance()
print(f"Account balance: {balance}")
Oto kompletny przykład użycia zestawu SDK NextCaptcha Python do rozwiązania wyzwania reCAPTCHA v2:
from nextcaptcha import NextCaptchaAPI
 
CLIENT_KEY = "YOUR_CLIENT_KEY"
WEBSITE_URL = "https://example.com"
WEBSITE_KEY = "SITE_KEY"
 
api = NextCaptchaAPI(client_key=CLIENT_KEY)
result = api.recaptchav2(website_url=WEBSITE_URL, website_key=WEBSITE_KEY)
 
if result["status"] == "ready":
    print(f"reCAPTCHA solved: {result['solution']}")
else:
    print(f"Failed to solve reCAPTCHA: {result['error']}")

Obsługa błędów#

Jeśli w kodzie weryfikacyjnym wystąpi błąd, SDK zwróci słownik zawierający informacje o błędzie. Możesz sprawdzić pole stanu, aby ustalić, czy żądanie powiodło się. Jeśli status to „Gotowy”, kod weryfikacyjny został pomyślnie rozwiązany, a rozwiązanie będzie dostępne w polu rozwiązania. Jeśli status to „Niepowodzenie”, pole błędu będzie zawierać opis błędu