GeeTestTaskProxyless - captcha from geetest.com without proxy





ATTENTION

Documentation moved to a new place here.

Documentation at anticaptcha.atlassian.net is no longer updated and may be not actual.












This type of task solves GeeTest captcha in our workers browsers. Your app submits website address, gt key, challenge key and receives 3 parameters after task completion.
The gt key is same for all in-domain captchas.


Captcha examples


The challenge is a changing token which is used by captcha widget to sign requests. You need to obtain new one each time you make a request with captcha. Generally to do this you will need to request StartCaptchaServlet.php which will return it. Target website may change the name, thus using debugging tools like Firebug is recommended.

This type of task is similar to GeeTestTask, except we manage proxy connections for you.

Results are 3 parameters: geetest_challenge, geetest_validate and geetest_seccode. Use them for final form data submit.

 See how it looks



Object structure

Property

Type

Required

Value

typeStringYesGeeTestTaskProxyless
websiteURLStringYesAddress of target web page
gtStringYesThe domain key
challengeStringYesChanging token key. Make sure to grab fresh one for each captcha, otherwise you will be charged for error task.
geetestApiServerSubdomainStringNo

Optional API subdomain. May be required for some installations. 

 How to find if you need it

Look into the source code and find function initGeetest.
If one of it's parameters containts api_server, then send the value to our API.

geetestGetLibStringNo

Required for some custom implementations. Send an quotation-escaped string of additional additional libraries.
These should be can be obtained in debugger. Place a breakpoint before initGeetest function call:


Request example

Address http://api.anti-captcha.com/createTask

{
    "clientKey":"dce6bcbb1a728ea8d871de6d169a2057",
    "task":
        {
            "type":"GeeTestTaskProxyless",
            "websiteURL":"http://mywebsite.com/geetest/test.php",
            "gt":"874703612e5cac182812a00e273aad0d",
			"challenge":"a559b82bca2c500101a1c8a4f4204742"
        }
}

Response: 

{
    "errorId":0,
    "taskId":407533072
}

Grab the result

Use method getTaskResult to request solution. Give worker a time like 10 seconds before requesting it.

Property

Type

Description

challengeStringHash string which is required for interacting with submit form on target website.
validateStringHash string which is required too.
seccodeStringAnother required hash string, we have no idea why there are 3 of them.

Example output of getTaskResult:

{
    "challenge":"3c1c5153aa48011e92883aed820069f3hj",
	"validate":"47ad5a0a6eb98a95b2bcd9e9eecc8272",
	"seccode":"83fa4f2d23005fc91c3a015a1613f803|jordan"
}