
Adélia Cruz
Neural Network Developer

Agentes de IA que impulsionam escuta social, monitoramento de marcas e pesquisas de mercado precisam de dados estruturados de perfis, posts e métricas de engajamento públicos nas redes sociais. As plataformas de redes sociais implementam CAPTCHAs e proteções contra bots agressivas que bloqueiam a coleta automatizada de dados — mesmo para informações disponíveis publicamente. Este guia aborda a construção de uma pipeline de dados públicos de mídia social para agentes de IA usando o CapSolver para manter acesso contínuo aos dados das plataformas.
Agentes de IA que realizam escuta social, inteligência competitiva e pesquisas de mercado precisam de acesso a dados públicos de redes sociais. Menções a marcas, tópicos em alta, padrões de engajamento e sentimento público são todos derivados de conteúdo publicado. No entanto, as plataformas de redes sociais implementam várias camadas de proteção contra bots para gerenciar o acesso automatizado.
Quando um agente de IA tenta coletar posts públicos, informações de perfil ou métricas de engajamento em larga escala, ele dispara desafios de verificação.
pip install git+https://github.com/capsolver-ai/capsolver-core.git
pip install aiohttp beautifulsoup4 pandas
export CAPSOLVER_API_KEY="sua-chave-da-api-do-capsolver"
SOCIAL_PLATFORMS = {
"reddit_public": {
"name": "Reddit (Público)",
"captcha_type": "ReCaptchaV2TaskProxyLess",
"trigger": "rate_limit_after_30_pages",
"public_data": ["posts", "comments", "upvotes", "subreddit_stats"]
},
"twitter_public": {
"name": "X/Twitter (Público)",
"captcha_type": "AntiTurnstileTaskProxyLess",
"trigger": "behavioral_and_rate",
"public_data": ["tweets", "likes", "retweets", "follower_count"]
},
"linkedin_public": {
"name": "LinkedIn (Perfis Públicos)",
"captcha_type": "AntiTurnstileTaskProxyLess",
"trigger": "after_20_profile_views",
"public_data": ["name", "headline", "company", "public_posts"]
},
"review_platforms": {
"name": "G2/Trustpilot/Capterra",
"captcha_type": "ReCaptchaV2TaskProxyLess",
"trigger": "after_50_reviews_viewed",
"public_data": ["reviews", "ratings", "company_scores", "feature_mentions"]
}
}
import asyncio
from capsolver_core import create_capsolver, CaptchaType, CaptchaInfo
from dataclasses import dataclass
from typing import List
@dataclass
class SocialDataPoint:
platform: str
content_type: str
text: str
engagement: dict
author: str
timestamp: float
url: str
class SocialDataCollector:
def __init__(self, api_key: str, proxies: list):
self.cap = create_capsolver(api_key=api_key)
self.proxies = proxies
self.proxy_idx = 0
async def collect_public_posts(self, platform: str, query: str, max_pages: int = 5) -> List[SocialDataPoint]:
results = []
for page in range(max_pages):
proxy = self.proxies[self.proxy_idx % len(self.proxies)]
self.proxy_idx += 1
html = await self._fetch(platform, query, page, proxy)
if self._is_captcha(html):
token = await self._solve(platform)
html = await self._retry(platform, query, page, proxy, token)
posts = self._parse_posts(html, platform)
results.extend(posts)
if not posts:
break
await asyncio.sleep(5)
return results
async def _solve(self, platform_key: str) -> str:
config = SOCIAL_PLATFORMS[platform_key]
type_map = {
"ReCaptchaV2TaskProxyLess": CaptchaType.RECAPTCHA_V2,
"AntiTurnstileTaskProxyLess": CaptchaType.CLOUDFLARE
}
info = CaptchaInfo(
type=type_map[config["captcha_type"]],
website_url=f"https://www.{platform_key.split('_')[0]}.com",
website_key=config.get("site_key", "")
)
solution = await self.cap.solve(info)
return solution.token
async def monitor_brand_mentions(self, brand: str, platforms: list) -> dict:
all_mentions = []
for platform in platforms:
posts = await self.collect_public_posts(platform, brand)
mentions = [p for p in posts if brand.lower() in p.text.lower()]
all_mentions.extend(mentions)
return {
"brand": brand,
"total_mentions": len(all_mentions),
"by_platform": {p: len([m for m in all_mentions if m.platform == p]) for p in platforms}
}
async def close(self):
await self.cap.aclose()
| Caso de uso | Dados necessários | Plataformas | Valor |
|---|---|---|---|
| Sentimento da marca | Menções públicas + engajamento | Reddit, Twitter, Reviews | Saúde da marca em tempo real |
| Inteligência competitiva | Menções de concorrentes + sentimento | Todas as plataformas | Posicionamento de mercado |
| Detecção de tendências | Volume de posts + tópicos ao longo do tempo | Reddit, Twitter | Identificação precoce de tendências |
| Geração de leads | Perfis profissionais públicos | LinkedIn (público) | Dados para prospecção comercial |
| Feedback de produto | Reviews + menções de recursos | G2, Capterra, Trustpilot | Entrada para desenvolvimento de produtos |
| Escopo de monitoramento | Coletas diárias | CAPTCHAs mensais | Custo mensal |
|---|---|---|---|
| 1 marca, 2 plataformas | ~60 páginas | ~540 | $1,08-1,62 |
| 5 marcas, 3 plataformas | ~450 páginas | ~4.050 | $8,10-12,15 |
| 20 marcas, 4 plataformas | ~2.400 páginas | ~21.600 | $43-65 |
Claim Your Bonus Code: Use o código WEBS no Painel do CapSolver para obter um bônus adicional de 5% em cada recarga.
A Perguntas Frequentes do CapSolver sobre uso responsável fornece orientações adicionais. O guia de raspagem da web do CapSolver aborda padrões de infraestrutura. Para plataformas protegidas pelo Cloudflare, a documentação do Turnstile fornece detalhes de implementação.
A coleta de dados públicos de mídia social para agentes de IA exige lidar com sistemas de proteção diversos em diferentes plataformas, mantendo limites éticos rigorosos. CapSolver fornece a infraestrutura de resolução de verificação que permite acesso contínuo a dados públicos de redes sociais — resolvendo reCAPTCHA e Cloudflare Turnstile em 3-12 segundos.
A coleta de informações publicadas é geralmente permitida na maioria das jurisdições. No entanto, os termos de serviço das plataformas podem restringir o acesso automatizado. Sempre consulte um advogado para o seu caso específico.
Plataformas com proteção padrão de CAPTCHA: Reddit (subreddits públicos), X/Twitter (tweets públicos), LinkedIn (perfis públicos), sites de avaliações (G2, Trustpilot, Capterra) e fóruns comunitários.
Dados públicos incluem: texto do post, métricas de engajamento (curtidas, compartilhamentos, comentários), horário de postagem, informações de perfil público do autor, hashtags e links de mídia. Mensagens privadas e campos de perfil não públicos nunca são coletados.
Aprenda arquitetura de raspagem web escalável em Rust com reqwest, scraper, raspagem assíncrona, raspagem de navegador headless, rotação de proxies e tratamento de CAPTCHA compatível.

Compare o Selenium vs Puppeteer para resolver CAPTCHA. Descubra benchmarks de desempenho, notas de estabilidade e como integrar o CapSolver para o máximo de sucesso.
