Obsługiwane typy zadań
Metody API
Artykuły
Tutoriale
GitHub
Tutorial pages

GeeTestTask: rozwiązywanie captcha geetest.com z proxy

Ten typ zadania rozwiązuje captcha GeeTest w przeglądarkach naszych pracowników. Twoja aplikacja podaje adres strony, klucz gt, klucz wyzwania i po wykonaniu zadania otrzymuje rozwiązanie składające się z 3 tokenów. Dla wersji GeeTest w wersji 4 wyjście składa się z 5 wartości, a klucz wyzwania nie jest wymagany.


Przykłady

Obiekt zadanie

Właściwość/atrybutTypWymaganyPrzeznaczenie
typeŁańcuch znaków (String)TakGeeTestTask
websiteURLŁańcuch znaków (String)TakAdres docelowej strony. Może wskazywać na dowolną lokalizację w ramach witryny, włącznie ze strefami dla zalogowanych. Nasi pracownicy nie muszą tam wchodzić, gdyż wizyta jest symulowana.
gtŁańcuch znaków (String)TakKlucz publiczny domeny, rzadko aktualizowany.
challengeŁańcuch znaków (String)TakZmieniający się klucz token. Należy pobierać nowy dla każdego captcha, inaczej twoje konto zostanie obciążone za błędne zadanie.
geetestApiServerSubdomainŁańcuch znaków (String)NieOpcjonalna subdomena API. Wymagana w niektórych implementacjach.
versionIntegerNieNumer wersji. Domyślna wersja to 3. Obsługiwane wersje: 3 i 4.
initParametersObiekt (object)NieDodatkowe parametry inicjalizacji dla wersji 4
proxyTypeŁańcuch znaków (String)TakTyp proxy
http - zwyczajne proxy http/https
socks4 - proxy socks4
socks5 - proxy socks5
proxyAddressŁańcuch znaków (String)TakAdres ipv4/ipv6 proxy. Nie stosować nazw hostów ani adresów IP z sieci lokalnych.
proxyPortIntegerTakPort proxy
proxyLoginŁańcuch znaków (String)NieLogin dla proxy wymagających uwierzytelniania (podstawowe)
proxyPasswordŁańcuch znaków (String)NieHasło proxy
userAgentŁańcuch znaków (String)TakInformacja User-Agent o przeglądarce, stosowana przy emulacji. Wymagane jest podanie sygnatury nowoczesnej przeglądarki, w przeciwnym razie Google każe "zaktualizować przeglądarkę".

Przykład żądania (V3)

Python
Javascript
PHP
Java
C#
bash
#pip3 install anticaptchaofficial

from anticaptchaofficial.geetestproxyon import *

solver = geetestProxyon()
solver.set_verbose(1)
solver.set_key("YOUR_API_KEY_HERE")
solver.set_website_url("https://address.com")
solver.set_gt_key("CONSTANT_GT_KEY")
solver.set_challenge_key("VARIABLE_CHALLENGE_KEY")

# optional API subdomain, make sure you understand what to set here
# solver.set_js_api_domain("custom-domain.geetest.com")

# getLib payload, see documentation for explanation of this
# solver.set_geetest_lib("{\"customlibs\":\"url-to-lib.js\"}")

solver.set_proxy_address("PROXY_ADDRESS")
solver.set_proxy_port(1234)
solver.set_proxy_login("proxylogin")
solver.set_proxy_password("proxypassword")
solver.set_user_agent("Mozilla/5.0")

# 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)

token = solver.solve_and_return_solution()
if token != 0:
    print "result tokens: "
    print token
else:
    print "task finished with error "+solver.error_code

Przykład żądania (V4)

Python
Javascript
PHP
Java
C#
bash
#pip3 install anticaptchaofficial

from anticaptchaofficial.geetestproxyon import *

solver = geetestProxyon()
solver.set_verbose(1)
solver.set_key("YOUR_API_KEY_HERE")
solver.set_website_url("https://address.com")
solver.set_gt_key("captchaId value")
solver.set_version(4)

# optional API subdomain, make sure you understand what to set here
# solver.set_js_api_domain("custom-domain.geetest.com")

# optional initialization parameters
# solver.set_init_parameters({"riskType": "slide"})

solver.set_proxy_address("PROXY_ADDRESS")
solver.set_proxy_port(1234)
solver.set_proxy_login("proxylogin")
solver.set_proxy_password("proxypassword")
solver.set_user_agent("Mozilla/5.0")

# 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)

token = solver.solve_and_return_solution()
if token != 0:
    print "result tokens: "
    print token
else:
    print "task finished with error "+solver.error_code

Obiekt rozwiązanie zadania (V3)

Właściwość/atrybutTypPrzeznaczenie
challengeŁańcuch znaków (String)Łańcuch znaków (hash string) wymagany do interakcji z przesyłanym do docelowej strony formularzem.
validateŁańcuch znaków (String)Również wymagany łańcuch znaków hash.
seccodeŁańcuch znaków (String)Kolejny wymagany łańcuch znaków hash, nie wiemy dlaczego potrzebne są aż 3.

Obiekt rozwiązanie zadania (V4)

Właściwość/atrybutTyp
captcha_idŁańcuch znaków (String)
lot_numberŁańcuch znaków (String)
pass_tokenŁańcuch znaków (String)
gen_timeInteger
captcha_outputŁańcuch znaków (String)

Przykład odpowiedzi (v3)

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

Przykład odpowiedzi (v4)

{
    "errorId":0,
    "status":"ready",
    "solution":
    {
        "captcha_id": "fcd636b4514bf7ac4143922550b3008b",
        "lot_number": "354ab6dd4e594fdc903074c4d8d37b24",
        "pass_token": "b645946a654e60218c7922b74b3b5ee8e8717e8fd3cd5182a5c98d660bbd1ed5",
        "gen_time": "1649921519",
        "captcha_output": "cFPIALDXSop8Ri2mPABbRWzNBs86N8D4vNUTuVa7wN7E...[cut]...ciM50ePCCzLBZ1bmaV9Yt7IkkFI9Emx4eaP8rRoA=="
    },
    "cost":"0.001500",
    "ip":"46.98.54.221",
    "createTime":1472205564,
    "endTime":1472205570,
    "solveCount":"0"
}