Menu

HCaptchaTaskProxyless: HCaptcha ohne Proxys lösen

Die Entwickler von hCaptcha nennen ihr Captcha "einen Drop-in-Ersatz für Recaptcha". Wir haben versucht, dasselbe in unserer API zu erstellen, daher sind die Aufgabeneigenschaften absolut identisch mit denen in RecaptchaV2TaskProxyless, außer der Eigenschaft "Art".

Wichtiger Hinweis zum User-Agent-Wert. Früher war es möglich, Ihren eigenen User-Agent für die Aufgaben anzugeben, aber das hat sich geändert. Stattdessen stellen wir den User-Agent des Workers zur Verfügung, den Sie verwenden müssen, um die kostenpflichtige Version von Hcaptcha zu umgehen. Dies wurde geändert, weil es heutzutage fast unmöglich ist, einen fremden User-Agent in einer anderen Plattform zu emulieren, z.B. Chrome User-Agent in Firefox. Browser haben neben navigator.userAgent eine große Anzahl von sekundären Artefakten, die spezifisch zu der einen oder anderen Plattform gehören.

Captcha-Beispiel

Aufgabenobjekt

WertArtErforderlichZweck
typeStringJaHCaptchaTaskProxyless
websiteURLStringJaAdresse einer Ziel-Webseite. Kann sich an beliebiger Stelle auf der Website befinden, auch in einem Mitgliederbereich. Unsere Arbeiter navigieren nicht dorthin, sondern simulieren den Besuch.
websiteKeyStringJahCaptcha-Sitekey
userAgentStringJaGeben Sie den User Agent an, den Sie zum Navigieren auf der Website verwenden. Unsere Mitarbeiter werden denselben Wert während des Hcaptcha-Lösungsprozesses verwenden.
Veraltet. Verwenden Sie stattdessen den User-Agent aus unseren Workern, der von der Methode "getTaskResult" zurückgegeben wird.
isInvisibleBoolescheNeinGeben Sie an, ob Hcaptcha unsichtbar ist oder nicht. Dadurch wird ein entsprechendes Widget für unsere Arbeiter gerendert.
isEnterpriseBoolescheNeinVerwenden Sie diesen Parameter, wenn Sie möchten, dass Ihr Hcaptcha von den Arbeitern mit der höchsten Hcaptcha-Punktzahl gelöst wird. Beachten Sie, dass sich dadurch die Kosten für die Lösung verdreifachen.
enterprisePayloadObjektNeinZusätzliche Parameter, die wir zum Rendern des Hcaptcha-Widgets für die Enterprise-Version verwenden werden.

WertArtErforderlich
rqdataStringNein
sentryBoolescheNein
apiEndpointStringNein
endpointStringNein
reportapiStringNein
assethostStringNein
imghostStringNein

Anfrage-Beispiel

Python
Javascript
PHP
Java
C#
bash
#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

Aufgabenlösungsobjekt

WertArtZweck
gRecaptchaResponseStringToken-String, der für die Interaktion mit dem Einreichungsformular auf der Ziel-Website erforderlich ist.
respKeyStringAusgabe der Funktion "window.hcaptcha.getRespKey()", wenn sie verfügbar ist. Einige Websites verwenden sie zur zusätzlichen Überprüfung.
userAgentStringUser-Agent des Browsers des Arbeitnehmers. Verwenden Sie es, wenn Sie das Antwort-Token übermitteln.

Antwort-Beispiel

{
    "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"
}