Techniques avancées pour la rotation de proxy avec Python

Pichai Nurjanah
posté par
Pichai Nurjanah

Choisir et acheter des proxys

Techniques avancées pour la rotation de proxy avec Python
0 Commentaires

La création d'un mécanisme de rotation de proxy efficace est essentielle lorsqu'il s'agit de tâches de web scraping ou d'exploration de données à grande échelle. Même si les premières étapes des projets de web scraping ou des analyses à échelle minimale peuvent suffire avec une configuration de base, le véritable défi surgit lors de la mise à l'échelle. Pour atténuer les risques tels que le blocage IP et garantir la robustesse de votre infrastructure de scraping, l'utilisation d'un système de rotation de proxy sophistiqué devient impérative.

À ces fins, le recours à un fournisseur de services proxy professionnel comme OneProxy devient inestimable. Avec un pool diversifié de serveurs proxy de centres de données, ces services peuvent considérablement améliorer la fiabilité et l'efficacité de vos tâches de scraping.

Ci-dessous, nous approfondissons le développement d'un rotateur de proxy plus avancé utilisant Python et Beautiful Soup, tirant parti des services de OneProxy pour des résultats optimaux.

Rotation du proxy avec Python

Configuration préliminaire

Avant de commencer, assurez-vous d'avoir Beautiful Soup et le requests bibliothèque installée dans votre environnement Python. Ces outils vous permettront d'analyser le contenu HTML et de gérer facilement les requêtes HTTP.

Notre script de rotation de proxy récupérera les proxys publics du pool de proxy gratuit de OneProxy, accessible sur Liste de proxy gratuite OneProxy. Cette liste est mise à jour régulièrement, offrant un nouvel ensemble de proxys pour divers besoins.

Code de récupération de base

Tout d'abord, nous devons établir le code de base pour récupérer le contenu HTML de la liste de proxys gratuits de OneProxy. Nous utilisons une chaîne d'agent utilisateur pour émuler un navigateur Web, ce qui permet de contourner les détections de robots de base basées sur l'agent utilisateur.

# -*- coding: utf-8 -*-
from bs4 import BeautifulSoup
import requests
url = https://oneproxy.pro/free-proxy/

def fetch_proxies(url):
    header = {
        'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_2) ' +
        'AppleWebKit/601.3.9 (KHTML, like Gecko) Version/9.0.2 Safari/601.3.9'
    }
    response = requests.get(url, headers=header)
    return response.content

Cette fonction récupère simplement le contenu HTML de l'URL fournie.

Analyse de la liste des proxys

Le BeautifulSoup La bibliothèque analysera le contenu HTML pour extraire les proxys. Les proxys sont généralement répertoriés dans une structure de tableau sur la page Web, identifiés par des balises et des attributs HTML spécifiques.

def parse_proxies(html_content):
    soup = BeautifulSoup(html_content, 'lxml')
    proxy_table = soup.select_one('#proxy-list-table')  # Replace with the correct ID
    proxies = []
    for row in proxy_table.select('tr'):
        columns = row.select('td')
        if columns:
            ip, port = columns[0].get_text(), columns[1].get_text()
            proxies.append({'ip': ip, 'port': port})
    return proxies

Rotation des procurations

La fonction suivante orchestre la rotation du proxy en sélectionnant aléatoirement un proxy disponible dans la liste récupérée :

from random import choice

def rotate_proxies(proxies):
    if proxies:
        return choice(proxies)
    else:
        return None

Mettre tous ensemble

Combinant toutes les fonctions, le script final intègre la récupération, l'analyse et la rotation de proxy, offrant ainsi un système de rotation de proxy transparent.

# -*- coding: utf-8 -*-
import requests
from bs4 import BeautifulSoup
from random import choice

# Functions previously defined: fetch_proxies, parse_proxies, rotate_proxies

proxies = []  # This will hold our list of proxies

def refresh_proxies():
    global proxies
    proxies = parse_proxies(fetch_proxies('https://oneproxy.pro/free-proxy/'))

def get_random_proxy():
    if not proxies:
        refresh_proxies()
    return rotate_proxies(proxies)

# Main execution
refresh_proxies()
proxy = get_random_proxy()
print(proxy['ip'], proxy['port'])

Mise à l'échelle professionnelle avec OneProxy

Pour les environnements de production où l'échelle s'étend à des milliers de requêtes, les pools de proxy gratuits peuvent ne pas suffire pour des raisons de fiabilité et de vitesse. À ce stade, un service proxy tournant devient indispensable.

OneProxy offre une solution robuste avec des fonctionnalités telles que :

  • Proxy mondiaux à haut débit: Des millions de proxys de centres de données dans le monde garantissent des connexions rapides et ininterrompues.
  • Rotation automatique des adresses IP : les adresses IP sont alternées de manière transparente pour empêcher la détection et les interdictions.
  • Rotation des chaînes de l'agent utilisateur: imite les requêtes de divers navigateurs Web et versions, améliorant ainsi la non-détectabilité des robots.
  • Résolution de CAPTCHA: intègre la technologie pour résoudre automatiquement les CAPTCHA, rationalisant ainsi le processus de scraping.

Avec OneProxy, les clients ont triomphalement relevé les défis du blocage IP, rationalisant ainsi leurs processus d'extraction de données Web.

Les services de OneProxy sont polyvalents et peuvent être implémentés dans n'importe quel langage de programmation, répondant à un large éventail de projets et d'exigences.

Offre spéciale: Découvrez la puissance de la rotation des proxys professionnels avec OneProxy. Commencez avec 50 000 requêtes sans frais

Acheter des proxys rotatifs

LAISSER UN COMMENTAIRE

Proxy de centre de données
Proxy partagés

Un grand nombre de serveurs proxy fiables et rapides.

À partir de$0.06 par IP
Rotation des procurations
Rotation des procurations

Proxy à rotation illimitée avec un modèle de paiement à la demande.

À partir de$0.0001 par demande
Procurations privées
Proxy UDP

Proxy avec prise en charge UDP.

À partir de$0.4 par IP
Procurations privées
Procurations privées

Proxy dédiés à usage individuel.

À partir de$5 par IP
Proxy illimités
Proxy illimités

Serveurs proxy avec trafic illimité.

À partir de$0.06 par IP
Prêt à utiliser nos serveurs proxy dès maintenant ?
à partir de $0.06 par IP