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 для создания задачи.
Структура объекта задачи
Свойства | Тип | Обязательно | Описание |
---|---|---|---|
type | String | Required | HCaptchaTask HCaptchaTaskProxyLess |
websiteURL | String | Required | Веб-адрес сайта, использующего hcaptcha, обычно это фиксированное значение. (Например: https://google.com) |
websiteKey | String | Required | Общедоступный ключ домена, редко обновляемый. (Например: b989d9e8-0d14-41sda0-870f-97b5283ba67d ) |
isInvisible | Boolean | Optional | Установите true , если это невидимая капча |
proxy | String | Optional | Узнайте Использование прокси |
enterprisePayload | Object | Optional | Пользовательские данные, используемые в некоторых реализациях hcaptcha Enterprise. Поэтому вам нужно поставить true в параметре isEnterprise. В большинстве случаев вы видите его как rqdata внутри сетевых запросов. ВАЖНО: вы ДОЛЖНЫ предоставить userAgent , если вы отправляете капчу с параметром data . Значение должно соответствовать User-Agent, который вы используете при взаимодействии с целевым сайтом. |
getCaptcha | Object | Optional | если вы получаете недействительный ответ, вы можете попробовать этот параметр, вы можете узнать по ссылке Обход HCaptcha |
userAgent | String | Optional | User-Agent браузера, используемого в эмуляции. Важно, чтобы вы использовали подпись современного браузера, в противном случае Google попросит вас "обновить браузер". |
Пример запроса
POST https://api.capsolver.com/createTask
Host: api.capsolver.com
Content-Type: application/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": ""
}
}
После отправки задачи нам, вы должны получить в ответе "Идентификатор задачи", если операция прошла успешно. Пожалуйста, ознакомьтесь с кодами ошибок: полный список ошибок, если вы не получили идентификатор задачи.
Пример ответа
{
"errorId": 0,
"errorCode": "",
"errorDescription": "",
"taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006"
}
Получение результата
Используйте метод getTaskResult, чтобы получить результат распознавания.
В зависимости от загрузки системы, результаты вы получите в интервале от 1 с
до 10 с
.
Пример запроса
POST https://api.capsolver.com/getTaskResult
Host: api.capsolver.com
Content-Type: application/json
{
"clientKey": "YOUR_API_KEY",
"taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006"
}
Пример ответа
{
"errorId": 0,
"errorCode": null,
"errorDescription": null,
"solution": {
// Используемый для решения капчи userAgent
"userAgent": "xxx",
// Время истечения токена
"expireTime": 1671615324290,
"timestamp": 1671615024290,
"captchaKey": "E0_xxx",
// Токен капчи
"gRecaptchaResponse": "3AHJ....."
},
"status": "ready"
}
Использование SDK
# 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",
})
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)
}