API
Para fins de automação, Death By Captcha (DBC) fornece APIs para usuários e desenvolvedores integrarem com qualquer software.
O processo de resolução é o seguinte:
Verifique os detalhes de nossa API abaixo para obter informações e recursos adicionais para implementar o DBC usando sua(s) ferramenta(s) favorita(s) e/ou linguagem de programação!
- .NET (C#, VB, GitHub, Selenium, NuGet)
- AutoIt3
- C (C11) (GitHub) (código fonte do cliente e da lib)
- Java (GitHub, Maven, Selenium)
- Perl 5+
- PHP v7+
- Python3 (GitHub, PyPI, Selenium)
- Node.js (GitHub, npm, Selenium)
- Ferramenta de linha de comando parasee Windows, Linux, MacOS (ver nota de utilização abaixo)
Para outros idiomas, consulte nossa API metadata specifications (OpenAPI/AsyncAPI) para gerar clientes automaticamente.
Clientes de terceiros
- CAPTCHAs de imagem normais com texto (incluindo CAPTCHAs sensíveis a maiúsculas e minúsculas, CAPTCHAs de matemática, etc.)
- ReCAPTCHA by Token API ( reCAPTCHA V2, V3, Invisible & Enterprise) BETA
- Geetest Challenges NOVO BETA
- TextCAPTCHA NOVO BETA
- Cloudflare Turnstile NOVO BETA
- Audio Captcha NOVO BETA
- Lemin Cropped NOVO BETA
- Capy Puzzle! NOVO BETA
- Amazon WAF NOVO BETA
- Cyber Siara NOVO BETA
- Mtcaptcha NOVO BETA
- Cutcaptcha NOVO BETA
- Friendly Captcha NOVO BETA
- Datadome NOVO BETA
- Tencent NOVO BETA
- Atb Captcha NOVO BETA
- Support for legacy/outdated reCAPTCHA solving via Coordinates or Image Group
Estamos usando a linha de comando dotnet 10+ (também suporta net8.0 e net6.0)
Certifique-se de que você já baixou o driver do navegador selenium
e verifique novamente se o executável do driver está no PATH
Você pode usar ChromeDriver para Chrome ou Geckodriver para Firefox
e pode alternar entre esses drivers no código fonte C#.
Clonar o projeto .NET do GitHub
git clone https://github.com/deathbycaptcha/deathbycaptcha-api-client-dotnet
As credenciais são lidas de variáveis de ambiente:
DBC_USERNAME=your_username
DBC_PASSWORD=your_password
Na pasta onde dbc_api_net.sln arquivo está localizado
Execute os seguintes comandos para executar o exemplo do Selenium:
dotnet restore dbc_api_net.sln
dotnet run --project DBC_Examples/DBC_Examples.csproj -c Release -f net10.0 -p:ExamplesStartupObject=DeathByCaptcha.SeleniumRecaptchaV2Example
Consulte exemplos de projetos .NET para mais detalhes
Estamos usando Maven 3.6+
Certifique-se de que você já baixou o driver do navegador selenium
e verificação dupla o executável do driver está no PATH
Você pode usar ChromeDriver para Chrome ou Geckodriver para Firefox
e pode alternar entre esses drivers no código fonte Java.
Faça o download do projeto Java Selenium na lista acima
Editar App.java e colocar suas credenciais lá
Client client = new HttpClient("DBC_USERNAME", "DBC_PASSWORD");
Na pasta onde pom.xml arquivo está localizado
Execute os seguintes comandos para executar o exemplo:
mvn clean install -U para limpar o projeto e instalar dependências
mvn exec:java -Dexec.mainClass="deathbycaptcha.App" para construir o projeto
mvn clean para limpar o projeto
Consulte exemplos de projetos Java e Maven para mais detalhes
Estamos usando NodeJS v22+
Certifique-se de que você já baixou o driver do navegador selenium
e verifique novamente se o executável do driver está no PATH
Você pode usar ChromeDriver para Chrome ou Geckodriver para Firefox
e pode alternar entre esses drivers no código fonte NodeJS.
Clonar o projeto NodeJS do GitHub
git clone https://github.com/deathbycaptcha/deathbycaptcha-api-client-nodejs
Editar examples/selenium/recaptcha_v2_selenium.js e colocar suas credenciais lá
const USERNAME = 'DBC_USERNAME' // Seu nome de usuário de DBC aqui
const PASSWORD = 'DBC_PASSWORD' // Sua senha de DBC aqui
Na pasta onde package.json arquivo está localizado
Execute os seguintes comandos para executar o exemplo:
npm install deathbycaptcha-lib // para instalar a biblioteca DBC do npm
node examples/selenium/recaptcha_v2_selenium.js // para executar o exemplo
Consulte exemplos de projetos NodeJS para mais detalhes
Estamos usando Python v3+
Certifique-se de que você já baixou o driver do navegador selenium
e verificação dupla o executável do driver está ativadoPATH
Você pode usar ChromeDriver para Chrome ou Geckodriver para Firefox
e pode alternar entre esses drivers no código fonte Python3.
Faça o download do projeto Python3 Selenium na lista acima
Editar python_selenium_example.py e coloque suas credenciais lá
USERNAME = 'DBC_USERNAME' # Seu nome de usuário de DBC aqui
PASSWORD = 'DBC_PASSWORD' # Sua senha de DBC aqui
Na pasta onde requirements.txt arquivo está localizado
Execute os seguintes comandos para executar o exemplo:
python3 -m venv venv para criar um novo venv python3
. venv/bin/activate para ativar o venv
pip3 install -r requirements.txt para instalar dependências
python3 python_selenium_example.py
Consulte exemplos de projetos Python3 para mais detalhes
Criar novo ambiente virtual Python3
python3 -m venv venv
Ativar o ambiente virtual
. venv/bin/activate
Instalar a biblioteca DeathByCaptcha do pypi
pip install deathbycaptcha-official
Criar nosso script de python3
import deathbycaptcha
# don't forget to import deathbycaptcha library
username = 'username'
password = 'password'
authtoken = ''
...
use o cliente DeathByCaptcha python http
http_client = deathbycaptcha.HttpClient(username, password, authtoken)
ou use o cliente DeathByCaptcha python sockets
socket_client = deathbycaptcha.SocketClient(username, password, authtoken)
Consulte exemplos de projetos Python3 para mais detalhes.
Criar novo projeto 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
Inclua as seguintes dependências no arquivo maven pom.xml
<dependencies>
<dependency>
<groupId>io.github.deathbycaptcha</groupId>
<artifactId>deathbycaptcha-java-library</artifactId>
<version>4.7.0</version>
</dependency>
</dependencies>
se pom.xml estiver correto.
Podemos usar as importações em nossos arquivos java.
import com.DeathByCaptcha.AccessDeniedException;
import com.DeathByCaptcha.Client;
import com.DeathByCaptcha.HttpClient;
import com.DeathByCaptcha.SocketClient;
import com.DeathByCaptcha.Captcha;
...
Limpar e construir o projeto
mvn clean install -U
Executar o projeto
mvn exec:java -Dexec.mainClass="examples.GetBalance" -Dexec.args=""
mvn exec:java -Dexec.mainClass="examples.ExampleRecaptchaV2"
...
Consulte exemplos de projetos Java e Maven para mais detalhes
Ao usar clientes da Socket API, não se esqueça de ter conexões TCP de saída para as portas 8123-8130 firewalled. Use clientes da API HTTP se os clientes da API de soquete não funcionarem para você. A linha de portas 8123-8130 é apenas para API de soquete, não tente usá-la com a API HTTP!
Observe que uma chamada para a função/método de decodificação pode retornar um valor nulo se o tempo limite for atingido antes que o captcha seja resolvido. Se isso acontecer com frequência, aumente o tempo limite usado.
Para obter mais detalhes, consulte Exemplos incluídos em cada pacote do cliente da API e verifique o código fonte dos clientes.
- Para verificar seu saldo, execute:
deathbycaptcha.exe -l USERNAME -p PASSWORD -b
Ou usando token de autenticaçãodeathbycaptcha.exe -a AUTHTOKEN -b
Seu saldo será salvo no arquivobalance.txte impresso na saída padrão. - Para fazer upload de um captcha, execute:
deathbycaptcha.exe -l USERNAME -p PASSWORD -c CAPTCHA_FILE_NAME [-t TIMEOUT]
Ou usando token de autenticaçãodeathbycaptcha.exe -a AUTHTOKEN -c CAPTCHA_FILE_NAME [-t TIMEOUT]
O tempo limite de solução de captcha padrão é de 60 segundos.
Se resolvido, o ID do Captcha será salvo emid.txt, o texto do captcha será salvo emAnswer.txte o ID e o texto serão impressos no Saída padrão separada por um espaço. - Para relatar um captcha resolvido incorretamente, execute:
deathbycaptcha.exe -l USERNAME -p PASSWORD -n CAPTCHA_ID
Ou usando token de autenticaçãodeathbycaptcha.exe -a AUTHTOKEN -n CAPTCHA_ID
Para mais detalhes de uso da CLI e exemplos adicionais, consulte documentacao CLI no GitHub.
Antes de implementar o seu próprio cliente API HTTP Death By Captcha , por favor considere seriamente a utilização da API socket com um dos nossos clientes oficiais listados acima.
O url da API é http://api.dbcapi.me/api/.
O caminho do URL muda dependendo da ação desejada. Todas as respostas dos pedidos feitos à API têm dois campos comuns:
status— pedido de status. 0 se não houve erros durante o processamento interno da solicitação, 255 caso contrário.error— breve explicação do erro ocorrido. Só é devolvido quando o status é 255.
Para mais detalhes sobre o caminho correcto do URL e outros campos devolvidos para uma acção específica, consulte a sua secção abaixo.
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.
O que são desafios de “captcha normal”?
Esta forma de CAPTCHA é baseada em imagens e requer a inserção de uma sequência de letras ou números de uma imagem distorcida.
Para carregar um CAPTCHA, faça um pedido POST multipart/form-data para http://api.dbcapi.me/api/captcha.
O pedido deve conter os seguintes campos:
username— o seu utilizador Death By Captcha.password— a sua palavra-passe Death By Captcha.captchafile— a imagem CAPTCHA.
No caso de estar a usar a autenticação do token:
authtoken— o seu token de autenticação Death By Captcha.captchafile— a imagem CAPTCHA.
captchafile deve ser uma imagem raw CAPTCHA, ou uma imagem base64-encoded CAPTCHA com o prefixo base64:. O tamanho do ficheiro da imagem está limitado a menos de 180 KB. Quando a imagem for codificada em base64, o tamanho deve ser menor do que 120 KB. Os formatos de imagem suportados são JPG, PNG, GIF e BMP.
Aqui está o form HTML que faz o truque:
<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>
Ou usar a autenticação do token:
<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>
Aqui está o equivalente de comando cURL:
curl --header 'Expect: ' -F username=YOUR_USERNAME -F password=YOUR_PASSWORD -F captchafile=@YOUR_CAPTCHA_FILENAME http://api.dbcapi.me/api/captcha
Ou usar a autenticação do token:
curl --header 'Expect: ' -F authtoken=YOUR_AUTHTOKEN -F captchafile=@YOUR_CAPTCHA_FILENAME http://api.dbcapi.me/api/captcha
O campo base64-encoded captchafile deve ficar assim:
base64:R0lGODlhAQABAIABAAAAAP///yH5BAEAAAEALAAAAAABAAEAAAICTAEAOw==
Terá uma das seguintes respostas HTTP:
-
303 See Otherse o seu CAPTCHA foi carregado com sucesso,LocationO cabeçalho HTTP irá indicar-lhe a página de status do CAPTCHA enviado; poderá seguir aLocationpara obter o status do captcha carregado. Além disso, os seguintes campos serão devolvidos:
captcha— id do captcha carregadois_correct— 1 se uma resposta foi identificada para este captcha ou ainda está a ser processada, 0 se o processamento terminou e nenhuma resposta pôde ser encontrada.text— oesposta do captcha. Uma string vazia significa que o captcha ainda não está resolvido.
status=0&captcha=123&is_correct=1&text=
Exemplo codificado JSON:{ "status": 0, "captcha": 123, "is_correct": 1, "text": "" } -
403 Forbiddense as credenciais Death By Captcha foram rejeitadas, ou não tem créditos suficientes. -
400 Bad Requestse o seu pedido não seguiu a especificação acima, ou o CAPTCHA foi rejeitado por não ser uma imagem válida. -
500 Internal Server Errorse algo aconteceu do nosso lado impedindo-o de carregar o CAPTCHA; se tiver a certeza de que está a enviar pedidos devidamente estruturados com imagens CAPTCHA válidas, mas o problema persiste, por favor contacte o nosso apoio ao vivo e diga-lhes em detalhes como reproduzir o problema. -
503 Service Temporarily Unavailablequando o nosso serviço estiver sobrecarregado, tente novamente mais tarde.
Neste momento, o CAPTCHA que você acabou de carregar pode ainda não ter sido resolvido! Se não recebeu a resposta na chave text da resposta do servidor, você terá que pesquisar por ela. Consulte Pesquisando pelo estado do CAPTCHA carregado para mais detalhes.
Para obter o status de um CAPTCHA carregado, faça um pedido GET para
http://api.dbcapi.me/api/captcha/%CAPTCHA_ID%,
onde %CAPTCHA_ID% é o ID do CAPTCHA carregado adquirido enquanto carrega o CAPTCHA.
Não tens de fornecer as suas crendenciais Death By Captcha desta vez.
A resposta será HTTP HTTP 200 OK com os mesmos campos descritos para a resposta 303 See Other da secção Carregar um CAPTCHA.
Se o captcha ainda não estiver resolvido, a key text virá vazia. Terá de continuar a fazer pesquisas para obter esta resposta. Exemplos de respostas:
-
Resposta codificada URL de um CAPTCHA resolvido correctamente
status=0&captcha=1234&is_correct=1&text=tyrone+slothrop
-
Resposta codificada JSON de um CAPTCHA resolvido correctamente
{ "captcha": 1234, "is_correct": true,"status": 0, "text": "tyrone slothrop" } -
Resposta codificada JSON de um CAPTCHA resolvido incorrectamente
{ "captcha": 1234, "is_correct": false, "status": 0, "text": "?" } -
Resposta codificada JSON de um CAPTCHA inexistente
{ "captcha": 0, "status": 0 }Se você receber esta resposta, confirme que o ID CAPTCHA que está a usar para pesquisar a resposta é o mesmo retornado quando foi carregado. Se o problema persistir, por favor contacte-nos.
Por favor não pesquise o status de CAPTCHA mais do que uma vez em alguns segundos.
Isto é considerado abusivo e pode fazer com que seja banido.
Poupe a sua e a nossa largura de bandae.
Se acha que o CAPTCHA foi resolvido incorrectamente, reporte-o à Death By Captcha para recuperar o seu dinheiro.
Para isso, faça um pedido POST para http://api.dbcapi.me/api/captcha/%CAPTCHA_ID%/report com os seguintes campos:
username— o seu utilizador Death By Captcha.password— a sua palavra-passe Death By Captcha.
Ou usando token de autenticação:
authtoken— o seu token de autenticação Death By Captcha.
A resposta será:
200 OKse reportou com sucesso. Neste caso, os seus créditos serão reembolsados. O corpo de resposta será o mesmo que para uma pesquisa (ou carregamento), mas o campois_correctserá 0. Exemplo:{ "captcha": 1234, "is_correct": false,"status": 0, "text": "tyrone slothrop" }503 Service Unavailablee não for possível completar o que reportou. Isso pode ser porque:
1) o captcha correspondente ao id fornecido não foi carregado pelo utilizador que o reportou;
2) o seu utilizador está banido;
3) foi reportado mais de uma hora depois de ter sido carregado. Neste caso, não será reembolsado.
Abusar desta funcionalidade vai fazer com que seja banido!
Para verificar o seu saldo de crédito, faça um pedido de GET ou POST para http://api.dbcapi.me/api com os seguintes campos:
username— o seu utilizador Death By Captcha.password— a sua palavra-passe Death By Captcha.
Ou usando token de autenticação:
authtoken— o seu token de autenticação Death By Captcha.
Numa autenticação bem sucedida, você vai obter uma resposta 200 OK com os detalhes da sua conta Death By Captcha, codificados em URL ou JSON, com os seguintes campos:
user— o ID da sua conta Death By Captcha;rate— quanto lhe cobramos por um CAPTCHA resolvido correctamente, em US¢;balance— o seu saldo de crédito actual, em US¢.is_banned— 1 se o utilizador estiver banido, 0 caso contrário.
Exemplo de resposta codificada por JSON:
{ "is_banned": false, "status": 0, "rate": 0.139,"balance": 455.23, "user": 43122 }
Para receber o estado actual do servidor, envie um pedido GET para http://api.dbcapi.me/api/status. A resposta terá os seguintes campos:
todays_accuracy— número que representa a precisão em percentagem (por exemplo, 99,6 representa 99,6%)solved_in— tempo médio de resolução em segundosis_service_overloaded— 1 Se o serviço estiver sobrecarregado, 0 caso contrário
Exemplo de resposta codificada por JSON:
{ "status": 0, "todays_accuracy": 99.9, "solved_in": 5.3,"is_service_overloaded": false }
- DeCaptcher API (ambos socket e HTTP)
- Antigate (Anti-Captcha)
- 2captcha

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

