Skip to content
Advanced / 8 min read

Surveillance SEO avancée avec ProxyScrape : suivi du classement par ville avec des proxys résidentiels stables

Apprenez à configurer les proxys résidentiels ProxyScrape pour un suivi avancé du classement SEO dans plusieurs villes, garantissant une disponibilité fiable et des données SERP précises. Comprend la rotation Python et la gestion des erreurs.

Scraping Web Suivi SEO Autre

Aperçu

Si vous avez cherché « proxy scape », « proxyscaper » ou « scrapeproxy », le nom correct est ProxyScrape. ProxyScrape fournit des proxys résidentiels, datacenter et mobiles via HTTP et SOCKS5 avec une facturation à l'usage ou forfaitaire mensuelle. Leur pool de plus de 97 millions d'IP est conçu pour les équipes qui ont besoin d'une disponibilité fiable à long terme, ce qui en fait un choix idéal pour la surveillance SEO, où une collecte de données cohérente est essentielle.

Ce tutoriel avancé vous montre comment utiliser les proxys résidentiels ProxyScrape pour effectuer un suivi du classement par ville pour vos mots-clés cibles. Vous allez construire un système basé sur Python qui fait tourner les proxys, gère les erreurs et valide les résultats pour garantir que vos données SERP sont précises dans différentes zones géographiques.

Prérequis

  • Un compte ProxyScrape avec les proxys résidentiels activés (ou des proxys mobiles si vous avez besoin de résultats SERP mobiles).
  • Python 3.8 ou plus récent installé.
  • Connaissance de base de requests ou httpx en Python.
  • Une liste de mots-clés et de villes cibles que vous souhaitez suivre.
  • Facultatif : une bibliothèque ou une API de scraping SERP si vous ne voulez pas analyser directement les résultats Google.

Étape 1 : Choisir le bon type de proxy pour la surveillance SEO

ProxyScrape propose trois types de proxys, chacun avec des compromis pour la surveillance SEO :

  • Proxys résidentiels : Idéal pour éviter les blocages et obtenir des résultats locaux précis. Utilisez-les pour le suivi du classement par ville.
  • Proxys datacenter : Plus rapides et moins chers, mais plus susceptibles d'être bloqués par les moteurs de recherche. Adaptés aux vérifications à grand volume et non critiques.
  • Proxys mobiles : Idéal pour les SERP spécifiques au mobile, bien que plus chers.

Pour le suivi du classement par ville, les proxys résidentiels sont recommandés car ils fournissent de véritables IP d'utilisateurs des emplacements cibles. Le pool résidentiel de ProxyScrape offre une excellente disponibilité à long terme, ce qui est essentiel pour le suivi quotidien du classement.

Étape 2 : Récupérer vos identifiants de proxy et points de terminaison

Connectez-vous à votre tableau de bord ProxyScrape et accédez à la section des proxys résidentiels. Vous y trouverez :

  • Un point de terminaison proxy (hôte et port)
  • Votre nom d'utilisateur et mot de passe (ou une clé API, selon votre forfait)
  • Une liste des pays disponibles (et parfois des villes) pour le ciblage

ProxyScrape prend en charge les protocoles HTTP et SOCKS5. Pour la surveillance SEO, HTTP est généralement suffisant et plus facile à déboguer.

Exemple de format de proxy :

http://username:[email protected]:8000
socks5://username:[email protected]:1080

Si votre tableau de bord fournit une liste d'IP, vous pouvez également les utiliser directement.

Étape 3 : Construire un pool de proxys géociblé

Pour suivre les classements par ville, vous avez besoin de proxys de ces villes. Le tableau de bord de ProxyScrape vous permet de sélectionner des pays spécifiques. Pour un ciblage au niveau de la ville, vérifiez si votre forfait le prend en charge ; sinon, vous pouvez utiliser des proxys au niveau du pays et filtrer par les résultats locaux du moteur de recherche à l'aide d'un paramètre de géolocalisation (par exemple, &uule= pour Google).

Créez une liste Python d'URL de proxy pour chaque ville cible. Par exemple :

proxies_by_city = {
    "new_york": ["http://user:[email protected]:8000"],
    "london": ["http://user:[email protected]:8001"],
    # Add more cities as needed
}

Si vous ne disposez que d'un ciblage au niveau du pays, regroupez les villes par pays et utilisez le même pool de proxys, mais ajoutez un paramètre uule à votre requête de recherche pour simuler une recherche locale.

Étape 4 : Mettre en œuvre la rotation et la gestion des erreurs

Une seule IP de proxy sera rapidement bloquée lors du scraping des SERP. Faites tourner les proxys à chaque requête ou toutes les quelques requêtes. Voici un exemple de fonction Python utilisant requests :

import requests
import random
import time

def fetch_serp(keyword, city, proxies):
    proxy = random.choice(proxies)
    proxies_dict = {"http": proxy, "https": proxy}
    headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"
    }
    # Add uule parameter for city-level search (example for Google)
    params = {"q": keyword, "uule": f"w+CAIQICI{city}"}  # Replace with correct uule encoding
    try:
        response = requests.get("https://www.google.com/search", params=params, proxies=proxies_dict, headers=headers, timeout=10)
        response.raise_for_status()
        return response.text
    except requests.exceptions.RequestException as e:
        print(f"Request failed with proxy {proxy}: {e}")
        return None

# Usage
for city, proxy_list in proxies_by_city.items():
    html = fetch_serp("best running shoes", city, proxy_list)
    if html:
        # Parse rankings from html
        pass
    time.sleep(random.uniform(1, 3))  # Respectful delay

Remarque : Le paramètre uule nécessite un encodage spécifique. Vous pouvez le générer à l'aide d'outils ou de bibliothèques en ligne gratuits. Si vous ne scrapez pas Google directement, de nombreuses API SERP acceptent un paramètre location.

Pour le suivi à grand volume, envisagez d'utiliser httpx avec prise en charge asynchrone et un middleware de rotation de proxy.

Étape 5 : Valider les résultats et surveiller la disponibilité des proxys

Pour garantir l'exactitude des données, mettez en œuvre une validation :

  • Vérifiez que la réponse contient les éléments attendus (par exemple, le conteneur de résultats de recherche).
  • Comparez le classement d'un mot-clé connu sur plusieurs proxys pour détecter les anomalies.
  • Surveillez la disponibilité des proxys en enregistrant les échecs. L'infrastructure stable de ProxyScrape réduit les temps d'arrêt, mais vous devez tout de même suivre les proxys qui échouent et les remplacer.

Exemple d'extrait de validation :

def is_valid_serp(html):
    return "result-stats" in html or "search" in html.lower()

Mettez en place une simple vérification de disponibilité :

def check_proxy(proxy):
    try:
        r = requests.get("http://httpbin.org/ip", proxies={"http": proxy, "https": proxy}, timeout=5)
        return r.status_code == 200
    except:
        return False

Étape 6 : Stocker et analyser les données de classement

Une fois que vous avez des SERP valides, analysez les classements et stockez-les dans une base de données (par exemple, SQLite, PostgreSQL). Suivez la position de votre URL cible pour chaque combinaison mot-clé-ville au fil du temps.

Exemple avec sqlite3 :

import sqlite3

conn = sqlite3.connect("rankings.db")
c = conn.cursor()
c.execute("""CREATE TABLE IF NOT EXISTS rankings
             (date TEXT, keyword TEXT, city TEXT, position INTEGER, url TEXT)""")
# Insert parsed data
conn.commit()

Analysez les tendances pour identifier les changements de classement locaux et ajustez votre stratégie SEO en conséquence.

Dépannage

Les proxys sont lents ou expirent

  • Augmentez le délai d'attente à 15-20 secondes.
  • Réduisez la concurrence si vous effectuez de nombreuses requêtes parallèles.
  • Consultez la page de statut ou le tableau de bord de ProxyScrape pour tout problème signalé.

Être bloqué ou voir des CAPTCHAs

  • Assurez-vous de faire tourner les proxys à chaque requête.
  • Ajoutez des en-têtes réalistes et des délais aléatoires.
  • Utilisez des proxys résidentiels au lieu de datacenter pour Google.
  • Envisagez d'utiliser une API SERP qui gère les CAPTCHAs.

Le ciblage par ville ne fonctionne pas

  • Vérifiez que votre forfait ProxyScrape prend en charge le ciblage au niveau de la ville. Sinon, utilisez des proxys au niveau du pays et le paramètre uule.
  • Vérifiez à nouveau l'encodage uule pour votre ville cible.

Erreurs d'authentification

  • Confirmez que votre nom d'utilisateur et votre mot de passe sont corrects.
  • Si vous utilisez une liste blanche d'IP, assurez-vous que l'IP de votre serveur est ajoutée au tableau de bord ProxyScrape.

Résumé

Dans ce tutoriel, vous avez configuré les proxys résidentiels ProxyScrape pour un suivi avancé du classement SEO par ville. Vous avez appris à choisir le bon type de proxy, récupérer les identifiants, construire un pool géociblé, faire tourner les proxys avec gestion des erreurs, valider les résultats et stocker les données de classement. La disponibilité fiable de ProxyScrape et son large pool résidentiel en font un choix solide pour les équipes qui ont besoin d'une surveillance SEO cohérente à long terme. Rappelez-vous, le nom correct est ProxyScrape—pas « proxy scape » ou « proxyscaper »—afin de trouver la bonne documentation et le support lorsque nécessaire.