🎯 Um navegador em nuvem personalizável e anti-detecção alimentado por Chromium desenvolvido internamente, projetado para rastreadores web e agentes de IA. 👉Experimente agora
De volta ao blog

Como Rotacionar Proxies em Python

Michael Lee
Michael Lee

Expert Network Defense Engineer

23-Sep-2025

Introdução
Rotacionar proxies em Python garante web scraping e automação estáveis e confiáveis. Usar um único IP pode resultar em bloqueios e limites de taxa. Este guia cobre 10 métodos práticos para rotacionar proxies de forma eficaz. Para uma solução mais rápida e simples, considere usar Scrapeless, que gerencia a rotação de proxies automaticamente.


1. Usando uma Lista de Proxies Manualmente

Conclusão: Alternar manualmente os proxies de uma lista ajuda a evitar detecções.

Passos:

  1. Prepare uma lista de proxies (proxies = ["http://ip:porta", ...]).
  2. Use random.choice(proxies) para selecionar um proxy para cada solicitação.
  3. Passe o proxy para requests ou httpx:
python Copy
import requests, random

proxies = ["http://111.111.111.111:8080", "http://222.222.222.222:8080"]
proxy = random.choice(proxies)
response = requests.get("https://example.com", proxies={"http": proxy, "https": proxy})
print(response.text)

Aplicação: Scraping em pequena escala ou testes em múltiplos endpoints sem bans.


2. Usando Rotação de Proxy com Sessão do Requests

Conclusão: Um objeto de sessão permite uso consistente de proxies em múltiplas solicitações.

Passos:

  1. Crie uma requests.Session().
  2. Atribua um proxy da sua lista para cada sessão.
python Copy
import requests, random

session = requests.Session()
proxies = ["http://111.111.111.111:8080", "http://222.222.222.222:8080"]
session.proxies.update({"http": random.choice(proxies), "https": random.choice(proxies)})
response = session.get("https://example.com")
print(response.status_code)

Aplicação: Ao fazer scraping de páginas que requerem sessões persistentes.


3. Usando Bibliotecas de Proxy de Terceiros

Conclusão: Bibliotecas como requests-ip-rotator simplificam a rotação de proxies.

Passos:

python Copy
# Exemplo com requests-ip-rotator
from requests_ip_rotator import ApiGatewaySession
session = ApiGatewaySession("https://example.com")
response = session.get("https://example.com")
print(response.text)

Aplicação: Melhor para APIs ou solicitações frequentes que requerem rotação de IP.


4. Rotacionando Proxies Usando Tor

Conclusão: O Tor fornece rotação gratuita de proxies através de circuitos.

Passos:

  1. Instale o Tor (sudo apt install tor) e a biblioteca Python stem.
  2. Conecte-se através do proxy SOCKS do Tor (127.0.0.1:9050).
  3. Troque o IP com comandos do Tor.
python Copy
import requests

proxies = {"http": "socks5h://127.0.0.1:9050", "https": "socks5h://127.0.0.1:9050"}
response = requests.get("https://example.com", proxies=proxies)
print(response.text)

Aplicação: Scraping de dados anônimos sem pagar por proxies.


5. Usando Provedores de Proxy Rotativos

Conclusão: Provedores pagos garantem alta confiabilidade e velocidade.

Passos:

  1. Assine um serviço como Luminati, ScraperAPI ou Scrapeless.
  2. Use seus endpoints com autenticação.
  3. Rotacione proxies automaticamente para cada solicitação.
python Copy
import requests

api_key = "SUA_CHAVE_API"
url = f"http://proxyprovider.com?api_key={api_key}&url=https://example.com"
response = requests.get(url)
print(response.text)

Aplicação: Projetos de scraping em larga escala com tempo de inatividade mínimo.


6. Rotação de Proxy no Selenium

Conclusão: A automação web requer rotação de proxies para evitar bans de IP.

Passos:

python Copy
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import random

proxies = ["111.111.111.111:8080", "222.222.222.222:8080"]
chrome_options = Options()
chrome_options.add_argument(f'--proxy-server={random.choice(proxies)}')
driver = webdriver.Chrome(options=chrome_options)
driver.get("https://example.com")

Aplicação: Navegação automatizada e testes com múltiplos IPs.


7. Rotacionando Proxies no Scrapy

Conclusão: O Scrapy suporta middleware para rotação de proxies.

Passos:

  1. Ative HttpProxyMiddleware.
  2. Defina uma lista de proxies em settings.py.
  3. Use o middleware para rotacionar por solicitação.
python Copy
DOWNLOADER_MIDDLEWARES = {
    'scrapy.downloadermiddlewares.httpproxy.HttpProxyMiddleware': 1,
}
PROXY_LIST = ['http://111.111.111.111:8080', 'http://222.222.222.222:8080']

Aplicação: Scraping em larga escala com aranhas do Scrapy.


8. Usando Rotação Assíncrona de Proxy com httpx

Conclusão: Bibliotecas assíncronas permitem solicitações concorrentes com múltiplos proxies.

python Copy
import httpx, asyncio, random

proxies = ["http://111.111.111.111:8080", "http://222.222.222.222:8080"]

async def fetch(url):
    proxy = random.choice(proxies)
    async with httpx.AsyncClient(proxies={"http": proxy, "https": proxy}) as client:
        response = await client.get(url)
        print(response.status_code)

asyncio.run(fetch("https://example.com"))

Aplicação: Scraping em alta velocidade para múltiplas URLs.


9. Rotação Automática de Proxy com Scrapeless

Conclusão: O Scrapeless gerencia a rotação de proxies automaticamente, simplificando o desenvolvimento.

Benefícios:

  • Sem gerenciamento manual da lista de proxies.
  • Integrado com scripts de raspagem em Python
  • Suporta alta concorrência e confiabilidade

Aplicação: Ideal tanto para iniciantes quanto para profissionais que buscam eficiência.


10. Proxies Rotativos com Variáveis de Ambiente

Conclusão: Altere dinamicamente a configuração do proxy usando variáveis de ambiente.

Passos:

  1. Armazene proxies no arquivo .env.
  2. Carregue e selecione aleatoriamente proxies nos scripts.
python Copy
import os, random
from dotenv import load_dotenv
import requests

load_dotenv()
proxies = os.getenv("PROXIES").split(",")
proxy = random.choice(proxies)
response = requests.get("https://example.com", proxies={"http": proxy, "https": proxy})

Aplicação: Útil para pipelines de raspagem configuráveis.


Resumo da Comparação

Método Facilidade de Uso Custo Escalabilidade Melhor Caso de Uso
Lista Manual Fácil Grátis Baixa Pequenos projetos
Sessão de Requests Fácil Grátis Média Sessões persistentes
Bibliotecas de Proxy Média Grátis/Pago Média Chamadas de API
Tor Média Grátis Baixa Raspagem anônima
Provedores Pagos Fácil Pago Alta Raspagem em larga escala
Selenium Média Grátis/Pago Média Tarefas de automação
Scrapy Média Grátis Alta Grandes projetos com aranha
Async httpx Difícil Grátis Alta Alta concorrência
Scrapeless Muito Fácil Pago Alta Solução tudo-em-um
Variáveis de Ambiente Média Grátis Média Pipelines configuráveis

Principais Conclusões

  • Proxies rotativos são essenciais para evitar bloqueios e manter a estabilidade da raspagem.
  • Python suporta muitos métodos, desde listas manuais até soluções assíncronas e pagas.
  • Scrapeless oferece o método de rotação mais fácil e mais confiável.

Perguntas Frequentes

Q1: Por que devo rotacionar proxies em Python?
Para evitar bans de IP, limites de taxa e garantir uma raspagem confiável.

Q2: Posso usar proxies gratuitos para rotação?
Sim, mas a confiabilidade e a velocidade podem ser baixas. Serviços pagos são recomendados para grandes projetos.

Q3: O Scrapeless requer codificação?
Codificação mínima é necessária; ele se integra perfeitamente com scripts em Python.

Q4: Posso rotacionar proxies no Selenium?
Sim, configurando as opções do navegador com diferentes servidores proxy.

Q5: Com que frequência devo rotacionar proxies?
Depende do volume de solicitações e das políticas do site-alvo.


Solução Recomendada

Para uma experiência sem complicações, experimente Scrapeless para lidar automaticamente com a rotação de proxies e se concentrar na coleta de dados em vez da gestão manual.


Referências

Na Scorretless, acessamos apenas dados disponíveis ao público, enquanto cumprem estritamente as leis, regulamentos e políticas de privacidade do site aplicáveis. O conteúdo deste blog é apenas para fins de demonstração e não envolve atividades ilegais ou infratoras. Não temos garantias e negamos toda a responsabilidade pelo uso de informações deste blog ou links de terceiros. Antes de se envolver em qualquer atividade de raspagem, consulte seu consultor jurídico e revise os termos de serviço do site de destino ou obtenha as permissões necessárias.

Artigos mais populares

Catálogo