Fazer proxy setup no Selenium parece simples até você levar o seu scraper ao limite real: 50 requisições e o site te bane, troca de IP e ainda assim o fingerprint te entrega, usa proxy datacenter e o Cloudflare ri na sua cara. A solução que realmente funciona em 2026 é combinar Selenium com um proxy 4G móvel, aquele que roda em um modem LTE físico com um chip de operadora polonesa. Neste guia você vai aprender exatamente como fazer isso. Mais especificamente, você vai ver:
- Como configurar proxy HTTP e SOCKS5 no Selenium com ChromeDriver e Firefox
- Como usar rotação de IP em 2 segundos via API para nunca repetir o mesmo endereço
- Erros comuns de configuração e como corrigi-los antes de perder horas de scraping
- Por que proxies 4G de modem físico eliminam bloqueios que datacenter e residencial não resolvem

Por que usar proxy 4G no Selenium
Quando você roda Selenium sem proxy, o site vê seu IP de datacenter ou de casa e sabe na hora que é automação. Mas tem um nível acima do proxy residencial que poucos scrapers conhecem: o proxy móvel 4G em modem físico. Em nossos testes internos, endereços de IP móvel passam por sistemas anti-bot como Cloudflare, PerimeterX e Akamai com taxa de bloqueio próxima de zero.
O motivo técnico é simples. Operadoras de telefonia usam CGNAT, o que significa que centenas de usuários reais compartilham o mesmo bloco de IPs. Quando o sistema anti-bot detecta tráfego vindo daquele IP, ele não pode bloquear sem derrubar usuários legítimos. Isso cria uma proteção natural para o seu scraper.
A infraestrutura da Proxy Poland usa modems LTE 4G/5G físicos em território polonês com chips de operadoras locais. Cada porta que você aluga é um modem real, não um pool virtual. Você obtém IPs que parecem exatamente com um smartphone navegando na web.
- Sites como Google, Instagram, Amazon e Allegro tratam esses IPs como tráfego humano comum
- Sem limite de banda, planos por tempo fixo a partir de $11 por dia
- Rotação de IP em 2 segundos via chamada de API, sem reconectar o Selenium
- Suporte a HTTP, SOCKS5 e OpenVPN nos mesmos proxies
Conclusão principal: se você ainda usa proxies de datacenter no Selenium e fica sendo bloqueado, o problema não é o código, é o tipo de IP.
HTTP vs SOCKS5: qual protocolo usar no Selenium
Antes de configurar qualquer coisa, você precisa escolher o protocolo certo. O Selenium suporta os dois, mas eles se comportam diferente em scraping real.
Proxy HTTP no Selenium
O proxy HTTP intercepta apenas requisições HTTP e HTTPS. É o mais simples de configurar no ChromeDriver usando as opções nativas. A latência costuma ser um pouco menor para scraping de páginas comuns porque o handshake é direto. Use HTTP quando você está raspando sites padrão sem WebSockets ou conexões persistentes.
Proxy SOCKS5 no Selenium
SOCKS5 roteia todo o tráfego TCP, incluindo WebSockets, DNS e requisições não-HTTP. Para scrapers que interagem com Single Page Applications, fazem login em redes sociais ou lidam com CDNs complexas, SOCKS5 é mais confiável. O overhead é mínimo em conexões de 4G moderno, normalmente menos de 20ms adicional.
- Use HTTP para scraping simples de e-commerce, SEO e coleta de preços
- Use SOCKS5 para automação de redes sociais (Instagram, TikTok), logins e SPAs
- Use OpenVPN quando precisar rotear toda a máquina, não apenas o browser
Os proxies da Proxy Poland suportam os três protocolos na mesma porta. Você pode alternar entre HTTP e SOCKS5 sem mudar credenciais. Para verificar se o seu IP está sendo exposto corretamente depois da configuração, use a ferramenta de verificação de IP antes de rodar o scraper em produção.
Proxy setup no Selenium com ChromeDriver
O ChromeDriver aceita proxy via ChromeOptions. Abaixo está o método mais confiável para configurar tanto HTTP quanto SOCKS5 com autenticação de usuário e senha.
Configuração HTTP com autenticação
O Chrome não suporta autenticação de proxy diretamente via flags de linha de comando quando há usuário e senha. A solução é usar uma extensão inline ou o pacote selenium-wire. Veja o método com extensão, que funciona sem dependências extras:
- Instale o Selenium:
pip install selenium - Crie o arquivo de extensão de proxy com seu usuário e senha da Proxy Poland
- Carregue a extensão nas opções do Chrome antes de iniciar o driver
- Verifique o IP ativo acessando a ferramenta de IP no início do script
O código base para HTTP com autenticação fica assim:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import zipfile, os
PROXY_HOST = "seu-host.proxies.com"
PROXY_PORT = "porta"
PROXY_USER = "usuario"
PROXY_PASS = "senha"
manifest_json = "..." # manifest v2 padrão
background_js = f"""
var config = {{ mode: 'fixed_servers', rules: {{ singleProxy: {{ scheme: 'http', host: '{PROXY_HOST}', port: parseInt('{PROXY_PORT}') }}, bypassList: [] }} }};
chrome.proxy.settings.set({{value: config, scope: 'regular'}}, function() {{}});
function callbackFn(details) {{ return {{ authCredentials: {{ username: '{PROXY_USER}', password: '{PROXY_PASS}' }} }}; }}
chrome.webRequest.onAuthRequired.addListener(callbackFn, {{urls: ['<all_urls>']}}, ['blocking']);
"""
pluginfile = 'proxy_auth.zip'
with zipfile.ZipFile(pluginfile, 'w') as zp:
zp.writestr('manifest.json', manifest_json)
zp.writestr('background.js', background_js)
options = Options()
options.add_extension(pluginfile)
driver = webdriver.Chrome(options=options)
Configuração SOCKS5 no Chrome
Para SOCKS5 sem autenticação via flags nativas: options.add_argument('--proxy-server=socks5://host:porta'). Com autenticação, use o mesmo método de extensão acima trocando 'http' por 'socks5' no scheme.
Conclusão principal: nunca use --proxy-server para proxies com senha no Chrome. Ele simplesmente ignora a autenticação e você passará horas achando que o proxy está com problema.

Configurando proxy no Selenium com Firefox
O Firefox via GeckoDriver tem suporte nativo a proxy com autenticação usando FirefoxProfile e preferências diretas. É mais simples que o Chrome para esse caso.
- Importe
webdrivereFirefoxOptionsdo Selenium - Crie um objeto
FirefoxOptions - Defina as preferências de proxy usando
options.set_preference - Para SOCKS5 com autenticação, use o
wireou a abordagem de perfil com extensão FoxyProxy
O bloco de configuração HTTP para Firefox:
from selenium import webdriver
from selenium.webdriver.firefox.options import Options
options = Options()
options.set_preference('network.proxy.type', 1)
options.set_preference('network.proxy.http', 'seu-host.proxies.com')
options.set_preference('network.proxy.http_port', 3128)
options.set_preference('network.proxy.ssl', 'seu-host.proxies.com')
options.set_preference('network.proxy.ssl_port', 3128)
driver = webdriver.Firefox(options=options)
Para autenticação no Firefox, adicione um handler via driver.get com intercepção de alerta de login, ou use o pacote selenium-wire que é transparente para ambos os browsers. O selenium-wire injeta um proxy local que gerencia as credenciais automaticamente.
Quer confirmar que não há vazamento de DNS depois da configuração? Rode o teste de vazamento de DNS logo após iniciar o Firefox com o proxy ativo. Isso é especialmente importante se você está usando SOCKS5 no Firefox com resolução de DNS remota.
Uma vantagem do Firefox para scraping é o controle fino sobre user-agent e headers via preferências. Combine isso com um IP 4G real e o site não tem como distinguir seu scraper de um celular navegando normalmente.
Rotação de IP via API dentro do Selenium
Ter um proxy 4G estático já é ótimo. Mas a rotação de IP durante o scraping é o que separa um scraper amador de um profissional. A Proxy Poland permite trocar o IP do modem em 2 segundos via uma chamada de API simples, sem desconectar o driver do Selenium.
O fluxo é este: você raspa N páginas com o IP atual, chama a API de rotação, aguarda 2 a 3 segundos e continua o scraping com um IP completamente novo. O driver Selenium permanece aberto, a sessão do browser continua ativa, apenas o IP externo muda.
- Raspe o lote de páginas definido (ex: 20 páginas por IP)
- Faça uma requisição GET para o endpoint de rotação:
http://painel.proxypPoland.com/api/rotate?port=PORTA&key=SUA_KEY - Aguarde 2 segundos com
time.sleep(2) - Opcionalmente, verifique o novo IP antes de continuar
- Retome o loop de scraping normalmente
Em Python, a chamada de rotação é uma linha: requests.get(rotate_url). Você pode encapsular isso em um decorator ou em um contador de requisições dentro do seu loop principal.
Para scraping de alta frequência, a rotação automática está disponível, onde o modem troca o IP em intervalos configuráveis sem nenhuma chamada manual. Isso funciona bem para scrapers multi-thread onde controlar o momento exato da rotação seria complexo.
Conclusão principal: rodar mais de 30 requisições seguidas com o mesmo IP em sites modernos é suficiente para acionar sistemas de detecção comportamental. Rotacione com frequência.
Erros comuns no proxy setup Selenium e como resolver
Configurar proxy no Selenium tem algumas armadilhas que custam horas de debug. Aqui estão os erros mais frequentes que vemos em fóruns e como resolvê-los de forma definitiva.
Erro 1: proxy configurado mas IP não muda
O Chrome pode estar ignorando o proxy se o site está na lista de bypass. Verifique se não há --proxy-bypass-list nas opções. Também confirme que o endereço do proxy não contém espaços ou caracteres especiais nas credenciais.
Erro 2: ERR_PROXY_CONNECTION_FAILED
Esse erro aparece quando a porta do proxy está bloqueada pelo firewall local ou quando as credenciais estão erradas. Teste a conexão primeiro com curl -x http://usuario:senha@host:porta https://httpbin.org/ip no terminal. Se o curl funcionar e o Selenium não, o problema é na autenticação do Chrome.
Erro 3: velocidade muito baixa com SOCKS5
Se você está usando SOCKS5 e o scraping está lento, o problema provavelmente é resolução de DNS local. O Chrome por padrão resolve DNS localmente mesmo com SOCKS5. Para forçar resolução remota, adicione --host-resolver-rules=MAP * ~NOTFOUND , EXCLUDE host-do-proxy nas flags. Use o teste de velocidade do proxy para medir a latência real antes e depois.
- Sempre teste o proxy fora do Selenium primeiro, com curl ou requests Python
- Verifique os headers HTTP que o browser envia usando a ferramenta de análise de headers
- Use headless mode com cuidado: alguns sites detectam headless Chrome mesmo com proxy 4G
- Se usar headless, adicione
--disable-blink-features=AutomationControllednas opções
Um erro que muitos cometem é misturar configuração de proxy no sistema operacional com configuração no Selenium. Se o SO já tem um proxy configurado, o ChromeDriver pode ignorar as opções do código. Sempre configure o proxy exclusivamente dentro do objeto de opções do Selenium.

Conclusão
Fazer o proxy setup no Selenium corretamente envolve três decisões: escolher o protocolo certo (HTTP para scraping simples, SOCKS5 para SPAs e redes sociais), configurar autenticação sem depender das flags nativas do Chrome, e usar um tipo de IP que sistemas anti-bot não consigam bloquear em massa. Proxies 4G de modem físico resolvem esse último ponto de forma definitiva, porque os IPs aparecem como tráfego de celular real, cobertos pelo CGNAT da operadora.
A combinação de Selenium com rotação de IP via API a cada 20 ou 30 requisições é o padrão que scrapers profissionais usam em 2026 para coletar dados de Google, Amazon, Allegro e redes sociais sem interrupções. E com planos a partir de $11 por dia e um trial gratuito de 1 hora sem cartão de crédito, você pode testar na sua aplicação real antes de qualquer compromisso. Pronto para eliminar os bloqueios do seu scraper de vez? Veja os planos da Proxy Poland e comece seu trial gratuito agora.
