A decisão cabe em uma pergunta: o CAPTCHA é o seu problema central ou só um detalhe na coleta de dados? Se for um detalhe e o volume for baixo, o ScrapingBee devolve o HTML pronto e você não gerencia nada. Se o desafio aparece em boa parte das páginas, compensa controlar o navegador no seu código e chamar a CaptchaAI só para resolver o CAPTCHA. São produtos de categorias diferentes: comparar plano contra plano engana.
Quando cada opção faz sentido
Fique no ScrapingBee se
- você não quer manter navegador nem proxy;
- a coleta é ocasional e periférica ao produto;
- o orçamento não cresce com o volume.
Monte o pipeline com a CaptchaAI se
- você precisa de GeeTest v3, BLS CAPTCHA ou grade de imagens;
- o preço por requisição pesa no seu volume;
- você quer controle de sessão, cookies e navegador.
O que cada serviço entrega
| Aspecto | ScrapingBee | Pipeline com CaptchaAI |
|---|---|---|
| O que é | API de coleta completa | API de resolução de CAPTCHA |
| Você gerencia | Nada: envia a URL, recebe o HTML | Navegador, proxy e lógica de coleta |
| Proxy e JS | Incluídos | Você configura (Selenium/Playwright) |
| Cobrança | Por chamada, em créditos | Por thread, resoluções ilimitadas |
Quanto custa cada caminho
O ScrapingBee cobra créditos: cerca de US$ 49 por 1.000, US$ 99 por 10.000 e US$ 249 por 30.000 — de US$ 0,049 a US$ 0,008 por requisição, conforme a tabela pública do fornecedor (valores aproximados). A renderização JavaScript consome 5 créditos; os modos avançados, de 10 a 25.
Na CaptchaAI você paga por thread simultânea, com resoluções ilimitadas: BASIC (US$ 15/mês, 5 threads) ou STANDARD (US$ 30/mês, 15 threads), mais o proxy e o servidor que você já mantém (de US$ 20 a US$ 50/mês em um VPS).
Em 10.000 páginas por mês com CAPTCHA em 30% delas são 3.000 resoluções: de US$ 99 a US$ 249 no modelo por crédito, contra US$ 15 de plano. Uma thread de reCAPTCHA v2 (< 60 s) tem teto teórico perto de 43 mil resoluções mensais, e o BASIC traz cinco — o gasto não sobe com o volume.
Cenário local: monitoramento autorizado de preços
Um time de e-commerce em São Paulo acompanha, com autorização contratual, a vitrine de preços de parceiros e valida o próprio catálogo em staging: 40 mil páginas por mês, um terço com reCAPTCHA v2 ou Cloudflare Turnstile. Esse volume estoura a faixa de 30 mil créditos, e a renderização JavaScript multiplica o consumo. Com workers em sa-east-1, o RTT cai e a CaptchaAI entra só quando o desafio aparece. Há ainda a LGPD: manter a coleta no seu código facilita registrar o que foi coletado e por quanto tempo fica retido.
Como fica o código
Chamada única ao ScrapingBee
import requests
resp = requests.get(
"https://app.scrapingbee.com/api/v1/",
params={
"api_key": "SCRAPINGBEE_KEY",
"url": "https://example.com/data",
"render_js": "true",
},
)
html = resp.text
# Parse HTML here
CaptchaAI dentro do seu Selenium
import requests
from selenium import webdriver
from selenium.webdriver.common.by import By
# You control the browser
driver = webdriver.Chrome()
driver.get("https://example.com/data")
# Detect CAPTCHA
sitekey = driver.find_element(By.CSS_SELECTOR, "[data-sitekey]").get_attribute("data-sitekey")
# Solve with CaptchaAI
resp = requests.post("https://ocr.captchaai.com/in.php", data={
"key": "YOUR_API_KEY",
"method": "userrecaptcha",
"googlekey": sitekey,
"pageurl": driver.current_url,
"json": 1,
})
# ... poll for result, inject token ...
No primeiro caso você recebe HTML e parte para o parsing; no segundo, o navegador é seu.
Cobertura de tipos de CAPTCHA
| Tipo | ScrapingBee | CaptchaAI |
|---|---|---|
| reCAPTCHA v2/v3 | ✅ | ✅ |
| Turnstile e Cloudflare Challenge | ✅ | ✅ (< 10 s e < 15 s) |
| GeeTest v3 | ❌ | ✅ (< 12 s) |
| BLS CAPTCHA | ❌ | ✅ (< 1 s) |
| CAPTCHA de imagem | Limitado | ✅ (27.500+ variantes) |
| CaptchaFox, Friendly Captcha, Lemin | não documentado | ✅ beta |
| hCaptcha, FunCaptcha, GeeTest v4 | não documentado | ❌ ainda não |
Os tempos são tetos por tipo, não médias. Se o alvo depende de hCaptcha ou FunCaptcha, a comparação termina aqui.
Abordagem híbrida
Nada obriga a escolher um lado. Deixe o ScrapingBee nas páginas simples e acione a CaptchaAI quando o desafio aparecer:
def smart_scrape(url, scrapingbee_key, captchaai_key):
"""Use ScrapingBee for simple pages, CaptchaAI for complex ones."""
# Try ScrapingBee first (simpler)
resp = requests.get(
"https://app.scrapingbee.com/api/v1/",
params={"api_key": scrapingbee_key, "url": url},
)
if "captcha" not in resp.text.lower():
return resp.text # No CAPTCHA, use ScrapingBee result
# CAPTCHA detected, use CaptchaAI for full control
return solve_with_captchaai(url, captchaai_key)
Assim o consumo de créditos fica baixo no volume fácil.
Perguntas frequentes
Preciso de um navegador para usar a CaptchaAI?
Não. A API recebe sitekey e pageurl por HTTP e devolve o token; muitos times a chamam direto do backend, sem Selenium.
Como escolho quantas threads contratar?
Conte os CAPTCHAs simultâneos no pico, não o total do mês. Cada thread cuida de um desafio por vez e fica livre quando ele termina — as 5 threads do BASIC sustentam milhares de resoluções mensais em reCAPTCHA v2.
hCaptcha e FunCaptcha: a CaptchaAI resolve?
Não. Nenhum dos dois é suportado atualmente. CaptchaFox, Friendly Captcha e Lemin estão disponíveis em beta.
Vale manter os dois serviços em produção?
Vale quando o tráfego é misto: páginas sem desafio saem mais baratas pelo ScrapingBee, as protegidas ficam com o seu pipeline.
Guias relacionados
Monte uma coleta de dados flexível — comece pela CaptchaAI.