Comment utiliser les proxys avec Google Colab et Jupyter

Comment utiliser les proxys avec Google Colab et Jupyter

Configuration de proxys dans Google Colab et Jupyter

Bon, passons directement à l'utilisation de proxys dans Google Colab ou Jupyter ; pas de chichis. Que vous souhaitiez récupérer des données, contourner les restrictions géographiques ou simplement préserver votre confidentialité, les proxys sont vos alliés de prédilection. Il faut toutefois un certain savoir-faire pour bien faire les choses, surtout sur des plateformes comme Colab et Jupyter, qui présentent parfois leurs propres spécificités.


Pourquoi utiliser des proxys avec Colab et Jupyter ?

Scénario Avantages du proxy
Web scraping Éviter les interdictions de propriété intellectuelle
Accéder aux API géo-bloquées Débloquer du contenu
Recherche avec anonymat Masquer votre empreinte numérique

Choisir votre source proxy

Maintenant, avant de vous lancer à la recherche de proxys sur Internet, simplifions les choses. ProxyRoller est votre partenaire ! Il propose des proxys gratuits et prêts à l'emploi. Plus d'informations à ce sujet dans un instant.


Types de proxys

Taper Description Utilisation typique
HTTP/HTTPS Proxies Web standard Web scraping, crawling
SOCKS4/SOCKS5 Niveau inférieur, prend en charge davantage de protocoles Streaming, P2P, etc.
Tournant Change fréquemment d'IP Éviter les limites de taux
Résidentiel Les adresses IP des utilisateurs réels sont plus difficiles à bloquer Scraping, automatisation

Pour la plupart des travaux Colab/Jupyter, les proxys HTTP/HTTPS feront l'affaire.


Obtenir des proxys gratuits auprès de ProxyRoller

  1. Rendez-vous sur ProxyRoller.
  2. Cliquez sur le bouton « Obtenir des proxys gratuits ».
  3. Copiez la liste de proxy : cela ressemble à ceci ip:port.

Un petit conseil australien : testez vos proxys, car les proxys gratuits peuvent être capricieux, comme la météo de Melbourne.


Configuration des proxys dans Google Colab

Colab s'exécute sur une machine virtuelle ; vous devez donc demander à Python (et aux bibliothèques associées) d'utiliser un proxy. Voici comment procéder, à la manière d'Arvid :

Configuration du proxy HTTP/HTTPS pour 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())
  • Si votre proxy n'a pas besoin d'authentification, laissez de côté username:password@.

Configuration globale des proxys dans Notebook

Parfois, vous souhaitez que tout passe par le proxy. Définissez les variables d'environnement :

import os

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

Désormais, toute bibliothèque qui respecte ces variables d'environnement (requests, urllib, etc.) utilisera le proxy.

Procurations rotatives

Si vous vous débrouillez comme un dingo dans un élevage de poulets, faites tourner vos proxys pour éviter les interdictions :

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

Configuration des proxys dans Jupyter Notebook

C'est un peu comme Colab, mec. Voici le principe :

Pour requests et 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())

Pour le proxy à l'échelle du système (noyau Jupyter)

import os

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

Pour Selenium (navigateurs sans tête)

Si vous exécutez Selenium dans Jupyter (un peu de puissance) :

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

Comparaison des méthodes proxy

Méthode Portée Outils/Bibliothèques Cas d'utilisation
requests mandataires Par demande requêtes, urllib3 Scraping, appels d'API
Variables d'environnement Mondial (session) Toutes les bibliothèques (la plupart) Utilisation cohérente du proxy
Proxy Selenium Automatisation du navigateur sélénium Automatisation/scraping Web

Tester votre proxy

Testez toujours si votre proxy fonctionne, sinon vous risquez de vous retrouver dans une situation où vous tournez en rond.

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

Si l'IP correspond au proxy, vous êtes en or.


Pièges courants (et solutions rapides)

Problème À quoi ça ressemble Comment réparer
Délai de connexion expiré Les requêtes sont bloquées, aucune réponse Essayez un autre proxy
Authentification proxy 403/407 requise Erreur d'authentification Utilisez le nom d'utilisateur/mot de passe si nécessaire
Le proxy ne fonctionne pas dans Colab Aucun changement d'IP, erreurs Vérifier les variables d'environnement
Problèmes SSL Échec de la négociation SSL Utilisez HTTP ou définissez verify=False

Ressources utiles


Et voilà ! Plus besoin de vous battre pour obtenir un proxy performant dans Colab ou Jupyter. Si vous avez besoin de nouveaux proxys, n'oubliez pas que ProxyRoller est toujours ouvert et ne mord pas.

Arvid Warral

Arvid Warral

Architecte réseau principal

Arvid Warral, originaire de ce pays ensoleillé, est le cerveau derrière l'architecture réseau robuste et agile de ProxyRoller. Fort de plus de deux décennies d'expérience dans la sécurité numérique et la gestion des proxys, il a joué un rôle déterminant dans le développement de systèmes qui répondent aux besoins dynamiques de confidentialité et de sécurité des données. Le parcours d'Arvid avec ProxyRoller a commencé en tant que technologue passionné, et ses solutions innovantes ont depuis propulsé l'entreprise à l'avant-garde du secteur. Dans son rôle, il s'engage à garantir que les offres de ProxyRoller restent à la pointe de la technologie et fiables pour les utilisateurs du monde entier.

Commentaires (0)

Il n'y a pas encore de commentaires ici, vous pouvez être le premier !

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *