Como usar proxies com Google Colab e Jupyter

Como usar proxies com Google Colab e Jupyter

Configurando proxies no Google Colab e Jupyter

Certo, vamos direto ao ponto de executar proxies no Google Colab ou Jupyter — sem enrolação. Seja para coletar dados, contornar restrições geográficas ou apenas para ter um pouco de privacidade, os proxies são seus aliados. Mas há um jeito especial de fazer isso direito, especialmente em plataformas como Colab e Jupyter, que às vezes têm suas peculiaridades.


Por que usar proxies com Colab e Jupyter?

Cenário Benefício do Proxy
Raspagem da web Evitando proibições de IP
Acessando APIs bloqueadas geograficamente Desbloqueando conteúdo
Pesquisa com anonimato Mascarando sua pegada digital

Escolhendo sua fonte de proxy

Agora, antes de você sair por aí vasculhando a internet em busca de proxies, vamos facilitar. Rolo de Proxy é o seu parceiro aqui — oferece proxies novos e gratuitos prontos para uso. Mais sobre eles em breve.


Tipos de Proxies

Tipo Descrição Uso típico
HTTP/HTTPS Proxies da web padrão Raspagem da web, rastreamento
SOCKS4/SOCKS5 Nível inferior, suporta mais protocolos Streaming, P2P, etc.
Girando Muda de IP com frequência Evitando limites de taxa
residencial IPs de usuários reais, mais difíceis de bloquear Raspagem, automação

Para a maioria dos trabalhos com Colab/Jupyter, proxies HTTP/HTTPS resolverão o problema.


Obtendo proxies gratuitos do ProxyRoller

  1. Vá para Rolo de Proxy.
  2. Clique no botão “Obter proxies gratuitos”.
  3. Copie a lista de proxy - parece algo como ip:port.

Um conselho australiano: teste seus proxies, porque proxies gratuitos podem ser inconstantes, como o clima de Melbourne.


Configurando Proxies no Google Colab

O Colab é executado em uma máquina virtual, então você precisa instruir o Python (e bibliotecas relacionadas) a usar um proxy. Veja como fazer isso, no estilo Arvid:

Configurando Proxy HTTP/HTTPS para requests

import requests

proxies = {
    'http': 'http://username:password@proxy_ip:proxy_port',
    'https': 'http://username:password@proxy_ip:proxy_port'
}

response = requests.get('https://httpbin.org/ip', proxies=proxies)
print(response.json())
  • Se o seu proxy não precisar de autenticação, deixe de fora username:password@.

Configurando proxies globalmente no notebook

Às vezes, você quer que tudo passe pelo proxy. Defina variáveis de ambiente:

import os

os.environ['http_proxy'] = 'http://proxy_ip:proxy_port'
os.environ['https_proxy'] = 'http://proxy_ip:proxy_port'

Agora, qualquer biblioteca que respeite essas variáveis de ambiente (requests, urllib, etc.) usará o proxy.

Proxies rotativos

Se você estiver lutando como um dingo em uma granja de galinhas, gire seus proxies para evitar proibições:

import random

proxy_list = [
    'http://ip1:port1',
    'http://ip2:port2',
    'http://ip3:port3'
]

def get_random_proxy():
    return {'http': random.choice(proxy_list), 'https': random.choice(proxy_list)}

for i in range(10):
    proxies = get_random_proxy()
    response = requests.get('https://httpbin.org/ip', proxies=proxies)
    print(response.json())

Configurando Proxies no Jupyter Notebook

Mais ou menos igual ao Colab, cara. O processo é o seguinte:

Para requests e urllib

import requests

proxies = {
    'http': 'http://proxy_ip:proxy_port',
    'https': 'http://proxy_ip:proxy_port'
}

response = requests.get('https://httpbin.org/ip', proxies=proxies)
print(response.json())

Para proxy de todo o sistema (Jupyter Kernel)

import os

os.environ['HTTP_PROXY'] = 'http://proxy_ip:proxy_port'
os.environ['HTTPS_PROXY'] = 'http://proxy_ip:proxy_port'

Para Selenium (navegadores sem cabeça)

Se você estiver executando o Selenium no Jupyter (uma jogada um tanto poderosa):

from selenium import webdriver
from selenium.webdriver.common.proxy import Proxy, ProxyType

proxy_ip_port = 'proxy_ip:proxy_port'

chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument(f'--proxy-server={proxy_ip_port}')

driver = webdriver.Chrome(options=chrome_options)
driver.get('https://httpbin.org/ip')

Comparando métodos de proxy

Método Escopo Ferramentas/Bibliotecas Caso de uso
requests procurações Por solicitação solicitações, urllib3 Raspagem, chamadas de API
Variáveis de ambiente Global (sessão) Todas as bibliotecas (a maioria) Uso consistente de proxy
Proxy de selênio Automação do navegador selênio Automação/raspagem da web

Testando seu proxy

Sempre teste se seu proxy está funcionando. Caso contrário, você pode estar no equivalente digital de andar em círculos.

import requests

proxies = {
    'http': 'http://proxy_ip:proxy_port',
    'https': 'http://proxy_ip:proxy_port'
}

response = requests.get('https://httpbin.org/ip', proxies=proxies)
print("Proxy IP:", response.json())

Se o IP corresponder ao proxy, está tudo certo.


Armadilhas comuns (e soluções rápidas)

Emitir O que parece Como consertar
Tempo limite de conexão As solicitações travam, sem resposta Experimente um proxy diferente
403/407 Autenticação de proxy necessária Erro de autenticação Use nome de usuário/senha se necessário
Proxy não funciona no Colab Nenhuma alteração no IP, erros Verifique as variáveis de ambiente
Problemas de SSL Falha no handshake SSL Use HTTP ou defina verify=False

Recursos úteis


E pronto — não precisa lutar com um crocodilo para deixar seu proxy no ponto no Colab ou no Jupyter. Se precisar de proxies novos, lembre-se de que o ProxyRoller está sempre aberto e não morde.

Guerra Árvida

Guerra Árvida

Arquiteto de rede líder

Arvid Warral, um nativo do país queimado pelo sol, é o cérebro por trás da arquitetura de rede robusta e ágil da ProxyRoller. Com mais de duas décadas de experiência em segurança digital e gerenciamento de proxy, ele tem sido fundamental no desenvolvimento de sistemas que atendem às necessidades dinâmicas de privacidade e segurança de dados. A jornada de Arvid com a ProxyRoller começou como um tecnólogo apaixonado, e suas soluções inovadoras desde então impulsionaram a empresa para a vanguarda da indústria. Em sua função, ele está comprometido em garantir que as ofertas da ProxyRoller permaneçam de ponta e confiáveis para usuários em todo o mundo.

Comentários (0)

Ainda não há comentários aqui, você pode ser o primeiro!

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *