Skip to content
On this page
Home
>Задача(Token)
>HCaptcha

HCaptcha: решение HCaptcha

Создайте задачу с помощью метода createTask и получите результат с помощью метода getTaskResult.

Теперь мы удовлетворяем требования практически всех веб-сайтов с высоким рейтингом и также поддерживаем "невидимый", "нарисовать рамку" и другие типы вопросов

Типы задач types, которые мы поддерживаем:

  • HCaptchaTask для этого типа задачи требуются ваши собственные прокси
  • HCaptchaTaskProxyLess использует встроенный прокси сервер

Объявление о нестабильности сервиса hCaptcha

Приносим извинения за недавнюю нестабильность сервиса hCaptcha, вызванную обновлением изображений и другими проблемами. Мы глубоко сожалеем о доставленных неудобствах. Если вы столкнулись с новыми изображениями, препятствующими использованию сервиса, пожалуйста, дождитесь их обновления. Если у вас возникнут другие вопросы, не стесняйтесь обращаться к нам в любое время.

Если вы получаете недействительный ответ при использовании HCaptchaTask, пожалуйста, свяжитесь с нами,

так как каждый веб-сайт имеет некоторые специфические настройки, и обычно после их настройки все работает нормально.

Для обеспечения успешного прохождения токенов, пожалуйста, используйте фиксированный userAgent

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36 (обновления могут происходить в любое время, будьте внимательны.)

Создание задачи

Создайте задачу с помощью метода createTask для создания задачи.

Структура объекта задачи

СвойстваТипОбязательноОписание
typeStringRequiredHCaptchaTask
HCaptchaTaskProxyLess
websiteURLStringRequiredВеб-адрес сайта, использующего hcaptcha, обычно это фиксированное значение. (Например: https://google.com)
websiteKeyStringRequiredОбщедоступный ключ домена, редко обновляемый. (Например: b989d9e8-0d14-41sda0-870f-97b5283ba67d)
isInvisibleBooleanOptionalУстановите true, если это невидимая капча
proxyStringOptionalУзнайте Использование прокси
enterprisePayloadObjectOptionalПользовательские данные, используемые в некоторых реализациях hcaptcha Enterprise.
Поэтому вам нужно поставить true в параметре isEnterprise. В большинстве случаев вы видите его как rqdata внутри сетевых запросов.
ВАЖНО: вы ДОЛЖНЫ предоставить userAgent, если вы отправляете капчу с параметром data.
Значение должно соответствовать User-Agent, который вы используете при взаимодействии с целевым сайтом.
getCaptchaObjectOptionalесли вы получаете недействительный ответ, вы можете попробовать этот параметр, вы можете узнать по ссылке Обход HCaptcha
userAgentStringOptionalUser-Agent браузера, используемого в эмуляции. Важно, чтобы вы использовали подпись современного браузера, в противном случае Google попросит вас "обновить браузер".

Пример запроса

txt
POST https://api.capsolver.com/createTask
Host: api.capsolver.com
Content-Type: application/json
json
{
  "clientKey": "YOUR_API_KEY",
  "task": {
    // Обязательно. Может использовать HCaptchaTaskProxyless или HCaptchaTask
    "type": "HCaptchaTaskProxyLess",
    // Обязательно
    "websiteURL": "",
    // Обязательно
    "websiteKey": "00000000-0000-0000-0000-000000000000",
    // Опционально
    "isInvisible": true,
    // Опционально
    "enterprisePayload": {
      // Опционально, необходимо, если на сайте используется HCaptcha Enterprise
      "rqdata": ""
    },
    // Опционально, это необходимо, если вы используете HCaptchaTask
    "proxy": "http:ip:port:user:pass",
    // socks5:ip:port:user:pass
    // Опционально
    "getCaptcha": "fetch request base64 content",
    "userAgent": ""
  }
}

После отправки задачи нам, вы должны получить в ответе "Идентификатор задачи", если операция прошла успешно. Пожалуйста, ознакомьтесь с кодами ошибок: полный список ошибок, если вы не получили идентификатор задачи.

Пример ответа

json
{
  "errorId": 0,
  "errorCode": "",
  "errorDescription": "",
  "taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006"
}

Получение результата

Используйте метод getTaskResult, чтобы получить результат распознавания.

В зависимости от загрузки системы, результаты вы получите в интервале от 1 с до 10 с.

Пример запроса

json
POST https://api.capsolver.com/getTaskResult
Host: api.capsolver.com
Content-Type: application/json

{
    "clientKey": "YOUR_API_KEY",
    "taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006"
}

Пример ответа

json
{
  "errorId": 0,
  "errorCode": null,
  "errorDescription": null,
  "solution": {
    // Используемый для решения капчи userAgent
    "userAgent": "xxx",
    // Время истечения токена
    "expireTime": 1671615324290,
    "timestamp": 1671615024290,
    "captchaKey": "E0_xxx",
    // Токен капчи
    "gRecaptchaResponse": "3AHJ....."
  },
  "status": "ready"
}

Использование SDK

python
# pip install --upgrade capsolver
# export CAPSOLVER_API_KEY='...'

import capsolver

# capsolver.api_key = "..."
solution = capsolver.solve({
    "type": "HCaptchaTaskProxyLess",
    "websiteURL": "",
    "websiteKey": "00000000-0000-0000-0000-000000000000",
})
go
package main

import (
	"fmt"
	capsolver_go "github.com/capsolver/capsolver-go"
	"log"
)

func main() {
	// first you need to install sdk
	//go get github.com/capsolver/capsolver-go
	//export CAPSOLVER_API_KEY='...' or
	//capSolver := CapSolver{ApiKey:"..."}

	capSolver := capsolver_go.CapSolver{}
	solution, err := capSolver.Solve(map[string]any{
		"type":       "HCaptchaTaskProxyLess",
		"websiteURL": "",
		"websiteKey": "00000000-0000-0000-0000-000000000000",
	})
	if err != nil {
		log.Fatal(err)
		return
	}
	fmt.Println(solution)
}