Come utilizzare i proxy con Google Colab e Jupyter

Come utilizzare i proxy con Google Colab e Jupyter

Impostazione dei proxy in Google Colab e Jupyter

Bene, andiamo dritti al punto: come gestire i proxy in Google Colab o Jupyter? Senza perdere tempo. Che si tratti di estrarre dati, aggirare le restrizioni geografiche o semplicemente desiderare un po' di privacy, i proxy sono i tuoi compagni di fiducia. Tuttavia, bisogna saperlo fare bene, soprattutto su piattaforme come Colab e Jupyter, che a volte hanno le loro peculiarità.


Perché utilizzare i proxy con Colab e Jupyter?

Scenario Vantaggio del proxy
Web scraping Evitare i divieti IP
Accesso alle API bloccate geograficamente Sblocco dei contenuti
Ricerca con anonimato Mascherare la tua impronta digitale

Scegliere la fonte del proxy

Ora, prima di addentrarci nei meandri di Internet alla ricerca di proxy, rendiamo le cose più semplici. ProxyRoller è il tuo compagno qui: offre proxy nuovi e gratuiti, pronti all'uso. Maggiori informazioni tra poco.


Tipi di proxy

Tipo Descrizione Utilizzo tipico
HTTP/HTTPS Proxy web standard Web scraping, crawling
SOCKS4/SOCKS5 Di livello inferiore, supporta più protocolli Streaming, P2P, ecc.
Rotante Cambia frequentemente IP Evitare i limiti di velocità
Residenziale IP utente reali, più difficili da bloccare Scraping, automazione

Per la maggior parte del lavoro Colab/Jupyter, i proxy HTTP/HTTPS saranno sufficienti.


Ottenere proxy gratuiti da ProxyRoller

  1. Vai a ProxyRoller.
  2. Fare clic sul pulsante "Ottieni proxy gratuiti".
  3. Copia l'elenco dei proxy: assomiglia a qualcosa del genere ip:port.

Un consiglio australiano: prova i tuoi proxy, perché quelli gratuiti possono essere incostanti, come il meteo a Melbourne.


Configurazione dei proxy in Google Colab

Colab viene eseguito su una macchina virtuale, quindi è necessario istruire Python (e le librerie correlate) a utilizzare un proxy. Ecco come fare, in stile Arvid:

Impostazione del proxy HTTP/HTTPS per 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 il tuo proxy non necessita di autenticazione, ometti username:password@.

Impostazione dei proxy a livello globale nel notebook

A volte si desidera che tutto passi attraverso il proxy. Impostare le variabili d'ambiente:

import os

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

Ora, qualsiasi libreria che rispetti queste variabili di ambiente (richieste, urllib, ecc.) utilizzerà il proxy.

Proxy rotanti

Se stai raschiando come un dingo in un allevamento di polli, ruota i tuoi proxy per evitare i ban:

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())

Configurazione dei proxy in Jupyter Notebook

Più o meno come Colab, amico. Ecco come funziona:

Per 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())

Per proxy a livello di sistema (kernel Jupyter)

import os

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

Per Selenium (browser headless)

Se stai utilizzando Selenium in Jupyter (una mossa un po' potente):

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')

Confronto dei metodi proxy

Metodo Ambito Strumenti/Librerie Caso d'uso
requests proxy Su richiesta richieste, urllib3 Scraping, chiamate API
Variabili di ambiente Globale (sessione) Tutte le biblioteche (la maggior parte) Utilizzo coerente del proxy
Proxy del selenio Automazione del browser selenio Automazione/scraping web

Test del tuo proxy

Verifica sempre che il tuo proxy funzioni, altrimenti potresti ritrovarti a girare in tondo senza meta.

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 l'IP corrisponde al proxy, sei a posto.


Errori comuni (e soluzioni rapide)

Problema Come appare Come risolvere
Timeout della connessione Le richieste si bloccano, nessuna risposta Prova un proxy diverso
403/407 Autenticazione proxy richiesta Errore di autenticazione Utilizzare nome utente/password se necessario
Il proxy non funziona in Colab Nessun cambiamento nell'IP, errori Controllare le variabili di ambiente
Problemi SSL Handshake SSL non riuscito Utilizzare HTTP o impostare verify=False

Risorse utili


Ed ecco fatto: non c'è bisogno di lottare con un coccodrillo per impostare il tuo proxy in Colab o Jupyter. Se hai bisogno di proxy nuovi, ricorda che ProxyRoller è sempre aperto e non morde.

Arvid Warral

Arvid Warral

Architetto di rete principale

Arvid Warral, originario del paese bruciato dal sole, è il cervello dietro l'architettura di rete robusta e agile di ProxyRoller. Con oltre due decenni di esperienza nella sicurezza digitale e nella gestione proxy, è stato determinante nello sviluppo di sistemi che soddisfano le esigenze dinamiche di privacy e sicurezza dei dati. Il viaggio di Arvid con ProxyRoller è iniziato come un appassionato tecnologo e le sue soluzioni innovative hanno da allora spinto l'azienda in prima linea nel settore. Nel suo ruolo, si impegna a garantire che le offerte di ProxyRoller rimangano all'avanguardia e affidabili per gli utenti di tutto il mondo.

Commenti (0)

Non ci sono ancora commenti qui, potresti essere il primo!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *