API
В целях автоматизации Death By Captcha (DBC) предоставляет пользователям и разработчикам API-интерфейсы для интеграции с любым программным обеспечением.
Процесс решения выглядит следующим образом:
Ознакомьтесь с подробностями нашего API ниже, чтобы получить дополнительную информацию и ресурсы для реализации DBC с использованием вашего любимого инструмента (ов) и/или языка программирования!
- .NET (C#, VB, GitHub, Selenium, NuGet)
- AutoIt3
- C (Исходный код клиента и либера)
- Java (GitHub, Maven, Selenium)
- Perl 5+
- PHP v7+
- Python3 (GitHub, PyPI, Selenium)
- Node.js (GitHub, npm, Selenium)
- Инструмент командной строки для Windows, Linux (i386 and x86-64) (смотрите примечание по использованию ниже)
Для других языков см. наш API metadata specifications (OpenAPI/AsyncAPI) для автоматического создания клиентов.
Сторонние клиенты
- Обычные изображения капчи с текстом (включая капчи с чувствительностью к регистру, математические капчи и т.д.)
- ReCAPTCHA by Token API ( reCAPTCHA V2, V3, Invisible & Enterprise) BETA
- Geetest Challenges НОВЫЙ BETA
- TextCAPTCHA НОВЫЙ BETA
- Cloudflare Turnstile НОВЫЙ BETA
- Audio Captcha НОВЫЙ BETA
- Lemin Cropped НОВЫЙ BETA
- Capy Puzzle! НОВЫЙ BETA
- Amazon WAF НОВЫЙ BETA
- Cyber Siara НОВЫЙ BETA
- Mtcaptcha НОВЫЙ BETA
- Cutcaptcha НОВЫЙ BETA
- Friendly Captcha НОВЫЙ BETA
- Datadome НОВЫЙ BETA
- Tencent НОВЫЙ BETA
- Atb Captcha НОВЫЙ BETA
- Support for legacy/outdated reCAPTCHA solving via Coordinates or Image Group
Мы используем командную строку 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]
По умолчанию тайм -аут каптча - 60 секунд.
В случае решения, идентификатор CAPTCHA будет сохранен вid.txt, текст CAPTCHA будет сохранен вanswer.txt, и идентификатор, и текст будут распечатаны на Стандартный выход, разделенный пространством. - Чтобы сообщить о неправильно решении Captcha, запустите:
deathbycaptcha.exe -l USERNAME -p PASSWORD -n CAPTCHA_ID
Или использование токена аутентификацииdeathbycaptcha.exe -a AUTHTOKEN -n CAPTCHA_ID
Прежде чем внедрить свой собственный 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 была успешно загружена,locationHTTP 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 будет пустой. Вам нужно будет продолжать опросить этот ответ. Пример ответов:
-
Ответ с URL-кодировкой правильно решенной капчи
status=0&captcha=1234&is_correct=1&text=tyrone+slothrop
-
Ответ с кодировкой JSON правильно решенной капчи
{ "captcha": 1234, "is_correct": true,"status": 0, "text": "tyrone slothrop" } -
Ответ, кодируемый JSON неправильно решенной капчи,
{ "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Если отчет не может быть завершен. Это может быть связано с тем, что:
1) captcha, соответствующая предоставленному идентификатору, не была загружена пользователем, сообщающим его;
2) ваш пользователь запрещен;
3) отчет был сделан более часа после того, как если бы было загружено. В этом случае вы не будете возвращены.
Злоупотребление этой функцией заставит вас забанить!
Чтобы проверить ваш кредитный баланс, выпустите запрос на получение или публикацию в 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 }
- DeCaptcher API (и сокет, и http)
- Antigate (Anti-Captcha)
- 2captcha

Russian
English
Spanish
Chinese
French
Hindi
Arabic
Bengali
Indonesian
Portuguese
com, 

