Menu ng dokumentasyon

GeeTestTask: lutasin ang captcha mula sa geetest.com ng may proxy

Ang ganitong uri ng gawain ay naglulutas ng GeeTest na captcha sa mga browser ng aming mga manggagawa. Ang iyong app ay sinusumite ang adres ng website, susi ng gt, susi ng pag-hamon at pagkatapos makumpleto ang gawain makatatanggap ng solusyon na may 3 token.

Mga halimbawa

Bagay ng gawain

Katangian Uri Kinakailangan Layunin
type String Oo GeeTestTask
websiteURL String Oo Adres ng puntiryang web page. Maaaring mahanap saan man sa web site, kahit sa lugar ng miyembro. Ang aming mga manggagawa ay hindi maaaring pumunta doon, ngunit sa halip isi-simulate ang pagbisita.
gt String Oo Ang pampublikong susi ng domain, ay minsanang ina-update.
challenge String Oo Pagpapalit ng susi ng token. Siguraduhin na kumuha ng bago para sa bawat captcha, kung hindi ikaw ay sisingilin para sa error ng gawain.
geetestApiServerSubdomain String Hindi Opsiyonal na subdomain ng API. Maaaring kailangan para isa ibang mga implementasyon.
geetestGetLib String Hindi Kinakailangan para sa ibang mga implementasyon. Ipadala ang JSON na naka-encode sa string. Ang halaga ay maaaring matunton sa mga kagamitang developer ng browser. Maglagay ng breakpoint bago tawagin ang "initGeetest" na funsiyon.
proxyType String Oo Uri ng proxy
http - kalimitang http/https na proxy
socks4 - socks4 na proxy
socks5 - socks5 na proxy
proxyAddress String Oo IP address ng proxy ipv4/ipv6. Walang mga host name o IP address mula sa mga lokal na network.
proxyPort Integer Oo Port ng proxy
proxyLogin String Hindi Login para sa proxy na kinakailangan ang awtorisasyon (basic)
proxyPassword String Hindi Password ng proxy
userAgent String Oo User-Agent ng browser na ginagamit sa emulasyon. Kinakailangan na gumamit ka ng signature ng modernong browser, kung hindi ang Google ay hihilingin sa iyo na "update your browser".

Halimbawa ng kahilingan

CURL
          curl -i -H "Accept: application/json" \
     -H "Content-Type: application/json" \
     -X POST -d '{
    "clientKey":"YOUR_API_KEY",
    "task":
        {
            "type":"GeeTestTask",
            "websiteURL":"http://mywebsite.com/geetest/test.php",
            "gt":"874703612e5cac182812a00e273aad0d",
            "challenge":"a559b82bca2c500101a1c8a4f4204742",
            "proxyType":"http",
            "proxyAddress":"8.8.8.8",
            "proxyPort":8080,
            "proxyLogin":"proxyLoginHere",
            "proxyPassword":"proxyPasswordHere",
            "userAgent":"MODERN_USER_AGENT_HERE"
        }
}' https://api.anti-captcha.com/createTask
        

Halimbawa ng tugon

JSON na walang mga error
          {
    "errorId": 0,
    "taskId": 7654321
}
        
JSON na may error
          {
    "errorId": 1,
    "errorCode": "ERROR_KEY_DOES_NOT_EXIST",
    "errorDescription": "Account authorization key not found in the system"
}
        

Kunin ang solusyon

Gamitin ang metodong getTaskResult para hilingin ang solusyon. Bigyan ang manggagawa ng ilang oras, gaya ng 5 segundo, bago gumawa ng unang kahilingan. Kapag ang manggagawa ay abala pa, subukang muli sa loob ng 3 segundo.

Bagay ng solusyon ng gawain

Katangian Uri Layunin
challenge String Hash string na kinakailangan para sa pakikipag-ugnayan sa form sa pagsumite sa puntiryang website.
validate String Hash string na kinakailangan din.
seccode String Isa pang kinakailangang hash string, wala kaming ideya kung bakit may 3 nito.

Halimbawa ng tugon

JSON na walang mga error
          {
    "errorId":0,
    "status":"ready",
    "solution":
    {
        "challenge":"3c1c5153aa48011e92883aed820069f3hj",
        "validate":"47ad5a0a6eb98a95b2bcd9e9eecc8272",
        "seccode":"83fa4f2d23005fc91c3a015a1613f803|jordan"
    },
    "cost":"0.001500",
    "ip":"46.98.54.221",
    "createTime":1472205564,
    "endTime":1472205570,
    "solveCount":"0"
}
        

Halimbawa ng paggamit ng token