HCaptchaTaskProxyless: résoudre HCaptcha sans proxy
Les développeurs de hCaptcha appellent leur captcha "une solution de remplacement pour Recaptcha". Nous avons essayé de créer la même chose dans notre API, donc les propriétés de la tâche sont absolument les mêmes que dans RecaptchaV2TaskProxyless sauf la propriété "type".
Remarque importante concernant la valeur de l'agent utilisateur. Auparavant, il était possible de spécifier votre propre User-Agent pour les tâches, mais cela a changé. Au lieu de cela, nous fournissons l'agent utilisateur du travailleur que vous devez utiliser pour contourner la version payante de Hcaptcha. Cela a été modifié parce qu'aujourd'hui il est presque impossible d'émuler un user-agent étranger dans une autre plateforme, par exemple l'user-agent de Chrome dans Firefox. Les navigateurs ont un grand nombre d'artefacts secondaires en plus de navigator.userAgent, qui appartiennent spécifiquement à l'une ou l'autre plateforme.
Objet de tâche
Propriété | Type | Obligatoire | Objectif | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
type | String | Yes | HCaptchaTaskProxyless | ||||||||||||||||||||||||
websiteURL | String | Yes | Adresse d'une page Web cible. Peut être situé n'importe où sur le site Web, même dans une zone membre. Nos ouvriers n'y naviguent pas, mais simulent plutôt la visite. | ||||||||||||||||||||||||
websiteKey | String | Yes | clé de site hCaptcha | ||||||||||||||||||||||||
Déclassé. A la place, utilisez l'User-Agent de nos travailleurs qui est retourné par la méthode "getTaskResult". | |||||||||||||||||||||||||||
isInvisible | Boolean | Non | Indiquez si le Hcaptcha est invisible ou non. Cela rendra un widget approprié pour nos travailleurs. | ||||||||||||||||||||||||
isEnterprise | Boolean | Non | Utilisez ce paramètre si vous souhaitez que votre Hcaptcha soit résolu par les travailleurs ayant le score Hcaptcha le plus élevé. Notez que cela triple le coût de la résolution. | ||||||||||||||||||||||||
enterprisePayload | Object | Non | Paramètres supplémentaires que nous utiliserons pour rendre le widget Hcaptcha pour la version Enterprise.
|
Exemple de demande
#pip3 install anticaptchaofficial
from anticaptchaofficial.hcaptchaproxyless import *
solver = hCaptchaProxyless()
solver.set_verbose(1)
solver.set_key("YOUR_API_KEY_HERE")
solver.set_website_url("https://website.com")
solver.set_website_key("SITE_KEY")
# tell API that Hcaptcha is invisible
#solver.set_is_invisible(1)
# tell API that Hcaptcha is Enterprise
#solver.set_is_enterprise(1)
# set here parameters like rqdata, sentry, apiEndpoint, endpoint, reportapi, assethost, imghost
#solver.set_enterprise_payload({
# "rqdata": "rq data value from target website",
# "sentry": True
#})
# Specify softId to earn 10% commission with your app.
# Get your softId here: https://anti-captcha.com/clients/tools/devcenter
solver.set_soft_id(0)
g_response = solver.solve_and_return_solution()
if g_response != 0:
print "g-response: "+g_response
else:
print "task finished with error "+solver.error_code
Objet de solution de tâche
Propriété | Type | Objectif |
---|---|---|
gRecaptchaResponse | String | Chaîne de jeton requise pour interagir avec le formulaire de soumission sur le site Web cible. |
respKey | String | Sortie de la fonction "window.hcaptcha.getRespKey()" lorsqu'elle est disponible. Certains sites web l'utilisent pour une vérification supplémentaire. |
userAgent | String | User-Agent du navigateur du travailleur. Utilisez-le lorsque vous soumettez le jeton de réponse. |
Exemple de réponse
{
"errorId":0,
"status":"ready",
"solution":
{
"gRecaptchaResponse":"3AHJ_VuvYIBNBW5yyv0zRYJ75VkOKvhKj9_xGBJKnQimF72rfoq3Iy-DyGHMwLAo6a3......",
"respKey":"E0_eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJkYXRhIjoiQk5vb1JuZ0FPSHBCM2EyWURSSC......",
"userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Firefox/102.0"
},
"cost":"0.001500",
"ip":"46.98.54.221",
"createTime":1472205564,
"endTime":1472205570,
"solveCount":"0"
}