Skip to main content

Util::hCaptcha - hCaptcha recognition

Overview of the scraper

This scraper is used only as a plugin component in other scrapers where solving hCaptcha may be necessary, as well as in custom JavaScript scrapers.

The principle of operation of this scraper is to send hCaptcha data (usually the sitekey and the URL of the page where the hCaptcha was obtained) to a solving service and receive a token consisting of numbers and letters in response. The correctness of the solution depends only on the solving service; usually, services almost always solve hCaptcha correctly.

TODO: (next) Describe connection/usage and/or provide a link to an example

Capabilities

  • Supports the following services: AntiCaptcha, RuCaptcha, 2captcha, CapMonster.cloud, CapSolver, captchas.io, XEvil, NextCaptcha
  • Ability to configure response timeout and status check delay

Use Cases

  • Recognizing hCaptcha in scrapers where it is optionally or necessarily required to solve hCaptcha to obtain results

Queries

The scraper accepts two types of queries:

  • sitekey url
  • sitekey url proxy user-agent

Parameters are separated by a space and mean:

  • sitekey - this is the hCaptcha sitekey
  • url - the page where hCaptcha is located
  • proxy - the proxy through which hCaptcha was obtained. The parameter should be in the format login:pass@ip:port@type for authenticated proxy or ip:port@type for unauthenticated proxy
    • type can be http, https, socks4, socks5
  • user-agent - user agent with which hCaptcha was obtained

Output Results Examples

  • $resp - hCaptcha response (token)
  • $error - if an error occurred, its description

hCaptcha token output

Result format:

$resp

Example result:

P0_eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJwYXNza2V5IjoiVXJ3bllsN0VIeGxsTTA2Nm5LVTl3VFQzY3dFdmJTTVpreGZnUGM5YlNjaFZCaE1JL0l5MnR2VjN6TjlVQUM4cjEyOWlFaHZrUkg4VnV5Y3JwUW1wRjFFZ0wwZk92VjFuRjlyV1dmUlhSYjRFaHdvekw5RitaNXdlenBHR1FRQkgzdWF5dCtYWnJSM2d2Mjh6WXhmeTdLaGlCUjFDdDRLVG9tQ1RYVm90S3dsdTJHOW8xQm5XZy9jT0E1WGd1OUc1bGNBaFJMNVVRNGt4cm4rZ2hkTTlIdEJ3SU4xcTcyZnNtbGxGenN4UE40OGtwRFVBUXhydnVMcVlaTDA2SmozWWZNWWp0WUo5Qmo0RXZJcTFqWUZyMkRsQzJWOVBVdVN2WUcvSVZURXJHaWFSZ0tBMnNuRlRXekcvV0FoK2YwU0YyUWJlVnQ2RnpoTmhValVZSmxsUVVuc1d5Y2libEZ2Ynp3ZkwzUHFqQ2Z0UnZtUFFKbE1EYjk5VVYzUUN0a2tBbHJ1bFVyNVJoVDhrckQwSkY3SkZzSU1MbUw3aXBmMkF0T1B4ZDQ1eS9UTlBrbG9vZGRQajlOUlYxeGZYWGNoQklobEcwRDR5UVNlZGw5VDBKTzZVREI1T3VCMTEzakRwUzFUMGcrbFJIRDN0RnNtRStjRms3bmZ6TTBRZzZRYWtJQWhZZkpJcEV6MldTTkFLVnpYcjZBRG5xZ3Jmb2FXTWdMR2xuRWJMMGcxRTN2SHNqbzhZNTk3ek9jTWhUdXpqSEk2RElIWmgwYWxYV3paKzduRjZscHl5KzNHTUovTXJYOHlpT2toS3dsSUtrWHpMSnUrT2wzMjQzQW1VMzEzc0hVUk1zRUszSDJHM1dIeUpOWk55OXFyZVk1NVg2cWFja25DSFozNStVWk5rV21UOStjdXZyNG95MDZ0Q1dGZjhLbjdrTVVXM25odHF5L3F6dEN2YjZ6RDdEN05BczI3RlFKU3IrTlJmNkh4aHBJK29QR0QvWnhXV1dVSlZhT3Rvb3NQbFZPdzdKakVQM1NMUHZ4VzhncElUeTlKc3MvWVE3aG43TGVxSDYyQ2RFWE1WdEYxRmZyU3FBT3VobjVwRnV6MmlLM1FLTy9lZGFJNXBpd05OWkg2cTk1WjVMTXBzNkJFZE1qaVBPUENsazl3OUpaeTJZUklxU1hVUUxvWUpyT0tFYlJHaEU0RkpkTTlYTk1FMWJHdVRkbWZ1WkxuZmwwTVF6R0EyU3lwSDQ0NDcwcjRPT3hSY2JGT3ZqcmZ6dzdHcHpxaWcxMVREcWQxQllrOEQ4WDNtaVZlblF2VzNIZUFjWWtyQ2tlRDBGUXJzM3kreVVoWE9mM3BFWUNLcWhtdHpYZ2NZMVBlVHF5Zit5Mms0SEdMaUhGN1V3MkNlc05KY3dDMkU1WVNWUW9QbjZaYWUzZWxyWDVFUWRkSnNiTS9STllPZ3RZOThwbmdaK2ZkdEw0MXRVRThnY3VaQ0tDdXVyU1l2SmVLM3g5YkxOU2E4a0ZGdlZDUzVYbkQ1Q0FENm5GS3M5WWhsSEFZZmE4UjJmK1FkWk9LS3dQRWNDbFNzaVErdjJqczRKcXJjKzlVTjhLbjRHbGpBenRDS2JWbE5SOFEwcjNqT0g5SzdBSS93bEFUNVFIVWgyQ2I1aE93TkpXTEdXQlgzd1VkZFNUOVh0RWsrTzlDclFFRnV1RDZKaDQvUUdXMHBiSE9pSzVwQmRFdnFrRngzUlpDcXZES1dTaUJlZUZuME4xNWlmeDJ5SkUzZFdrTk5GVzVTaUZ1UktRWlVER3NsNzYxSzZiTVJPalQ5Ujc5bnBldC8xUThEN2Y4aEZhenBBekhlT2gxNHVONGExUUhOYlNwWXphT3JVSEhIQ0lCUHRCQVVFZFhuQWZIdmV6OXIrSnZONWtzVXJFVE1jNk41N2FmMFUvR3pOY2F4bVBRNUJJNGRxdTl4YmNDZ3hFYlpmc0VURGhxbjBDdGNGT21MQ1NUdEdLQ2dGTDhLSDRxZmtJd2NReENaZ1RLcHo2dVFqUEN0RmphL0pDU2RYcVZ2dWJlYm5BMzk0bFVZeG05YkFiQVdSZXZDaFB2R0NnUXczZWNNalVUczYwNVYyMS9BR2o2NndDU09IN3hkY09KQmdVVzVWNTZDMEFNUTVCQWZRZTdFOHo0eTBtb0srbXVrVmgrRzk5b0tZcm8vckJLdFdoVGthc1dtbU42d3IwcVhaVHBrWGJ5a29PdnZOMWZpaGFZR0J0OXlTSlpYZWowWHBiTGpOY2plSHpBVzI4dldNb0NIZmVCcmc2bjJqVU5xQnZDSitOSUZ0eUlqQjBCMmZ0MjdDVWI2ZzlRV0IzWVNZeVZzbG9nbm1DbzFwem5pQzZqaTRTMkVxbWpTMldtRVJ0am4ranA3NEZQSVlORkw4b3BpSUp1bnhwY2ZtM0dkL3RWY0lFeFpYVlZkTUVIV3llUHhGdzBTdVNld0RseCtaamJpc2RMQXBsd2RYalZqZ0g3cE5VTGxVbXREalRBakV0bFlYVmI4YUl3NEI0bk1uTGJQb0hXeVY4RUJjMWo4ZGdnOTU5Mk01OUk0NFBoMUFTTjZVZz09TnNTUFo4czYxdEwreTh2YyIsImV4cCI6MTY0MzE4NDg4MSwic2hhcmRfaWQiOjgyMDc4NjA4NiwicGQiOjB9.V7DPQWNQkZBS_g2OX0B64zFnrHqnPMmGKv44vLW5N5g

Possible settings

The Provider parameter is used to select the service.

ParameterDefault valueDescription
Client keyClient key for online solving services
Provider urlProvider URL, allows overriding the domain. Multiple can be specified separated by a comma; the scraper will use each of them in random order. Can be empty; the scraper automatically uses the correct one depending on the selected solving service
ProviderAntiCaptchaSolving service
Wait between get status5Delay between status checks
Max wait time300Maximum solving wait time
Threshold % for Capmonster.Cloud0Confidence threshold (used only in capmonster.cloud)