# 503 Service Unavailable ao fazer scraping: o que significa e como corrigir

> 503 Service Unavailable via proxy: sobrecarga do alvo, manutenção, página de desafio ou segmentação muito restrita. Saiba como identificar e resolver.

- URL: https://crawlrelay.com/pt/docs/errors/503-service-unavailable/
- Última atualização: 2026-10-13
- Publisher: CrawlRelay (https://crawlrelay.com)

Código de status HTTP (5xx, erro do servidor): a mensagem exata em cada ferramenta, as causas prováveis em ordem, e o conserto que funciona.

**Resposta rápida — O que 503 Service Unavailable significa com um proxy?**

**503 Service Unavailable** significa que o servidor não pode atender a requisição agora, por sobrecarga, manutenção ou uma regra de proteção. Via proxies residenciais do CrawlRelay, leia o cabeçalho `Retry-After` e o corpo da resposta: um 503 por manutenção ou sobrecarga se resolve com o tempo, já uma página de desafio indica filtro contra tráfego automatizado e você deve desacelerar.

## 503 Service Unavailable de relance

| Atributo | Valor |
| --- | --- |
| Erro | 503 Service Unavailable |
| Tipo | Código de status HTTP (5xx, erro do servidor) |
| Enviado por | O site alvo, sua CDN ou o proxy quando não tem saída disponível |
| Definido em | RFC 9110, section 15.6.4 (Retry-After: section 10.2.3) |
| Tentar novamente? | Sim, após Retry-After ou um backoff |
| Primeira verificação | Cheque o cabeçalho Retry-After e se o corpo é uma página de desafio da CDN |

## O que 503 Service Unavailable significa?

RFC 9110 define 503 como condição temporária. O servidor está ativo mas não quer ou não pode atender a requisição agora, e pode dizer quando voltar via `Retry-After`.

Na prática, três situações compartilham esse código: site realmente sobrecarregado ou em manutenção, CDN exibindo página de desafio a tráfego automatizado e gateway proxy sem saída para segmentação muito restrita. O corpo e os cabeçalhos diferenciam.

## Como a 503 aparece em Python, curl, Node.js e navegadores?

A mesma falha aparece de forma diferente em cada ferramenta. Estas são as mensagens para buscar nos seus logs:

- **Python requests / httpx:** `status_code == 503`, às vezes com `Retry-After`
- **Scrapy:** tenta de novo por padrão (503 está em `RETRY_HTTP_CODES`)
- **curl:** `HTTP/2 503`, frequentemente com cabeçalho `server:` indicando a CDN
- **Navegadores:** página de manutenção ou cheque intersticial

## O que causa a 503?

Mais provável inicialmente:

- **Sobrecarga ou manutenção** no site alvo, normalmente com `Retry-After`.
- **Página de desafio** servida por uma CDN para clientes que quer verificar, com status 503 ou 403.
- **Sua própria carga**, quando seu crawler gera grande parte do tráfego do site.
- **Segmentação restrita**, por exemplo uma cidade pequena, quando nenhuma saída está disponível no momento.
- **Queda upstream** na CDN ou região cloud usada pelo site.

## Como diagnosticar a 503 passo a passo?

1. Leia `Retry-After` e o cabeçalho `server`, depois observe o título HTML do corpo.
2. Carregue a página num navegador do mesmo país para ver o que uma pessoa vê.
3. Pause seu crawler por alguns minutos e teste uma requisição: se passar, sua carga foi o gatilho.
4. Amplie a segmentação para o nível país e compare.

*Teste a URL com erro usando curl (porta HTTP, modo verbose)*

```bash
# Use the URL that fails; with https://api.ipify.org instead, you test the gateway alone.
# "HTTP/1.1 200 Connection established" first, then the site's own status: the site answered.
curl -v -x http://USERNAME:PASSWORD@gw.crawlrelay.com:7777 https://TARGET_URL

# Same test through the SOCKS5 port, with DNS resolved at the exit
curl -v --socks5-hostname gw.crawlrelay.com:7778 --proxy-user USERNAME:PASSWORD https://TARGET_URL
```

## Como corrigir a 503?

- **Espere e tente de novo** usando o atraso `Retry-After` ou backoff exponencial.
- **Reduza sua carga** nesse host: menos requisições paralelas, atrasos maiores, cache.
- **Considere a página de desafio como sinal de parada** para essa velocidade. Não use soluções de CAPTCHA ou disfarce de navegador para passar; diminua o ritmo e contate o site se precisar de acesso.
- **Amplie a segmentação** quando o 503 vem com filtro restrito de cidade.

*Python: tentar novamente com Retry-After, backoff exponencial e jitter*

```python
import random
import time

import requests

PROXY = "http://USERNAME:PASSWORD@gw.crawlrelay.com:7777"
PROXIES = {"http": PROXY, "https": PROXY}
RETRY_STATUSES = {429, 502, 503, 504}


def fetch(url, attempts=5, timeout=(10, 30)):
    for attempt in range(attempts):
        try:
            r = requests.get(url, proxies=PROXIES, timeout=timeout)
        except (requests.exceptions.ConnectionError, requests.exceptions.Timeout):
            r = None  # dropped exit, reset or timeout: a new connection gets a new exit
        if r is not None and r.status_code not in RETRY_STATUSES:
            return r
        retry_after = r.headers.get("Retry-After", "") if r is not None else ""
        if retry_after.isdigit():
            wait = int(retry_after)
        else:
            wait = min(60, 2 ** attempt) + random.uniform(0, 1)
        time.sleep(wait)
    raise RuntimeError("giving up on %s after %d attempts" % (url, attempts))
```

## Devo tentar novamente após a 503?

Tente de novo um 503, mas com paciência. Use `Retry-After` se presente; senão faça backoff exponencial de alguns segundos até um ou dois minutos. Se um host responde 503 para a maioria das requisições por mais de alguns minutos, pause ele totalmente e volte depois. Registre páginas de desafio separadamente de quedas reais nos seus logs.

## Como 503 Service Unavailable se aplica ao CrawlRelay?

CrawlRelay envia sua requisição por um IP residencial escolhido para combinar com sua segmentação. Segmentação por país usa o maior conjunto de saídas; por cidade é mais restrita. Se 503s ocorrem só com filtro de cidade, teste a mesma requisição por país antes de mudar qualquer outra coisa.

Gateway: `gw.crawlrelay.com`, porta 7777 (HTTP, HTTPS via CONNECT) e porta 7778 (SOCKS5). Formato do usuário: `USERNAME-country-{cc}-state-{state}-city-{city}-zip-{zip}-asn-{asn}-session-{id}-ttl-{minutes}`. Relacionado: [429 Too Many Requests](https://crawlrelay.com/pt/docs/errors/429-too-many-requests/) · [502 Bad Gateway](https://crawlrelay.com/pt/docs/errors/502-bad-gateway/) · [504 Gateway Timeout](https://crawlrelay.com/pt/docs/errors/504-gateway-timeout/).

## 503 Service Unavailable: perguntas que desenvolvedores fazem

### Por que recebo 503 só via proxy e não da minha casa?

Ou o site trata seu tráfego proxy de forma diferente, muitas vezes mostrando página de desafio, ou sua segmentação é tão restrita que saídas são escassas. Compare o corpo da resposta nos dois casos. Página de desafio é para desacelerar; mensagem curta de proxy com segmentação restrita indica ampliar o filtro de localização.

### 503 é o mesmo que ser bloqueado?

Não. Um 503 real é temporário e se resolve com o tempo. Página de desafio servida com 503 é filtro e geralmente indica ritmo ou padrão automatizado. Reduza concorrência e adicione atrasos. Se o site não quiser acesso automatizado, respeite e busque API ou dados licenciados.

### Quantas vezes devo tentar um 503?

Três a cinco tentativas com backoff exponencial é um teto razoável para um URL. Depois disso, pause o host inteiro em vez de tentar URLs isoladamente, pois site em problema não melhora com tentativas. Registre o host e horário para retomar depois.

## Outros erros de proxy nesta referência

- [401 Unauthorized vs 407](https://crawlrelay.com/pt/docs/errors/401-unauthorized/)
- [403 Forbidden](https://crawlrelay.com/pt/docs/errors/403-forbidden/)
- [407 Proxy Authentication Required](https://crawlrelay.com/pt/docs/errors/407-proxy-authentication-required/)
- [429 Too Many Requests](https://crawlrelay.com/pt/docs/errors/429-too-many-requests/)
- [502 Bad Gateway](https://crawlrelay.com/pt/docs/errors/502-bad-gateway/)
- [503 Service Unavailable](https://crawlrelay.com/pt/docs/errors/503-service-unavailable/)
- [504 Gateway Timeout](https://crawlrelay.com/pt/docs/errors/504-gateway-timeout/)
- [Cannot connect to proxy (ProxyError)](https://crawlrelay.com/pt/docs/errors/cannot-connect-to-proxy/)
- [Connection reset by peer (ECONNRESET)](https://crawlrelay.com/pt/docs/errors/connection-reset/)
- [ERR_PROXY_CONNECTION_FAILED](https://crawlrelay.com/pt/docs/errors/err-proxy-connection-failed/)
- [ERR_TUNNEL_CONNECTION_FAILED](https://crawlrelay.com/pt/docs/errors/err-tunnel-connection-failed/)
- [Read timed out (ReadTimeout)](https://crawlrelay.com/pt/docs/errors/read-timeout/)
- [SOCKS5 proxy errors](https://crawlrelay.com/pt/docs/errors/socks5-proxy-errors/)
- [SSL: CERTIFICATE_VERIFY_FAILED](https://crawlrelay.com/pt/docs/errors/ssl-certificate-verify-failed/)
- [SSL: WRONG_VERSION_NUMBER](https://crawlrelay.com/pt/docs/errors/ssl-wrong-version-number/)

**Proxies residenciais com documentação que cobre os casos de falha** CrawlRelay proxies residenciais a partir de US$ 0,50/GB, tráfego que nunca expira. [Veja os preços](https://crawlrelay.com/pt/pricing/) · [Início rápido](https://crawlrelay.com/pt/docs/)

---

CrawlRelay: CrawlRelay é um serviço proxy residencial rotativo e proxies móveis 4G/5G para desenvolvedores, para scrapers e pipelines de dados de IA: tráfego pay-as-you-go que não expira a partir de US$ 0,50/GB, pago com cripto, sem upload de documento. Sem KYC — sem ID, sem selfie, sem documentos. Pague com cripto.
