CAPSOLVER
Blog
Como resolver o captcha no selenium python | Guia completo 2024

Como resolver o captcha no selenium python | Guia completo 2024

Logo of CapSolver

Adélia Cruz

Neural Network Developer

04-Jul-2024

Encontrar um CAPTCHA ao realizar automação na web é algo que deixa muitas pessoas sobrecarregadas. Esses CAPTCHAs, projetados especificamente para diferenciar entre usuários humanos e scripts automatizados, são sem dúvida um grande desafio ao usar o Selenium para tarefas de crawling ou automação na web. O guia completo de 2024 fornecerá uma solução abrangente para ajudá-lo a enfrentar esses obstáculos de maneira eficiente, focando principalmente nos dois tipos mais comuns de CAPTCHA: captcha e recaptcha, além de incorporar uma solução de terceiros para CAPTCHAs, CapSolver.

Índice

  1. O que é CAPTCHA
  2. Exemplos de CAPTCHA
  3. Pré-requisitos
  4. Método 1: Solução de CAPTCHA via API do Capsolver
    • Entendendo Formulários HTML
    • Lidando com Elementos de Textarea Ocultos
    • Obtendo o Token
    • Usando o SDK Python do Capsolver para Obter o Token
    • Usando o Token no Selenium
  5. Método 2: Solução de CAPTCHA com Extensão Capsolver
    • Download e Empacotamento da Extensão Capsolver
    • Usando a Extensão Capsolver no Selenium

Código Bônus

Reivindique seu Código Bônus para as principais soluções de captcha; CapSolver: WEBS. Depois de resgatá-lo, você receberá um bônus extra de 5% após cada recarga, ilimitado.

O que é CAPTCHA

CAPTCHA exige que os usuários realizem tarefas específicas, como inserir o texto exibido em uma imagem ou clicar em imagens de um conjunto que correspondem a critérios específicos. Essas tarefas são projetadas para verificar se o usuário é humano ou um robô. Devido à natureza dinâmica dessas tarefas, elas só podem ser concluídas com sucesso por meio da cognição humana e da correta interpretação das informações, áreas onde a inteligência artificial frequentemente enfrenta dificuldades.

Algumas variantes de CAPTCHA também suportam indivíduos com deficiência visual, gerando áudio em vez de imagens.

Exemplos de CAPTCHA

O widget CAPTCHA de código aberto do Google, reCAPTCHA, é amplamente utilizado porque suporta diversos leitores de tela principais como Jcaptcha e NVDA para IE, Edge ou Chrome no Windows OS, ChromeVox para Chrome OS, e VoiceOver para Safari e Chrome no Mac OS.

Além disso, o captcha é outro tipo comum de CAPTCHA onde os usuários precisam clicar em imagens específicas, como selecionar todas as imagens que contêm um objeto específico, para completar a verificação. Usuários humanos normais frequentemente precisam gastar até um minuto completando uma verificação complexa do captcha. Ambos os tipos de CAPTCHA impedem eficazmente ataques de script automatizados e são amplamente adotados por muitos sites.

Pré-requisitos

  • Google Chrome: Instale a versão mais recente do Chrome, pois interagiremos com o Chrome através do código.
  • Python: Certifique-se de ter o Python instalado e que a versão seja 3 ou superior. Versões abaixo de 3 não são mais recomendadas.
  • Selenium: A biblioteca Python para a ferramenta de automação Selenium.
  • Capsolver Python SDK: O SDK oficial do Capsolver Python, que permite uma integração fácil com o Capsolver.
  • Capsolver Extension: A extensão oficial do Capsolver para Chrome, que pode resolver automaticamente vários desafios para você.

Método 1: Solução de CAPTCHA via API do Capsolver

Vamos usar esta página demo como exemplo para demonstrar como resolver reCAPTCHA no Python Selenium usando a API do Capsolver.

Entendendo Formulários HTML

Antes de começarmos, precisamos entender o básico dos formulários HTML. Observe esta página e abra as ferramentas do desenvolvedor. Resolva manualmente o reCAPTCHA e clique no botão Enviar. Você verá uma solicitação POST enviada, submetendo três campos: ex-a, ex-b e g-recaptcha-response, como mostrado na imagem abaixo:

Esses três campos correspondem a dois elementos de entrada e um elemento de textarea no formulário no código-fonte HTML inicial, como mostrado na imagem abaixo:

Nosso método envolve resolver o reCAPTCHA usando a API do Capsolver, obter o token, inseri-lo no elemento textarea e então clicar no botão Enviar para submeter o formulário.

Lidando com Elementos de Textarea Ocultos

Ao inserir o token no elemento textarea, observe que o elemento textarea na página da web possui um estilo CSS display: none, o que significa que o textarea não está visível. Neste caso, se você tentar inserir conteúdo diretamente no elemento textarea no Selenium, ocorrerá um erro:
selenium.common.exceptions.ElementNotInteractableException: Mensagem: elemento não é interagível, porque o elemento textarea não é interagível neste momento. Para resolver isso, precisamos definir o estilo CSS do elemento textarea como display: block. O método específico será refletido no código posteriormente.

Obtendo o Token

O uso da API do Capsolver requer que forneçamos a websiteKey, que pode ser encontrada procurando pela palavra-chave data-sitekey no código-fonte da página:

Usando o SDK Python do Capsolver para Obter o Token

Veja como obter o token usando o SDK Python do Capsolver:

python Copy
import capsolver

capsolver.api_key = "sua chave de API"
solution = capsolver.solve({
    "type": "ReCaptchaV2TaskProxyLess",
    "websiteKey": "6LfW6wATAAAAAHLqO2pb8bDBahxlMxNdo9g947u9",
    "websiteURL": "https://recaptcha-demo.appspot.com/recaptcha-v2-checkbox.php",
})
token = solution["gRecaptchaResponse"]
print(token)

Usando o Token no Selenium

Agora, precisamos usar o token com o Selenium. Existem duas operações principais no Selenium:

  • Tornar o elemento textarea visível para que ele possa ser interagido e o token possa ser inserido nele.
  • Localizar o botão de envio e clicar nele para submeter o formulário.

Essas operações envolvem localizar elementos e interagir com eles. Se você não estiver familiarizado com o Selenium, pode consultar Web Scraping com Selenium e Python | Resolvendo Captcha ao Fazer Web Scraping.

Combinando com a API do Capsolver, o código completo é o seguint

e:

python Copy
import capsolver
from selenium import webdriver
from selenium.webdriver.common.by import By

# Inicializar objeto Chrome Options e acessar o site alvo
chrome_options = webdriver.ChromeOptions()
driver = webdriver.Chrome(options=chrome_options)
url = "https://recaptcha-demo.appspot.com/recaptcha-v2-checkbox.php"
driver.get(url)

# Chamando a API do Capsolver para resolver o ReCaptcha
capsolver.api_key = "sua chave de API"
solution = capsolver.solve({
    "type": "ReCaptchaV2TaskProxyLess",
    "websiteKey": "6LfW6wATAAAAAHLqO2pb8bDBahxlMxNdo9g947u9",
    "websiteURL": url,
})
token = solution["gRecaptchaResponse"]
print(f"Token retornado pelo Capsolver: {token}")

# Mudar a propriedade de estilo display do textarea para block para torná-lo visível
driver.execute_script("document.getElementById('g-recaptcha-response').style.display = 'block';")
# Simular a inserção do token no textarea
textarea = driver.find_element(By.ID, "g-recaptcha-response")
textarea.send_keys(token)

# Simular o clique e submeter o formulário
submit_btn = driver.find_element(By.CSS_SELECTOR, "button[type='submit']")
submit_btn.click()
input("Pressione qualquer tecla para sair.")
driver.close()

O código acima demonstra como resolver reCAPTCHA usando a API do Capsolver no Python Selenium. Depois de resolvê-lo com sucesso, você verá a página a seguir:

Método 2: Solução de CAPTCHA com Extensão Capsolver

O Método 1 envolveu a resolução de CAPTCHA através da API do Capsolver, que inclui muitas operações complexas. Se você procura uma maneira mais simples e conveniente de resolver CAPTCHA, então a Extensão Capsolver é a melhor escolha. Ela pode ser facilmente integrada a navegadores como Chrome e Firefox. A Extensão Capsolver pode reconhecer e resolver automaticamente vários desafios de CAPTCHA em apenas alguns segundos, sem nenhuma intervenção humana, permitindo que você aproveite o serviço de resolução de CAPTCHA do Capsolver sem escrever nenhum código.

Usamos o captcha como exemplo, com a página alvo

Download e Empacotamento da Extensão Capsolver

Como estamos usando a Extensão Capsolver no Selenium, precisamos baixar o arquivo zip do GitHub oficial do Capsolver. O uso da Extensão Capsolver requer que você insira sua chave de API, conforme mostrado abaixo:

Interagir com extensões do navegador no Selenium pode ser bastante complicado, então podemos pré-preencher a chave de API no arquivo de configuração da extensão \assets\config.js e depois carregá-la diretamente no Selenium. Extraia o arquivo zip da Extensão Capsolver que baixamos e insira sua chave de API no arquivo \assets\config.js, conforme mostrado abaixo:

Em seguida, use o recurso de empacotamento de extensões embutido do Chrome para reempacotar a Extensão Capsolver. Observe que você não pode simplesmente compactar a pasta de volta em um arquivo zip; essa extensão seria inutilizável. No Chrome, visite chrome://extensions/, ative o modo de desenvolvedor, selecione a opção Pack Extension e importe toda a pasta da extensão Capsolver. Após o reempacotamento, você obterá um arquivo .crx.

Usando a Extensão Capsolver no Selenium

Use o método add_extension para carregar a Extensão Capsolver no formato .crx recém-reempacotado. O código de exemplo é o seguinte:

python Copy
from selenium import webdriver

chrome_options = webdriver.ChromeOptions()
chrome_options.add_extension(r"C:\caminho\para\CapSolver.Browser.Extension-chrome-v1.14.0.crx")
driver = webdriver.Chrome(options=chrome_options)
driver.get("https://iframe.arkoselabs.com/3117BF26-4762-4F5A-8ED9-A85E69209A46/index.html")

input("Pressione qualquer tecla para sair.")
driver.close()

Execute o código e você verá que a Extensão Capsolver resolve automaticamente o desafio captcha:

Conclusão

Seja usando a API do Capsolver ou a Extensão Capsolver, você pode resolver perfeitamente CAPTCHA no Python Selenium. Se tiver alguma dúvida, consulte a documentação do Capsolver para mais informações úteis.

Declaração de Conformidade: As informações fornecidas neste blog são apenas para fins informativos. A CapSolver está comprometida em cumprir todas as leis e regulamentos aplicáveis. O uso da rede CapSolver para atividades ilegais, fraudulentas ou abusivas é estritamente proibido e será investigado. Nossas soluções de resolução de captcha melhoram a experiência do usuário enquanto garantem 100% de conformidade ao ajudar a resolver dificuldades de captcha durante a coleta de dados públicos. Incentivamos o uso responsável de nossos serviços. Para mais informações, visite nossos Termos de Serviço e Política de Privacidade.

Mais

Como resolver CAPTCHAs em raspagem de web
Como resolver CAPTCHAs em raspagem de web 2026

CAPTCHA, um acrônimo para "Teste Público de Turing Completamente Automatizado para Distinguir Computadores e Humanos", é uma medida de segurança implementada por sites para diferenciar entre usuários humanos e robôs automatizados...

The other captcha
Logo of CapSolver

Sora Fujimoto

11-Dec-2025

O que é Captcha e como resolvê-lo?
O que é CAPTCHA e como resolvê-lo: Guia Simples para 2026

Cansado de testes CAPTCHA frustrantes? Aprenda o que é o CAPTCHA, por que é essencial para a segurança da web em 2026 e as melhores formas de resolvê-lo rapidamente. Descubra ferramentas avançadas de resolução de CAPTCHA alimentadas por IA, como o CapSolver, para contornar desafios de forma transparente.

The other captcha
Logo of CapSolver

Nikolai Smirnov

08-Dec-2025

Alterar o Agente de Usuário no Selenium
Alterar o User-Agent no Selenium | Passos & Boas Práticas

Alterar o Agente de Usuário no Selenium é um passo crucial para muitas tarefas de raspagem da web. Ajuda a disfarçar o script de automação como um navegador regular...

The other captcha
Logo of CapSolver

Emma Foster

05-Dec-2025

Painel de Controle CapSolver 3.0!
Suba de nível com o CapSolver Dashboard 3.0!

O Dashboard CapSolver 3.0 foi recentemente atualizado com interação aprimorada e uma série de novas funcionalidades.

The other captcha
Logo of CapSolver

Emma Foster

04-Dec-2025

Como resolver captcha de imagem com Python
Como resolver captcha de imagem com Python

Obstáculos comuns de CAPTCHA de imagem nos fluxos de trabalho de raspagem e uma abordagem com inteligência artificial para decodificá-los em Python.

The other captcha
Logo of CapSolver

Adélia Cruz

03-Dec-2025

Resolver Captchas Automaticamente Usando o CapSolver
Como resolver captchas automaticamente usando CapSolver

Resolva facilmente reCAPTCHA e CAPTCHAs de imagem usando o CapSolver — uma API rápida e confiável para tarefas de automação e raspagem.

The other captcha
Logo of CapSolver

Adélia Cruz

24-Oct-2025