Przejdź do treści głównej

Util::hCaptcha - rozpoznawanie hCaptcha

Przegląd scrapera​

Ten scraper jest używany wyłącznie jako komponent podrzędny w innych scraperach, gdzie może być konieczne rozwiązanie hCaptcha, a także w niestandardowych scraperach JavaScript.

Zasada działania tego scrapera polega na wysyłaniu danych hCaptcha (zazwyczaj jest to sitekey i url strony, na której wystąpiła hCaptcha) do serwisu rozwiązującego i otrzymaniu w odpowiedzi tokena składającego się z cyfr i liter. Poprawność rozwiązania zależy wyłącznie od serwisu rozwiązującego; zazwyczaj serwisy prawie zawsze rozwiązują hCaptcha poprawnie.

Funkcje​

  • Obsługiwana jest współpraca z następującymi serwisami: AntiCaptcha, RuCaptcha, 2captcha, CapMonster.cloud, CapSolver, captchas.io, XEvil, NextCaptcha
  • Możliwość konfiguracji czasu oczekiwania na odpowiedź oraz opóźnienia sprawdzenia statusu

Zastosowania​

  • Rozpoznawanie hCaptcha w scraperach, w których opcjonalnie lub obowiązkowo należy rozwiązać hCaptcha w celu uzyskania wyników

Zapytania​

Scraper przyjmuje zapytania dwóch rodzajów:

  • sitekey url
  • sitekey url proxy user-agent

Parametry są oddzielone spacją i oznaczają:

  • sitekey - to sitekey hCaptcha
  • url - strona, na której znajduje się hCaptcha
  • proxy - proxy, przez które otrzymano hCaptcha. Parametr powinien być w formacie login:pass@ip:port@type dla proxy z autoryzacją lub ip:port@type dla proxy bez autoryzacji
    • type może być http, https, socks4, socks5
  • user-agent - user-agent, z którym otrzymano hCaptcha

Warianty wyświetlania wyników​

  • $resp - odpowiedź (token) hCaptcha
  • $error - jeśli wystąpił błąd, jego opis

Wyświetlanie tokena hCaptcha​

Format wyniku:

$resp

Przykład wyniku:

P0_eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJwYXNza2V5IjoiVXJ3bllsN0VIeGxsTTA2Nm5LVTl3VFQzY3dFdmJTTVpreGZnUGM5YlNjaFZCaE1JL0l5MnR2VjN6TjlVQUM4cjEyOWlFaHZrUkg4VnV5Y3JwUW1wRjFFZ0wwZk92VjFuRjlyV1dmUlhSYjRFaHdvekw5RitaNXdlenBHR1FRQkgzdWF5dCtYWnJSM2d2Mjh6WXhmeTdLaGlCUjFDdDRLVG9tQ1RYVm90S3dsdTJHOW8xQm5XZy9jT0E1WGd1OUc1bGNBaFJMNVVRNGt4cm4rZ2hkTTlIdEJ3SU4xcTcyZnNtbGxGenN4UE40OGtwRFVBUXhydnVMcVlaTDA2SmozWWZNWWp0WUo5Qmo0RXZJcTFqWUZyMkRsQzJWOVBVdVN2WUcvSVZURXJHaWFSZ0tBMnNuRlRXekcvV0FoK2YwU0YyUWJlVnQ2RnpoTmhValVZSmxsUVVuc1d5Y2libEZ2Ynp3ZkwzUHFqQ2Z0UnZtUFFKbE1EYjk5VVYzUUN0a2tBbHJ1bFVyNVJoVDhrckQwSkY3SkZzSU1MbUw3aXBmMkF0T1B4ZDQ1eS9UTlBrbG9vZGRQajlOUlYxeGZYWGNoQklobEcwRDR5UVNlZGw5VDBKTzZVREI1T3VCMTEzakRwUzFUMGcrbFJIRDN0RnNtRStjRms3bmZ6TTBRZzZRYWtJQWhZZkpJcEV6MldTTkFLVnpYcjZBRG5xZ3Jmb2FXTWdMR2xuRWJMMGcxRTN2SHNqbzhZNTk3ek9jTWhUdXpqSEk2RElIWmgwYWxYV3paKzduRjZscHl5KzNHTUovTXJYOHlpT2toS3dsSUtrWHpMSnUrT2wzMjQzQW1VMzEzc0hVUk1zRUszSDJHM1dIeUpOWk55OXFyZVk1NVg2cWFja25DSFozNStVWk5rV21UOStjdXZyNG95MDZ0Q1dGZjhLbjdrTVVXM25odHF5L3F6dEN2YjZ6RDdEN05BczI3RlFKU3IrTlJmNkh4aHBJK29QR0QvWnhXV1dVSlZhT3Rvb3NQbFZPdzdKakVQM1NMUHZ4VzhncElUeTlKc3MvWVE3aG43TGVxSDYyQ2RFWE1WdEYxRmZyU3FBT3VobjVwRnV6MmlLM1FLTy9lZGFJNXBpd05OWkg2cTk1WjVMTXBzNkJFZE1qaVBPUENsazl3OUpaeTJZUklxU1hVUUxvWUpyT0tFYlJHaEU0RkpkTTlYTk1FMWJHdVRkbWZ1WkxuZmwwTVF6R0EyU3lwSDQ0NDcwcjRPT3hSY2JGT3ZqcmZ6dzdHcHpxaWcxMVREcWQxQllrOEQ4WDNtaVZlblF2VzNIZUFjWWtyQ2tlRDBGUXJzM3kreVVoWE9mM3BFWUNLcWhtdHpYZ2NZMVBlVHF5Zit5Mms0SEdMaUhGN1V3MkNlc05KY3dDMkU1WVNWUW9QbjZaYWUzZWxyWDVFUWRkSnNiTS9STllPZ3RZOThwbmdaK2ZkdEw0MXRVRThnY3VaQ0tDdXVyU1l2SmVLM3g5YkxOU2E4a0ZGdlZDUzVYbkQ1Q0FENm5GS3M5WWhsSEFZZmE4UjJmK1FkWk9LS3dQRWNDbFNzaVErdjJqczRKcXJjKzlVTjhLbjRHbGpBenRDS2JWbE5SOFEwcjNqT0g5SzdBSS93bEFUNVFIVWgyQ2I1aE93TkpXTEdXQlgzd1VkZFNUOVh0RWsrTzlDclFFRnV1RDZKaDQvUUdXMHBiSE9pSzVwQmRFdnFrRngzUlpDcXZES1dTaUJlZUZuME4xNWlmeDJ5SkUzZFdrTk5GVzVTaUZ1UktRWlVER3NsNzYxSzZiTVJPalQ5Ujc5bnBldC8xUThEN2Y4aEZhenBBekhlT2gxNHVONGExUUhOYlNwWXphT3JVSEhIQ0lCUHRCQVVFZFhuQWZIdmV6OXIrSnZONWtzVXJFVE1jNk41N2FmMFUvR3pOY2F4bVBRNUJJNGRxdTl4YmNDZ3hFYlpmc0VURGhxbjBDdGNGT21MQ1NUdEdLQ2dGTDhLSDRxZmtJd2NReENaZ1RLcHo2dVFqUEN0RmphL0pDU2RYcVZ2dWJlYm5BMzk0bFVZeG05YkFiQVdSZXZDaFB2R0NnUXczZWNNalVUczYwNVYyMS9BR2o2NndDU09IN3hkY09KQmdVVzVWNTZDMEFNUTVCQWZRZTdFOHo0eTBtb0srbXVrVmgrRzk5b0tZcm8vckJLdFdoVGthc1dtbU42d3IwcVhaVHBrWGJ5a29PdnZOMWZpaGFZR0J0OXlTSlpYZWowWHBiTGpOY2plSHpBVzI4dldNb0NIZmVCcmc2bjJqVU5xQnZDSitOSUZ0eUlqQjBCMmZ0MjdDVWI2ZzlRV0IzWVNZeVZzbG9nbm1DbzFwem5pQzZqaTRTMkVxbWpTMldtRVJ0am4ranA3NEZQSVlORkw4b3BpSUp1bnhwY2ZtM0dkL3RWY0lFeFpYVlZkTUVIV3llUHhGdzBTdVNld0RseCtaamJpc2RMQXBsd2RYalZqZ0g3cE5VTGxVbXREalRBakV0bFlYVmI4YUl3NEI0bk1uTGJQb0hXeVY4RUJjMWo4ZGdnOTU5Mk01OUk0NFBoMUFTTjZVZz09TnNTUFo4czYxdEwreTh2YyIsImV4cCI6MTY0MzE4NDg4MSwic2hhcmRfaWQiOjgyMDc4NjA4NiwicGQiOjB9.V7DPQWNQkZBS_g2OX0B64zFnrHqnPMmGKv44vLW5N5g

Możliwe ustawienia​

Do wyboru serwisu służy parametr Provider.

ParametrWartość domyślnaOpis
Client keyKlucz klienta dla serwisów rozwiązywania online
Provider urlURL dostawcy, pozwala nadpisać domenę. Można podać kilka oddzielonych przecinkiem, scraper będzie używał każdego z nich losowo. Może być pusty, scraper automatycznie użyje właściwego w zależności od wybranego serwisu rozwiązywania
ProviderAntiCaptchaSerwis rozwiązywania
Wait between get status5Opóźnienie między sprawdzaniem statusu
Max wait time300Maksymalny czas oczekiwania na rozwiązanie