Death By Captcha API is built for teams that need reliable, compatible CAPTCHA solving in production workflows.
Use this page as your implementation hub: client libraries, supported captcha types, and practical integration paths.
Typical flow:
.NET (C#, VB, GitHub, Selenium, NuGet)
C (C11) (GitHub) (Исходный код клиента и либера)
C++ (GitHub)
Java (GitHub, Maven, Selenium)
Perl 5+
PHP v7+
Python3 (GitHub, PyPI, Selenium)
Node.js (GitHub, npm, Selenium)
Go (GitHub)
Инструмент командной строки для Windows, Linux, MacOS (смотрите примечание по использованию ниже)
Для других языков см. наш API metadata specifications (OpenAPI/AsyncAPI) для автоматического создания клиентов.
Сторонние клиенты
Мы используем командную строку dotnet 10+ (также поддерживает net8.0 и net6.0)
Убедитесь, что вы уже загрузили драйвер браузера selenium
и дважды проверьте, что исполняемый драйвер находится на PATH
Вы можете использовать ChromeDriver для Chrome или Geckodriver для Firefox
и может переключаться между этими драйверами в источнике C#.
Клонируйте проект .NET с GitHub
git clone https://github.com/deathbycaptcha/deathbycaptcha-api-client-dotnet
Учетные данные читаются из переменных окружения:
DBC_USERNAME=your_username
DBC_PASSWORD=your_password
В папке, где dbc_api_net.sln файл находится
Выполните следующие команды для запуска примера Selenium:
dotnet restore dbc_api_net.sln
dotnet run --project DBC_Examples/DBC_Examples.csproj -c Release -f net10.0 -p:ExamplesStartupObject=DeathByCaptcha.SeleniumRecaptchaV2Example
Дополнительные сведения см. в примерах проекта .NET
Мы используем Maven 3.6+
Убедитесь, что вы уже загрузили драйвер браузера selenium
и дважды проверьте исполняемый драйвер находится на PATH
Вы можете использовать ChromeDriver для Chrome или Geckodriver для Firefox
и может переключаться между этими драйверами в источнике Java.
Загрузите проект Java Selenium из списка выше
Отредактируйте App.java и поместите свои учетные данные
Client client = new HttpClient("DBC_USERNAME", "DBC_PASSWORD");
В папке, где pom.xml файл находится
Выполните следующие команды для запуска примера:
mvn clean install -U чтобы очистить проект и установить зависимости
mvn exec:java -Dexec.mainClass="deathbycaptcha.App" чтобы собрать проект
mvn clean чтобы очистить проект
Дополнительные сведения см. в примерах проекта Java и Maven
Мы используем NodeJS v22+
Убедитесь, что вы уже загрузили драйвер браузера selenium
и дважды проверьте, что исполняемый драйвер находится на PATH
Вы можете использовать ChromeDriver для Chrome или Geckodriver для Firefox
и может переключаться между этими драйверами в источнике NodeJS.
Клонируйте проект NodeJS с GitHub
git clone https://github.com/deathbycaptcha/deathbycaptcha-api-client-nodejs
Отредактируйте examples/selenium/recaptcha_v2_selenium.js и поместите свои учетные данные
const USERNAME = 'DBC_USERNAME' // Ваше имя пользователя DBC здесь
const PASSWORD = 'DBC_PASSWORD' // Ваш пароль DBC здесь
В папке, где package.json файл находится
Выполните следующие команды для запуска примера:
npm install deathbycaptcha-lib // чтобы установить библиотеку DBC из npm
node examples/selenium/recaptcha_v2_selenium.js // чтобы запустить пример
Дополнительные сведения см. в примерах проекта NodeJS
Мы используем Python v3+
Убедитесь, что вы уже загрузили драйвер браузера selenium
и дважды проверьте исполняемый драйвер находится наPATH
Вы можете использовать ChromeDriver для Chrome или Geckodriver для Firefox
и может переключаться между этими драйверами в источнике Python3.
Загрузите проект Python3 Selenium из списка выше
Отредактируйте python_selenium_example.py и поместите свои учетные данные там
USERNAME = 'DBC_USERNAME' # Ваше имя пользователя DBC здесь
PASSWORD = 'DBC_PASSWORD' # Ваш пароль DBC здесь
В папке, где requirements.txt файл находится
Выполните следующие команды для запуска примера:
python3 -m venv venv чтобы создать новый venv python3
. venv/bin/activate чтобы активировать venv
pip3 install -r requirements.txt чтобы установить зависимости
python3 python_selenium_example.py
Дополнительные сведения см. в примерах проекта Python3
Создать новую виртуальную среду Python3
python3 -m venv venv
Активируйте виртуальное окружение
. venv/bin/activate
Установить библиотеку DeathByCaptcha из pypi
pip install deathbycaptcha-official
Создать наш скрипт python3
import deathbycaptcha
# don't forget to import deathbycaptcha library
username = 'username'
password = 'password'
authtoken = ''
...
используйте клиент DeathByCaptcha python http
http_client = deathbycaptcha.HttpClient(username, password, authtoken)
или используйте клиент DeathByCaptcha python sockets
socket_client = deathbycaptcha.SocketClient(username, password, authtoken)
Дополнительные сведения см. в примерах проекта Python3.
Создать новый проект Maven
mvn -B archetype:generate -DarchetypeGroupId=org.apache.maven.archetypes -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.5 -DgroupId=examples -DartifactId=deathbycaptcha-examples -Dpackage=examples -Dmaven.compiler.release=25
Включите следующие зависимости в файл maven pom.xml
<dependencies>
<dependency>
<groupId>io.github.deathbycaptcha</groupId>
<artifactId>deathbycaptcha-java-library</artifactId>
<version>4.7.0</version>
</dependency>
</dependencies>
если pom.xml правильный.
Мы можем использовать импорты в наших файлах java.
import com.DeathByCaptcha.AccessDeniedException;
import com.DeathByCaptcha.Client;
import com.DeathByCaptcha.HttpClient;
import com.DeathByCaptcha.SocketClient;
import com.DeathByCaptcha.Captcha;
...
Очистить и собрать проект
mvn clean install -U
Запустить проект
mvn exec:java -Dexec.mainClass="examples.GetBalance" -Dexec.args=""
mvn exec:java -Dexec.mainClass="examples.ExampleRecaptchaV2"
...
Дополнительные сведения см. в примерах проекта Java и Maven
При использовании клиентов Socket API убедитесь, что у вас нет исходящих соединений TCP с портами 8123-8130 брандмауал. Используйте клиенты HTTP API, если клиенты Socket API не работают на вас. Диапазон портов 8123-8130 предназначен только для API сокета, не пытайтесь использовать его с помощью HTTP API!
Обратите внимание, что вызов функции декодирования/метод может вернуть нулевое значение, если тайм -аут будет достигнут до того, как CAPTCHA будет решена. Если это происходит часто, увеличивайте используемый тайм -аут.
Для получения более подробной информации см. Примеры, включенные в каждый пакет клиента API, и проверьте исходный код клиентов.
deathbycaptcha.exe -l USERNAME -p PASSWORD -b
deathbycaptcha.exe -a AUTHTOKEN -b
balance.txt и распечатана на стандартном выходе.
deathbycaptcha.exe -l USERNAME -p PASSWORD -c
CAPTCHA_FILE_NAME [-t TIMEOUT]
deathbycaptcha.exe -a AUTHTOKEN -c CAPTCHA_FILE_NAME [-t
TIMEOUT]
id.txt , текст CAPTCHA будет сохранен в answer.txt , и идентификатор, и текст будут распечатаны на Стандартный выход, разделенный пространством.
deathbycaptcha.exe -l USERNAME -p PASSWORD -n
CAPTCHA_ID
deathbycaptcha.exe -a AUTHTOKEN -n CAPTCHA_IDДля получения более подробной информации об использовании CLI и дополнительных примеров см. документацию CLI на GitHub.
Прежде чем внедрить свой собственный Death By Captcha Клиент HTTP API, пожалуйста, серьезно подумайте о использовании API сокета с одним из наших официальных клиентов, перечисленных выше.
URL API http://api.dbcapi.me/api/.
Путь URL Изменения в зависимости от желаемого действия. Все ответы от запросов, сделанных на API, имеют две общие поля:
status — Запрос статус. 0 Если во время внутренней обработки запросов не было ошибок, 255 в противном случае.
error — Короткое объяснение произошла ошибка. Возвращается только тогда, когда статус составляет 255.
Для получения подробной информации о правильном пути URL и других возвращенных полей для конкретного действия см. В разделе ниже.
All API responses are returned URL-encoded by default. If JSON encoding is desired, include application/json in the Accept header of your request. Note that boolean true will be returned as 1 in URL-encoded responses and as true in JSON-encoded responses. Boolean false will be returned as 0 in URL-encoded responses and as false in JSON-encoded responses.
Эта форма CAPTCHA основана на изображении и требует ввода последовательности букв или цифр из искаженного изображения.
Чтобы загрузить CAPTCHA, отправьте POST-запрос multipart/form-data на http://api.dbcapi.me/api/captcha.
Запрос должен содержать следующие поля:
username — Ваше Death By Captcha имя пользователя.password — Ваш Death By Captcha пароль.captchafile — изображение капчи.Если вы используете аутентификацию токена:
authtoken — Ваш Death By Captcha токен аутентификации.captchafile — изображение капчи.captchafile Должен быть предоставлен либо необработанный файл изображения CAPTCHA, либо изображение CAPTCHA, закодированное в Base64 с префиксом base64:. Размер файла изображения ограничен 180 КБ. При кодировании изображения в Base64 его размер не должен превышать 120 КБ. Поддерживаемые форматы изображений: JPG, PNG, GIF и BMP.
Вот форма HTML, которая справляется:
<form action="http://api.dbcapi.me/api/captcha"method="post" enctype="multipart/form-data">
<input type="text" name="username" value="">
<input type="password" name="password" value="">
<input type="file" name="captchafile">
</form>
Или использование аутентификации токена:
<form action="http://api.dbcapi.me/api/captcha"method="post" enctype="multipart/form-data">
<input type="text" name="authtoken" value="">
<input type="file" name="captchafile">
</form>
Вот эквивалент команды curl:
curl --header 'Expect: ' -F username=YOUR_USERNAME -F password=YOUR_PASSWORD -F captchafile=@YOUR_CAPTCHA_FILENAME http://api.dbcapi.me/api/captcha
Или использование аутентификации токена:
curl --header 'Expect: ' -F authtoken=YOUR_AUTHTOKEN -F captchafile=@YOUR_CAPTCHA_FILENAME http://api.dbcapi.me/api/captcha
base64-encoded captchafile должно выглядеть следующим образом:
base64:R0lGODlhAQABAIABAAAAAP///yH5BAEAAAEALAAAAAABAAEAAAICTAEAOw==
Вы получите один из следующих ответов HTTP:
303 See Other Если ваша Captcha была успешно загружена, location HTTP Header укажет вам на загруженную страницу состояния CAPTCHA, вы можете перейти location на Получите загруженный статус CAPTCHA. Кроме того, будут возвращены следующие поля:
captcha — удостоверение личности загруженной капты.is_correct — 1 Если ответ был идентифицирован для этой капчи или он все еще обрабатывается, 0, если обработка закончена и не может быть найдено.
text — Капча ответ. Пустая строка означает, что капча еще не решена.
status=0&captcha=123&is_correct=1&text=Пример кодирования JSON:
{ "status": 0, "captcha": 123, "is_correct": 1, "text": "" }
403 Forbidden
Если ваша Death By Captcha были отклонены, или у вас недостаточно кредитов.
400 Bad Request
Если ваш запрос не последовал приведенной выше спецификации, или CAPTCHA была отклонена за то, что он не является действительным изображением.
500 Internal Server Error
Если что -то случилось на нашей стороне, мешало вам загрузить капчу; Если вы уверены, что отправляете правильно структурированные запросы с действительными изображениями CAPTCHA, но проблема сохраняется, пожалуйста, свяжитесь с нашей живой поддержкой и расскажите им подробно, как воспроизвести проблему.
503 Service Temporarily Unavailable
Когда наш сервис перегружен, попробуйте еще раз позже.
На этом этапе captcha, которую вы только что загрузили, возможно, еще не была разгадана! Если вы не получили ответ в поле text ответа сервера, вам нужно опросить его. См. Опрос статуса загруженного CAPTCHA для получения дополнительной информации.
Чтобы получить загруженный статус Captcha, выпустите запрос получить запрос на получение
http://api.dbcapi.me/api/captcha/%CAPTCHA_ID%,
где %CAPTCHA_ID% - это идентификатор загруженной вами CAPTCHA, полученный во время загрузки CAPTCHA.
На этот раз вам не нужно предоставить свои учетные данные Death By Captcha.
Ответ будет содержать код HTTP 200 OK и те же поля, что и в ответе 303 Смотри другое из раздела Загрузка CAPTCHA.
Если CAPTCHA еще не решена, клавиша text будет пустой. Вам нужно будет продолжать опросить этот ответ. Пример ответов:
status=0&captcha=1234&is_correct=1&text=tyrone+slothrop
{ "captcha": 1234, "is_correct": true,"status": 0, "text": "tyrone slothrop" }
{ "captcha": 1234, "is_correct": false, "status": 0, "text": "?" }
{ "captcha": 0, "status": 0 }
Если вы получите этот ответ, подтвердите, что идентификатор CAPTCHA, который вы используете для опроса для ответа, возвращается, когда он был загружен.
Если проблема сохраняется, не стесняйтесь свяжитесь с нами.
Пожалуйста, не опросите статус капчи более одного раза за пару секунд.
Это считается злоупотреблением и может привести к бану.
Сохраните свою и нашу пропускную способность.
Если вы думаете, что ваша Captcha была неверно решена, сообщите об этом Death By Captcha, чтобы вернуть ваши деньги.
Для этого выпустите запрос POST в http://api.dbcapi.me/api/captcha/%CAPTCHA_ID%/report С следующими полями:
username — Ваше Death By Captcha имя пользователя.password — Ваш Death By Captcha пароль.Или использование токена аутентификации:
authtoken — Ваш Death By Captcha токен аутентификации.Ответ будет:
200 OK Если отчет был завершен. В этом случае ваши кредиты будут возвращены. Тело ответа будет таким же, как и для опроса (или загрузки), но поле is_correct будет 0. Пример:
{ "captcha": 1234, "is_correct": false,"status": 0, "text": "tyrone slothrop" }
503 Service Unavailable Если отчет не может быть завершен. Это может быть связано с тем, что: Злоупотребление этой функцией заставит вас забанить!
Чтобы проверить ваш кредитный баланс, выпустите запрос на получение или публикацию в http://api.dbcapi.me/api со следующими полями:
username — Ваше Death By Captcha имя пользователя.password — Ваш Death By Captcha пароль.Или использование токена аутентификации:
authtoken — Ваш Death By Captcha токен аутентификации.При успешной аутентификации вы получите 200 OK Ответ с вашей Death By Captcha сведениями учетной записи, либо URL-, кодированные, со следующими полями:
user — Ваш Death By Captcha идентификатор учетной записи;rate — Сколько мы взимаем с вас за один правильно решенную капчу, в US¢;
balance — Ваш текущий кредитный баланс, в US¢.is_banned — 1 Если пользователь запрещен, 0, если нет.Пример, кодируемый JSON:
{ "is_banned": false, "status": 0, "rate": 0.139,"balance": 455.23, "user": 43122 }
Чтобы получить текущий статус сервера, выпустите запрос GET на http://api.dbcapi.me/api/status. Ответ будет иметь следующие поля:
todays_accuracy — число, представляющее точность в процентах (например, 99,6 представляет 99,6%)
solved_in — Среднее время решения за секундыis_service_overloaded — 1 Если обслуживание перегружена, 0 в противном случаеПример, кодируемый JSON:
{ "status": 0, "todays_accuracy": 99.9, "solved_in": 5.3,"is_service_overloaded": false }
Integration guides:
Use cases and pricing:
Comparison and trust:
API specifications: