Resposta rápida
Como descubro por que uma requisição com proxy falhou?
Primeiro descubra quem respondeu: o gateway do proxy (407, falhas CONNECT, alguns 502 e 504), o site (401, 403, 429, a maioria dos 503) ou seu próprio cliente (erros TLS e timeout). Depois, combine a mensagem exata com uma página abaixo. Esta referência cobre 15 erros que scrapers enfrentam com proxies residenciais CrawlRelay ou qualquer proxy HTTP ou SOCKS5, com código para corrigir cada um.
Qual erro estou vendo?
Encontre seu sintoma e abra a página para o diagnóstico completo.
| Sintoma | Enviado por | Tentar novamente? | Página |
|---|---|---|---|
407, 'Falha na conexão do túnel: 407' | Proxy | Não | 407 Proxy Authentication Required |
401 com WWW-Authenticate | Site | Não | 401 vs 407 |
403 página ou mensagem de firewall | Site | Uma vez, depois pare | 403 Forbidden |
429, frequentemente com Retry-After | Site | Sim, depois | 429 Too Many Requests |
502, 'CONNECT tunnel failed, response 502' | Proxy ou CDN | Sim, novo exit | 502 Bad Gateway |
503, página de manutenção ou desafio | Site ou CDN | Sim, com recuo | 503 Service Unavailable |
504 | Proxy ou CDN | Uma ou duas vezes | 504 Gateway Timeout |
net::ERR_TUNNEL_CONNECTION_FAILED | Navegador (proxy recusou CONNECT) | Após corrigir a causa | ERR_TUNNEL_CONNECTION_FAILED |
net::ERR_PROXY_CONNECTION_FAILED | Navegador (proxy inacessível) | Não | ERR_PROXY_CONNECTION_FAILED |
ProxyError: Unable to connect to proxy | Cliente Python | Depende da causa | Não foi possível conectar ao proxy |
[SSL: WRONG_VERSION_NUMBER] | Sua biblioteca TLS | Não | SSL: WRONG_VERSION_NUMBER |
CERTIFICATE_VERIFY_FAILED | Sua biblioteca TLS | Não | Falha na verificação do certificado |
ReadTimeout, 'Tempo de leitura esgotado' | Seu cliente | Sim, novo exit | Tempo de leitura esgotado |
ECONNRESET, 'conexão encerrada abruptamente', 'Conexão reiniciada pelo peer' | Rede | Sim, requisições seguras | Conexão reiniciada |
| 'Dependências ausentes para suporte SOCKS', erro curl 97 | Cliente ou servidor SOCKS | Depende | Erros SOCKS5 |
Todos os erros por tipo
Códigos de status HTTP
- 401 Unauthorized vs 407
- 403 Forbidden
- 407 Proxy Authentication Required
- 429 Too Many Requests
- 502 Bad Gateway
- 503 Service Unavailable
- 504 Gateway Timeout
Erros no navegador e cliente
Erros de conexão e TLS
Quais erros um scraper deve tentar novamente automaticamente?
Tente novamente o que pode mudar sozinho, e pare no que não pode:
- Tente com uma nova conexão: 502, 504, reinícios de conexão e tempos de leitura esgotados. Uma nova conexão normalmente obtém uma saída residencial diferente.
- Tente mais tarde, mais devagar: 429 e 503. Espere
Retry-Afterou faça backoff exponencial com jitter, e diminua a concorrência nesse host. - Tente uma vez, depois pare: 403. Uma tentativa em um novo IP separa um endereço sinalizado de uma regra do site.
- Nunca tente repetidamente sem sentido: 407, 401, erros TLS e proxies inacessíveis. São problemas de configuração.
O guia Python mostra uma política de retry que segue essas regras com o urllib3’s Retry.
Como registro erros para facilitar o debug?
Registre cinco campos para cada requisição que falhar: o host da URL, o código de status ou a classe da exceção, o ID da sessão se houver, o tempo para o primeiro byte e os primeiros 200 caracteres do corpo da resposta. O corpo mostra se a pagina de erro foi gerada por uma CDN, firewall ou proxy. Conte erros por host e por status a cada minuto: um salto em um host significa que o site mudou algo; um salto em todos os hosts significa problema na sua configuração ou rede.
Referência de erros: perguntas
Como saber se um erro vem do proxy ou do site?
Veja onde ocorreu. Erros na etapa CONNECT, mostrados pelo curl -v antes de qualquer handshake TLS, vêm do proxy: 407, ou 502 ou 504 no CONNECT. Status que aparecem depois do handshake TLS, com os cabeçalhos e HTML do site, vêm do site. Erros do cliente, como timeouts e falhas TLS, vêm do seu código ou rede.
Pedidos com falha são cobrados?
O tráfego é contado em bytes trafegados pelo gateway, então uma resposta de erro que nunca chegou ao site, como 407, quase não gera tráfego. Uma página de bloqueio do site é uma resposta normal e tem tamanho como qualquer página. Reduza ambos corrigindo erros de configuração cedo e desacelerando em 403 e 429.
Qual é a taxa normal de erro para um scraper usando proxies residenciais?
Depende dos alvos. Pesquisa Proxyway 2026 mediu uma taxa média de sucesso de 99,28% em redes de proxy residencial, mas 74,43% em alvos reais protegidos como Amazon, Google e Instagram. Meça seus próprios alvos e monitore a taxa com o tempo: mudança súbita importa mais que o número absoluto.