
Adélia Cruz
Neural Network Developer

Este tutorial o guiará pelo processo de resolver reCaptcha do Google no Puppeteer usando o CapSolver.
CapSolver é um serviço de resolução de captchas que ajuda você a resolver captchas.
Usamos algoritmos de resolução de captchas baseados em inteligência artificial, o que resulta em velocidade de resolução mais rápida e custos significativamente reduzidos, oferecendo uma excelente experiência de desenvolvedor.
O objetivo será resolver o captcha localizado em recaptcha-demo.appspot.com usando o CapSolver.

Durante o tutorial, seguiremos os seguintes passos para resolver o captcha acima:
Para começar, precisamos instalar as seguintes dependências para este tutorial:
Instale estas dependências executando o seguinte comando:
python -m pip install pyppeteer capsolver-python
Agora, crie um arquivo chamado main.py onde escreveremos o código Python para resolver captchas.
touch main.py
A Chave do Site é um identificador único fornecido pelo Google que identifica unicamente cada Captcha.
Para resolver o Captcha, é necessário enviar a Chave do Site para o CapSolver.
Vamos encontrar a Chave do Site do Formulário de Captcha seguindo estes passos:

Ctrl/Cmd + Shift + I.Elementos e procure por data-sitekey. Copie o valor do atributo.
Para resolver captchas usando o CapSolver, você precisa criar uma conta no CapSolver, adicionar fundos à sua conta e obter uma Chave da API. Siga estes passos para configurar sua conta no CapSolver:



Agora, resolveremos o captcha usando o CapSolver. O processo geral envolve três etapas:
Leia os seguintes trechos de código para entender essas etapas.
Iniciar o navegador e visitar a página do captcha:
# Iniciar o navegador.
browser = await launch({'headless': False})
# Carregar a página de destino.
captcha_page_url = "https://recaptcha-demo.appspot.com/recaptcha-v2-checkbox.php"
page = await browser.newPage()
await page.goto(captcha_page_url)
Resolver o captcha usando o CapSolver:
# Resolver o reCAPTCHA usando o CapSolver.
capsolver = RecaptchaV2Task("SUA_CHAVE_DA_API")
site_key = "6LfW6wATAAAAAHLqO2pb8bDBahxlMxNdo9g947u9"
task_id = capsolver.create_task(captcha_page_url, site_key)
result = capsolver.join_task_result(task_id)
# Obter o código do reCAPTCHA resolvido.
code = result.get("gRecaptchaResponse")
Definir o captcha resolvido no formulário e submetê-lo:
# Definir o código do reCAPTCHA resolvido no formulário.
recaptcha_response_element = await page.querySelector('#g-recaptcha-response')
await page.evaluate(f'(element) => element.value = "{code}"', recaptcha_response_element)
# Submeter o formulário.
submit_btn = await page.querySelector('button[type="submit"]')
await submit_btn.click()
Abaixo está o código completo para o tutorial, que resolverá o captcha usando o CapSolver.
import asyncio
from pyppeteer import launch
from capsolver_python import RecaptchaV2Task
# O seguinte código resolve um desafio reCAPTCHA v2 usando o CapSolver.
async def main():
# Iniciar o navegador.
browser = await launch({'headless': False})
# Carregar a página de destino.
captcha_page_url = "https://recaptcha-demo.appspot.com/recaptcha-v2-checkbox.php"
page = await browser.newPage()
await page.goto(captcha_page_url)
# Resolver o reCAPTCHA usando o CapSolver.
print("Resolvendo captcha")
capsolver = RecaptchaV2Task("SUA_CHAVE_DA_API")
site_key = "6LfW6wATAAAAAHLqO2pb8bDBahxlMxNdo9g947u9"
task_id = capsolver.create_task(captcha_page_url, site_key)
result = capsolver.join_task_result(task_id)
# Obter o código do reCAPTCHA resolvido.
code = result.get("gRecaptchaResponse")
print(f"reCAPTCHA resolvido com sucesso. O código de resolução é {code}")
# Definir o código do reCAPTCHA resolvido no formulário.
recaptcha_response_element = await page.querySelector('#g-recaptcha-response')
await page.evaluate(f'(element) => element.value = "{code}"', recaptcha_response_element)
# Submeter o formulário.
submit_btn = await page.querySelector('button[type="submit"]')
await submit_btn.click()
# Pausar a execução para que você possa ver a tela após a submissão antes de fechar o navegador
input("Submissão do Captcha bem-sucedida. Pressione Enter para continuar")
# Fechar o navegador.
await browser.close()
if __name__ == "__main__":
asyncio.get_event_loop().run_until_complete(main())
Cole o código acima no seu arquivo main.py. Substitua SUA_CHAVE_DA_API pela sua chave da API e execute o código.
Você observará que o captcha será resolvido e você será recebido por uma página de sucesso 🥳.

Parabéns! Você aprendeu com sucesso como resolver captchas usando o CapSolver. Aqui estão os principais pontos aprendidos neste tutorial:
Obrigado pelo seu tempo. 🙏 Desejamos boa sorte em sua jornada de automação! 🚀
Utilizamos algoritmos de resolução de captchas baseados em inteligência artificial em vez de solucionadores humanos, resultando em custos significativamente mais baixos para resolver captchas. Portanto, nossas taxas são altamente competitivas no mercado.
Por exemplo, o custo para resolver captchas do Google v2/v3 varia de $0,8 a $1.
Para saber mais sobre nossos preços em detalhes, encorajamos você a visitar nossa página de preços aqui.
Neste tutorial, resolvemos o reCaptcha do Google V2, mas o site alvo provavelmente está usando o reCaptcha do Google V3.
Ao resolver o reCaptcha do Google V3, é importante garantir que o endereço IP e o agente do usuário usados para submeter o captcha sejam os mesmos usados para resolvê-lo.
Assim que você tiver proxies residenciais, pode atualizar o código da seguinte forma para resolver o captcha com sucesso:
browser = await launch({'args': ['--proxy-server=ip:port'], 'headless': False})
capsolver = RecaptchaV2Task("SUA_CHAVE_DA_API")
capsolver.set_proxy(proxy_address='proxy_ip', proxy_port='proxy_port', proxy_login='user', proxy_password='password')
browser_useragent = browser.userAgent()
capsolver.set_user_agent(browser_useragent)
Aprenda como resolver desafios do AWS WAF e CAPTCHAs sem um navegador. Utilize a API do CapSolver para gerar tokens e contornar códigos de status 405.

Configure a raspagem de web no Linux com Python, proxies e tratamento de CAPTCHA. Um guia prático para desenvolvedores que aborda Scrapy, Playwright, CapSolver e pipelines de dados.

Aprenda o que causa o erro 1020 Acesso Negado do Cloudflare, como o Firewall de Aplicação Web e a detecção de bots funcionam e como os desenvolvedores podem reduzir falsos positivos em fluxos de trabalho de automação legítimos.
