Skip to main content
W tym artykule przedstawimy sposób integracji API do rozpoznawania protokołów hCaptcha, który pozwala użytkownikom na automatyczne dekodowanie i weryfikację bez konieczności rozpoznawania i klikania na obrazy z kodami weryfikacyjnymi hCaptcha, wystarczy przesłać klucz witryny.

Proces aplikacji

Aby skorzystać z API do rozpoznawania protokołów hCaptcha, najpierw przejdź do konsoli Ace Data Cloud, aby uzyskać swój token API, który należy zachować na przyszłość. Jeśli nie jesteś zalogowany lub zarejestrowany, automatycznie zostaniesz przekierowany na stronę logowania, aby zarejestrować się i zalogować, a po zakończeniu zostaniesz automatycznie przekierowany z powrotem na bieżącą stronę. Jeden token API wystarczy do korzystania ze wszystkich usług platformy, nie ma potrzeby składania osobnych wniosków dla każdej usługi. Przy pierwszym wniosku otrzymasz darmowy limit, aby móc skorzystać z usługi za darmo; w przypadku niewystarczającego limitu możesz doładować saldo ogólne w konsoli.
📘 Pełna dokumentacja: API do rozpoznawania protokołów hCaptcha →

Podstawowe użycie

Najpierw zapoznaj się z podstawowym sposobem użycia, czyli wprowadzeniem URL witryny, na której znajduje się hCaptcha, aby uzyskać przetworzony wynik. Najpierw musisz przekazać pole website_url, nasza przykładowa witryna to: https://accounts.hcaptcha.com/demo, musimy uzyskać website_key na stronie website_url, najpierw otwórz tę stronę, naciśnij F12, aby przejść do konsoli, a następnie w zakładce Elementy wykonaj globalne wyszukiwanie hcaptcha-demo, uzyskując poniższy wynik:

String odpowiadający data-sitekey to wartość website_key, poniżej znajdują się konkretne wyniki parametrów:

Można zauważyć, że ustawiliśmy nagłówki żądania, w tym:
  • accept: jakiego formatu odpowiedzi oczekujesz, tutaj wpisujemy application/json, czyli format JSON.
  • authorization: klucz do wywołania API, po złożeniu wniosku można go bezpośrednio wybrać z rozwijanej listy.
Dodatkowo ustawiono ciało żądania, w tym:
  • website_url: URL witryny, na której znajduje się kod weryfikacyjny.
  • website_key: identyfikator klucza witryny w hCaptcha.
Po dokonaniu wyboru można zauważyć, że po prawej stronie wygenerowano odpowiedni kod, jak pokazano na rysunku:

Kliknij przycisk „Try”, aby przeprowadzić test, jak pokazano na powyższym obrazku, uzyskując następujący wynik:
Można zobaczyć, że otrzymaliśmy wynik weryfikacji hCaptcha, który możemy wykorzystać do POST lub symulacji przesyłania do docelowej strony internetowej, jednorazowego użytku, ważny przez 120 sekund, zaleca się użycie w ciągu 60 sekund. Następnie zostanie podany fragment CURL, który przesyła przetworzony token do docelowej strony, aby przejść przez weryfikację Recaptcha2. Najpierw musimy dowiedzieć się, jak strona wysyła żądania POST, abyśmy mogli wprowadzić wygenerowany token. Musimy najpierw otworzyć konsolę F12, a następnie ręcznie przejść przez proces, a na końcu zobaczymy, że strona wysłała żądanie POST. Musimy tylko sprawdzić konstrukcję tego żądania POST, a konkretny proces wygląda następująco:
  • Najpierw ręcznie przechodzimy przez weryfikację, jak pokazano na poniższym obrazku:

  • Następnie klikamy submit, obserwując zmiany w konsoli sieciowej, jak pokazano na poniższym obrazku:

  • Analizujemy konstrukcję żądania POST, a na końcu możemy kliknąć prawym przyciskiem myszy na to żądanie, aby skopiować kod CURL, jak pokazano na poniższym obrazku:

Z analizy powyższego obrazu wynika, że URL żądania POST to: https://accounts.hcaptcha.com/demo, musimy tylko przesłać parametry g-recaptcha-response, h-captcha-response i email, a następnie wystarczy wprowadzić przetworzony token w poniższych danych, wywołując odpowiedni kod CURL do weryfikacji tokena:
Odpowiedni kod Python do weryfikacji tokena wygląda następująco:
Następnie obserwujemy, że konsola pokazuje taki wynik:

Na końcu przeszliśmy przez weryfikację hCaptcha. Dodatkowo, jeśli chcesz wygenerować odpowiedni kod do integracji, możesz po prostu skopiować wygenerowany kod, na przykład kod CURL wygląda następująco:
Kod integracji w Pythonie wygląda następująco:

Tryb asynchroniczny (async)

Domyślnie API jest synchroniczne i blokujące: jedno żądanie będzie czekać, aż przetwarzanie tokena zostanie zakończone, zanim zwróci wynik. Jeśli wykonujesz rotację wielu rozwiązań (multi-solver rotation) i chcesz „natychmiast uzyskać task_id po złożeniu zadania, a następnie przejść do innych rozwiązań, a później wrócić po wynik”, możesz wprowadzić async: true w ciele żądania. Po wprowadzeniu async: true interfejs natychmiast zwróci task_id, a nie będzie blokować oczekiwania:
Następnie użyj tego task_id, aby cyklicznie sprawdzać POST /captcha/tasks (zaleca się co 3-5 sekund), aby uzyskać wynik:
W trakcie przetwarzania zwróci status: processing:
Po zakończeniu przetwarzania zwróci status: ready i token:
Opis rozliczeń: w trybie asynchronicznym tworzenie zadań i cykliczne sprawdzanie „w trakcie przetwarzania” nie jest obciążane kosztami; opłata jest naliczana tylko raz, gdy token zostanie pomyślnie uzyskany (w tej samej wysokości co w trybie synchronicznym). Dlatego w przypadku rotacji anulowanie zadań, które nie zostały jeszcze zakończone, nie generuje kosztów. /captcha/tasks jest uniwersalne dla wszystkich interfejsów CAPTCHA (token i seria rozpoznawania, takich jak hcaptcha, recaptcha2, recaptcha3, recognition/* itp.), można używać tego samego task_id do cyklicznego sprawdzania.

Obsługa błędów

Podczas wywoływania API, jeśli napotkasz błąd, API zwróci odpowiedni kod błędu i informacje. Na przykład:
  • 400 token_mismatched: Złe żądanie, prawdopodobnie z powodu brakujących lub nieprawidłowych parametrów.
  • 400 api_not_implemented: Złe żądanie, prawdopodobnie z powodu brakujących lub nieprawidłowych parametrów.
  • 401 invalid_token: Nieautoryzowany, nieprawidłowy lub brakujący token autoryzacyjny.
  • 429 too_many_requests: Zbyt wiele żądań, przekroczono limit.
  • 500 api_error: Błąd wewnętrzny serwera, coś poszło nie tak na serwerze.

Przykład odpowiedzi błędu

Wnioski

Dzięki temu dokumentowi zrozumiałeś, jak używać API rozpoznawania protokołu hCaptcha, aby użytkownicy nie musieli rozpoznawać i klikać na obrazy weryfikacji hCaptcha, wystarczy przesłać klucz witryny, aby zrealizować automatyczne dekodowanie w tle i zakończyć weryfikację. Mamy nadzieję, że ten dokument pomoże Ci lepiej zintegrować i korzystać z tego API. W razie jakichkolwiek pytań, prosimy o kontakt z naszym zespołem wsparcia technicznego.