Python
requests, httpx, aiohttp, concorrência assíncrona
Docs · gateway, formato de usuário, sessões, erros, limites
Tudo que precisa para enviar a primeira requisição e a referência para consultar depois: parâmetros de segmentação, regras de sessão, códigos de erro e limites.
Resposta rápida
Como me conecto aos proxies CrawlRelay?
Aponte qualquer cliente HTTP para http://USERNAME:[email protected]:7777 ou SOCKS5 na porta 7778. CrawlRelay, um serviço developer-first de proxy residencial, lê segmentação e sessões do usuário: USERNAME-country-us-city-new_york-session-job1-ttl-30. Tráfego residencial custa US$ 1,50 por 1 GB e US$ 0,50/GB a partir de 50 GB. Pagar com cripto, sem KYC.
| Host do gateway | gw.crawlrelay.com |
|---|---|
| Porta HTTP / HTTPS | 7777 (sites HTTPS via CONNECT) |
| Porta SOCKS5 | 7778 (use socks5h:// para resolver DNS na saída) |
| Autenticação | Usuário e senha do seu plano ou de um subusuário, ou uma whitelist de IPs (até 10 IPs) |
| Formato do nome de usuário | USERNAME-country-{cc}-state-{state}-city-{city}-zip-{zip}-asn-{asn}-session-{id}-ttl-{minutes} |
| Duração da sessão | até 30 minutos; o IP pode mudar antes |
| URL para teste | https://api.ipify.org retorna o IP de saída em texto simples |
| API de gerenciamento | https://crawlrelay.com/api/v1, Chaves API que você pode revogar a qualquer momento (documentação da API) |
Copie o nome de usuário e a senha do seu painel, e rode um destes. Cada um imprime o endereço IP que o site vê, que geralmente muda a cada execução.
curl -x http://USERNAME-country-us:[email protected]:7777 https://api.ipify.orgimport requests
proxy = "http://USERNAME-country-us:[email protected]:7777"
r = requests.get("https://api.ipify.org", proxies={"http": proxy, "https": proxy}, timeout=(10, 30))
print(r.text)import { ProxyAgent, fetch } from "undici";
const dispatcher = new ProxyAgent("http://USERNAME-country-us:[email protected]:7777");
const res = await fetch("https://api.ipify.org", { dispatcher });
console.log(await res.text());Comece com o nome de usuário do seu painel e adicione parâmetros com hífens, na ordem do formato acima. Cada parâmetro é opcional. Os valores devem estar em minúsculas, e nomes de cidade usam underscores (new_york, sao_paulo). A disponibilidade das cidades varia.
| Meta | Nome de usuário |
|---|---|
| Qualquer país, rotacionando a cada conexão | USERNAME |
| Alemanha | USERNAME-country-de |
| Paris | USERNAME-country-fr-city-paris |
| Texas | USERNAME-country-us-state-tx |
| Um código postal | USERNAME-country-us-zip-10001 |
| Um provedor de internet | USERNAME-country-us-asn-7922 |
| Mesma IP por até 30 minutos | USERNAME-country-gb-session-abc123-ttl-30 |
Se sua senha contém @, : ou /, codifique no formato URL antes de colocar em uma URL de proxy. A página do erro 407 mostra como.
Um nome de usuário sem session- recebe um IP do pool a cada nova conexão TCP, geralmente um diferente. Um nome de usuário com session-<id>-ttl-<minutes> mantém o mesmo IP de saída para essa sessão até o TTL acabar ou o dispositivo residencial ficar offline.
O guia de sessões explica a reutilização de conexões em cada biblioteca.
Primeiro descubra quem respondeu: o gateway ou o site atrás dele.
| Você vê | Enviado por | Causa usual | O que fazer |
|---|---|---|---|
| 407 | Gateway | Credenciais erradas ou não codificadas | Corrija o nome de usuário ou senha; nunca tente novamente sem analisar |
| ERR_TUNNEL_CONNECTION_FAILED | Navegador | CONNECT recusado (geralmente um 407 oculto) | Passe as credenciais como campos, não na URL do servidor |
| 502 / 504 | Gateway ou CDN | Saída interrompida, destino lento ou fora do ar | Tente novamente em uma nova conexão, com limite |
| 403 | Site | País errado, cabeçalhos, limite ou recusa | Teste no navegador; diminua a velocidade ou respeite a recusa |
| 429 | Site | Limite de taxa | Respeite o Retry-After; reduza a concorrência por host |
| SSL: WRONG_VERSION_NUMBER | Seu cliente | https:// antes da URL do proxy | Use http:// para a URL do proxy |
Todas as entradas de 15 estão na referência de erros.
No painel, ou via REST API em https://crawlrelay.com/api/v1 com uma chave de API. Chaves API que você pode revogar a qualquer momento. As principais tarefas:
requests, httpx, aiohttp, concorrência assíncrona
Middleware, sessões por requisição, AutoThrottle
Python e Node.js, proxy por contexto
Flag mais page.authenticate()
Proxy autenticado via encaminhador local
undici, axios, got, SOCKS5
HTTP, SOCKS5, depuração com -v
Reuso de conexão, TTL, um IP por fluxo
Limites por host, throughput e recuo
CrawlRelay publica guias prontos para copiar e colar para Python (requests, httpx, aiohttp), Scrapy, Playwright, Puppeteer, Selenium, Node.js e curl, uma referência de 15 erros de proxy e uma referência REST API com exemplos em curl, Python e Node.js. Cada exemplo usa o host real do gateway e portas, e cada snippet é verificado quanto à sintaxe antes da publicação.
Não. A autenticação por usuário e senha funciona de qualquer máquina, então você pode rodar o mesmo scraper em um laptop, servidor ou CI runner. Se preferir, adicione até 10 IPs a uma allowlist. Guarde as credenciais em variáveis de ambiente ou gerenciador de segredos, nunca no repositório.
Ou seu nome de usuário contém um ID de sessão, que mantém um IP propositalmente, ou seu cliente reutiliza uma conexão keep-alive. A rotação acontece a cada nova conexão. Remova a parte da sessão ou abra uma nova conexão por requisição, conforme mostrado no guia de sessões.
Use a porta HTTP (7777) para web scraping: toda biblioteca e navegador a suportam com autenticação, e sites HTTPS funcionam via túneis CONNECT. Use SOCKS5 (7778) para ferramentas que só funcionam com SOCKS, com socks5h:// para que o DNS seja resolvido na saída.
Solicite https://api.ipify.org através do proxy para obter o IP, depois consulte um banco de dados de geolocalização confiável. Bancos de dados podem divergir para alguns IPs, especialmente móveis, então confira o conteúdo servido pelo alvo: moeda, idioma e resultados locais são o que importam para seus dados.
Os planos são cobrados por GB, não por requisição, e os limites que você primeiro encontrará são os próprios do alvo. Controle cada alvo separadamente e diminua o ritmo ao receber respostas 429 e 503. Se planejar um crawl muito grande, comunique o suporte em [email protected] antes.
A partir de US$ 0,50/GB · sem KYC
Comece agora