Connexion Inscription
Veille tarifaire

Proxys de veille tarifaire que les boutiques ne voient pas

Les boutiques affichent des prix différents selon la région et bloquent quiconque interroge trop souvent depuis une même adresse. Un outil de veille sur Advanced.name répartit ses requêtes sur des dizaines de milliers d'adresses IPv4 et interroge chaque boutique depuis la région de ses acheteurs.

  • 30 000 IP sur le pack n° 4
  • prix de la région de l'acheteur
  • liste rafraîchie toutes les 10 minutes
Allée d'entrepôt avec une tablette affichant une courbe de prix
Veille tarifaire

Ce qu'il faut à une veille tarifaire et ce que donne le pack

Une veille visite les mêmes pages toutes les heures. C'est ce schéma qui se fait bloquer, et le pool doit le masquer.

Ce que demande la tâcheCe que fournit le pack

Une IP différente à chaque visite du même produit

Le pack n° 4 contient 30 000 adresses : une fiche produit voit la même IP une fois par mois

Les prix tels que les voient les acheteurs locaux

Pools Europe, CEI et Chine ; World MIX pour les États-Unis et les autres marchés

Des milliers de références vérifiées chaque heure

Jusqu'à 2 500 threads sur le pack n° 4, 5 000 sur le pack n° 6

Des pages avec images et scripts, pas seulement du JSON

Pas de limite de trafic : récupérez des pages complètes aussi souvent que le planning le prévoit

Proxys illimités

Choisissez le pack selon la taille du catalogue

Dix mille références par heure tiennent dans le pack n° 3 ; surveiller toute une marketplace demande le n° 4 ou plus.

Région
Durée
IP autorisées
1 +10 % par IP au-delà de la première
Recommandé pour cette tâche
$0
  • Proxys dans le pack
  • Threads
  • IP autorisées1
  • ProtocolesHTTP / SOCKS5
Les 13 packs dans la grille tarifaire

Trois étapes vers le premier relevé de prix

Découpez le catalogue par boutique

Chaque boutique a sa propre file de requêtes et sa part de la liste de proxies. Les grosses marketplaces reçoivent la plus grande part.

Rotation et relances

Prenez l'adresse suivante à chaque requête, relancez deux fois sur une autre et enregistrez le prix avec l'IP qui l'a récupéré.

Rafraîchissez la liste toutes les 10 minutes

Les adresses quittent le pool en vieillissant. Le lien renvoie toujours l'ensemble actuel, relisez-le donc avec un minuteur.

Veille de prix prête : une requête par produit, avec rotation

Remplissez products.txt avec des URL de produits et réglez COUNTRY. Chaque produit est récupéré via le proxy suivant, le prix est extrait puis écrit dans prices.csv. Adaptez PRICE_RE au balisage de la boutique. Testez d'abord sur la liste de proxies gratuits.

CSV export link from your dashboard
buyers' country: prices are read as local shoppers see them
one product URL per line
regex, group 1 = the price
url;price;proxy;country is written here
Les valeurs viennent du formulaire ; copiez ou téléchargez le fichier prêt.
Afficher le code du script
Python 3.8+ · prices.py
#!/usr/bin/env python3
"""Price monitor for Advanced.name proxies.

Fetches product pages through proxies from the buyer's country and pulls the
price out of each page. One request per product goes through the next proxy, so
a shop sees the same address rarely. Standard library only. python3 prices.py
"""

# ================================ CONFIG ====================================
CSV_URL = "https://get.advanced.name/YOUR_LIST_ID.csv"  # CSV export link from your dashboard
COUNTRY = "DE"          # buyers' country: prices are read as local shoppers see them
MIN_SPEED = 3
PRODUCTS_FILE = "products.txt"           # one product URL per line
PRICE_RE = r'"price"\s*:\s*"?([0-9][0-9.,]*)'   # regex, group 1 = the price
OUT_FILE = "prices.csv"                   # url;price;proxy;country is written here
THREADS = 40
TIMEOUT = 20
RETRIES = 3
# ============================================================================

import csv
import io
import itertools
import re
import sys
import threading
import urllib.request
from concurrent.futures import ThreadPoolExecutor, as_completed

COL_IP, COL_PORT, COL_COUNTRY, COL_SPEED = 0, 1, 2, 3
UA = "Mozilla/5.0 (compatible; price-monitor/1.0)"
PRICE = re.compile(PRICE_RE)


def load_proxies():
    raw = urllib.request.urlopen(CSV_URL, timeout=30).read().decode("utf-8", "replace")
    pool = []
    for row in csv.reader(io.StringIO(raw), delimiter=";"):
        if len(row) <= COL_SPEED or not row[COL_PORT].strip().isdigit():
            continue
        if COUNTRY and row[COL_COUNTRY].strip().upper() != COUNTRY.upper():
            continue
        if int(row[COL_SPEED] or 0) < MIN_SPEED:
            continue
        pool.append(row[COL_IP].strip() + ":" + row[COL_PORT].strip())
    return pool


def main():
    proxies = load_proxies()
    if not proxies:
        sys.exit("No proxies for COUNTRY=%r." % COUNTRY)
    with open(PRODUCTS_FILE, encoding="utf-8") as fh:
        products = [line.strip() for line in fh if line.strip() and not line.startswith("#")]
    print("proxies: %d (%s), products: %d" % (len(proxies), COUNTRY, len(products)))

    rotation = itertools.cycle(proxies)
    lock = threading.Lock()

    def grab(url):
        for _ in range(RETRIES):
            with lock:
                proxy = next(rotation)
            handler = urllib.request.ProxyHandler({"http": "http://" + proxy, "https": "http://" + proxy})
            req = urllib.request.Request(url, headers={
                "User-Agent": UA, "Accept-Language": COUNTRY.lower() + "," + COUNTRY.upper()})
            try:
                html = urllib.request.build_opener(handler).open(req, timeout=TIMEOUT).read().decode("utf-8", "replace")
            except Exception:
                continue
            match = PRICE.search(html)
            return (match.group(1) if match else "not found"), proxy
        return "unreachable", ""

    rows = []
    with ThreadPoolExecutor(max_workers=THREADS) as pool:
        futures = {pool.submit(grab, u): u for u in products}
        for fut in as_completed(futures):
            url = futures[fut]
            price, proxy = fut.result()
            rows.append((url, price, proxy, COUNTRY))
            print("%-9s %s" % (price, url[:60]))

    with open(OUT_FILE, "w", encoding="utf-8", newline="") as out:
        writer = csv.writer(out, delimiter=";")
        writer.writerow(["url", "price", "proxy", "country"])
        writer.writerows(rows)
    print("written %s (%d rows)" % (OUT_FILE, len(rows)))


if __name__ == "__main__":
    main()
Configuration

Mettre en place une veille tarifaire

Votre propre parseur

Récupérez chaque page produit via le proxy suivant et tirez le prix du bloc JSON-LD ou du nœud de prix ; le script ci-dessus utilise une regex que vous ajustez pour chaque boutique. Envoyez l'Accept-Language et le cookie de devise de la région avec l'IP locale, sinon la boutique peut vous basculer sur un autre marché.

Planifiez selon la pression : stock toutes les heures, prix deux fois par jour. Stockez le code HTTP avec chaque prix, ainsi une rafale de 403 sur une boutique vous dit de ralentir là-bas, pas partout.

Outils prêts et tableurs

Les services de suivi de prix et les scrapers sans code (Octoparse, Web Scraper) prennent une liste de proxys dans leurs paramètres : collez-y le même fichier ip:port. Même IMPORTXML de Google Sheets peut passer par un petit relais proxy pour des vérifications légères.

Gardez le pool frais avec le vérificateur de proxies et testez le circuit sur la liste de proxies gratuits avant de passer au catalogue complet.

En pratique

Ce que voit la veille

Quatre règles pour des données de prix propres

  1. Envoyez l'Accept-Language et les cookies de devise de la région cible avec l'IP régionale ; sinon la boutique peut quand même vous rediriger.
  2. Méfiez-vous des prix en cache ou personnalisés : deux IP du même pays doivent renvoyer le même chiffre.
  3. Stockez le code HTTP avec chaque prix. Une rafale de 403 sur une boutique veut dire ralentir là-bas, pas partout.
  4. Gardez quelques threads en réserve pour revérifier les articles dont le prix a bondi de plus de 20 %.

Offres au Go pour cette tâche

Cette tâche par pays

Voir tous les pays
FAQ

Questions sur cette tâche

À quelle fréquence puis-je vérifier un produit ?
Toutes les heures sans risque sur le pack n° 4 : avec 30 000 adresses, une fiche produit croise la même IP environ une fois par mois.
Verrai-je les prix locaux ?
Oui, si l'IP vient de la région de la boutique et que votre requête porte les en-têtes de langue et de devise de cette région.
Et les marketplaces chargées de JavaScript ?
Le trafic n'est pas décompté, un navigateur headless via le proxy convient donc très bien. Donnez-lui un timeout de 15 à 20 secondes et une IP neuve par session.
Puis-je d'abord essayer sur mon catalogue ?
Une heure d'essai sur n'importe quel pack est gratuite, avec tous les threads. Faites tourner votre veille une heure et comparez les taux d'erreurs.
Comment collecter des prix par ville ?
Via Resi Prime : vous fixez la ville dans la chaîne de connexion, et la boutique renvoie le prix local et la date de livraison. Les packs illimités et Resi Core vont jusqu'au niveau du pays.
Offres pour cette tâche

Que prendre pour la veille tarifaire

Un passage horaire sur le catalogue se rentabilise sur un pack illimité. Les boutiques très protégées et les prix par ville demandent des adresses résidentielles.

Proxys illimités

Le catalogue chaque heureLe meilleur choix

Pack #4 · World MIX · 30 000 IP · 2500 threads

Avec des vérifications horaires, une fiche produit revoit la même IP environ une fois par mois. Les pages complètes ne font pas monter la facture.

$990 par moisou $4.20 de l'heure

Resi Core

Boutiques strictes

2M+ IP · 200+ pays · threads illimités

Une IP résidentielle du pays de la boutique à chaque requête. Pour les sites qui montrent un captcha au lieu du prix aux adresses des listes.

dès $0.49 le Go1 Go pour $0.85

Resi Prime

Prix par ville

30M+ IP · 220 pays · threads illimités

Ville et région dans la chaîne de connexion. La boutique affiche le prix et la livraison que voit un acheteur de cette ville.

dès $1.39 le Go1 Go pour $2.29

Récupérez ce soir les prix de chaque boutique

Choisissez le pack, prenez l'heure gratuite et passez la veille sur tout le catalogue.

Tarifs Prendre une heure offerte