La contrefaçon n'est pas un problème de niche. L'OCDE estime le commerce de produits contrefaits à plusieurs centaines de milliards de dollars par an, et l'essentiel transite désormais par les canaux que vos clients utilisent au quotidien : AliExpress, Alibaba, Amazon, eBay, Temu et le social commerce. Pour une marque, chaque annonce contrefaite représente un manque à gagner, un risque de sécurité et une dilution de la marque construite pendant des années.
Les équipes qui luttent contre ce phénomène (départements PI internes et plateformes de brand protection spécialisées) font toutes face au même problème opérationnel : les annonces illicites apparaissent plus vite que des humains ne peuvent les trouver, et les vendeurs remettent en ligne quelques jours après un takedown. La réponse n'est pas d'ajouter des analystes qui collent des URL dans des tableurs. C'est un pipeline de détection automatisé, construit sur des données marketplace fiables.
Cet article montre comment ce pipeline fonctionne en pratique, à partir d'un schéma de production réel chez l'un de nos clients (une plateforme de brand protection que nous ne nommerons pas), avec des appels API concrets sur AliExpress, Alibaba et Amazon.
Le cas d'usage : une plateforme de brand protection à grande échelle
L'un de nos clients opère un service de brand protection pour des entreprises et des créateurs de contenu. Leur promesse est simple à énoncer et difficile à tenir :
- Scanner en continu : surveiller plus de 100 000 sites, marketplaces, moteurs de recherche et réseaux sociaux, 24h/24, à la recherche de contrefaçons, d'usurpations d'identité et de vendeurs non autorisés.
- Retirer les infractions : envoyer des notifications légales aux éditeurs, déposer des plaintes PI auprès des marketplaces, désindexer les pages frauduleuses des moteurs de recherche et faire supprimer les faux comptes sociaux.
- Tout documenter : fournir à chaque client un dashboard avec preuves en temps réel, statut des actions et tendances des contrefacteurs.
Les étapes 2 et 3 relèvent du juridique et du produit. L'étape 1 est un problème de data engineering, et c'est là que l'infrastructure de scraping fait ou défait le business. Leur plateforme exécute des balayages récurrents par mots-clés de marque sur les marketplaces via les API Piloterr, plutôt que de maintenir en interne une flotte de navigateurs headless, des proxies et des parseurs par site.
Les raisons pour lesquelles ils externalisent la couche de scraping méritent d'être détaillées, car elles s'appliquent à toute équipe qui construit un outil de brand protection :
- Les marketplaces sont des cibles hostiles. Les pages de recherche AliExpress sont des single-page applications JavaScript derrière des systèmes anti-bot. Amazon fait tourner ses layouts et throttle agressivement. Maintenir une logique de bypass pour une douzaine de sites, c'est une équipe d'ingénieurs à plein temps.
- La couverture doit être localisée. Les vendeurs de contrefaçons ciblent délibérément les marchés où la marque est moins vigilante. Un balayage qui ne vérifie que
alibaba.comen anglais rate les annonces présentées aux acheteurs français ou polonais. - Les preuves doivent être structurées. Une notification de takedown exige l'identité du vendeur, le prix, l'URL de l'annonce et un horodatage : des champs JSON, pas des captures d'écran de HTML brut.
Anatomie d'un pipeline de détection de contrefaçons
Le pipeline comprend quatre étapes, chacune correspondant à des appels API spécifiques.
Découvrir Qualifier Documenter Enforcer & surveiller
(API search) (scoring) (API product) (takedown + re-scan)
│ │ │ │
balayages par → heuristiques → identité vendeur, → plainte PI,
mot-clé marque prix/vendeur images, specs veille remises en ligne
Étape 1 : découvrir les annonces avec les endpoints de recherche
Tout commence par des balayages par mots-clés de marque. Pour chaque marque protégée, la plateforme interroge l'endpoint de recherche de chaque marketplace couverte avec le nom de la marque, les fautes d'orthographe courantes (variantes type « nlke », « addidas ») et les mots-clés des gammes de produits.
Sur AliExpress, un seul appel renvoie des annonces structurées avec prix, vendeur et volume de ventes :
curl -G "https://api.piloterr.com/v2/aliexpress/search" \
-H "x-api-key: YOUR-API-KEY" \
--data-urlencode "query=acme headphones"
Chaque résultat inclut product_id, title, listing_url, price, currency et, lorsqu'ils sont affichés, sold_count, seller_name et seller_id. Les champs de pagination (total_results, total_pages, next) permettent d'épuiser les résultats : ajoutez ?page=N à une URL wholesale pour paginer.
Sur Alibaba, le volet B2B compte encore davantage : c'est là que les contrefaçons se sourcent en amont, en gros, avant même d'atteindre les marketplaces grand public. L'API Alibaba Search expose le MOQ et l'identité du fournisseur directement sur la carte de résultat, et supporte 17 sous-domaines localisés :
# Vitrine anglaise
curl -G "https://api.piloterr.com/v2/alibaba/search" \
-H "x-api-key: YOUR-API-KEY" \
--data-urlencode "query=acme headphones"
# Même balayage sur la vitrine française : d'autres vendeurs apparaissent
curl -G "https://api.piloterr.com/v2/alibaba/search" \
-H "x-api-key: YOUR-API-KEY" \
--data-urlencode "query=acme headphones" \
--data-urlencode "subdomain=french"
Lancer le même mot-clé sur les sous-domaines french, german, spanish ou polish fait régulièrement remonter des fournisseurs qui n'apparaissent jamais sur la vitrine anglaise. Pour un balayage de brand protection, chaque locale est un marché distinct à assainir.
Sur Amazon, l'API Search couvre toutes les grandes marketplaces via le paramètre domain :
curl -G "https://api.piloterr.com/v2/amazon/search" \
-H "x-api-key: YOUR-API-KEY" \
--data-urlencode "query=acme headphones" \
--data-urlencode "domain=de"
Les résultats incluent asin, title, price, real_price, rating et reviews_count, pour les annonces organiques comme sponsorisées. Les placements sponsorisés comptent : les contrefacteurs achètent des publicités sur les mots-clés de la marque elle-même.
Le même schéma s'étend à eBay, Temu, Etsy, Allegro, Cdiscount et au reste de la collection e-commerce. Une seule intégration, un seul schéma d'authentification (x-api-key), du JSON cohérent.
Étape 2 : qualifier les suspects avec des heuristiques de scoring
Un balayage par mot-clé de marque renvoie surtout des annonces légitimes. La couche de qualification sépare les suspects du bruit grâce aux champs structurés renvoyés par les API de recherche :
| Signal | Champ(s) | Pourquoi c'est important |
|---|---|---|
| Prix très inférieur au prix public | price, currency | Un produit à 300 € listé à 24 € est le signal de contrefaçon le plus fort |
| Vendeur inconnu | seller_name, seller_id | Absent de la liste des distributeurs autorisés de la marque |
| Gros volume sur une annonce récente | sold_count | Les contrefaçons qui se vendent vite font le plus de dégâts |
| Disponibilité B2B en gros | min_order, price_min (Alibaba) | « MOQ 500 pièces » d'un produit de marque chez une usine inconnue |
| Marque dans le titre, mauvais champ brand | title vs brand | Schéma de keyword-stuffing typique des contrefacteurs |
Aucun de ces signaux ne prouve à lui seul l'infraction. Combinés, ils produisent une file priorisée où un analyste humain (ou, de plus en plus, un modèle de matching d'images comparant image_url aux visuels officiels de la marque) confirme le cas en quelques secondes au lieu de le chercher pendant des heures.
Étape 3 : documenter avec les endpoints product
Les programmes de plainte PI des marketplaces (IPP d'Alibaba, Brand Registry d'Amazon, VeRO d'eBay) exigent des preuves précises et vérifiables. C'est ce que fournissent les endpoints product.
Une fois l'annonce signalée, récupérez sa fiche produit complète. Sur AliExpress, l'API Product renvoie toujours l'identité du vendeur, que les cartes de recherche n'exposent que parfois :
curl -G "https://api.piloterr.com/v2/aliexpress/product" \
-H "x-api-key: YOUR-API-KEY" \
--data-urlencode "query=https://www.aliexpress.com/item/1005001234567890.html"
La réponse constitue le dossier de preuves complet : titre, toutes les images produit, seller_id, seller_name, prix, spécifications et détails de livraison, en JSON structuré à archiver avec un horodatage. Même logique pour Alibaba Product (paliers de quantité, profil fournisseur, délais : la preuve d'une fabrication de contrefaçons en gros) et Amazon Product.
Sur Amazon, un endpoint supplémentaire est décisif pour les marques qui y vendent elles-mêmes : Amazon Product Offer liste les vendeurs tiers sur un ASIN donné. Les contrefacteurs ne créent souvent pas de nouvelles annonces : ils rattachent du faux stock à la fiche produit légitime de la marque. Surveiller la liste d'offres de vos propres ASIN détecte exactement cela.
Étape 4 : enforcer, puis surveiller les remises en ligne
Le takedown lui-même se joue dans le programme PI de la marketplace : hors de la couche de scraping. Mais l'enforcement sans surveillance est un tonneau des Danaïdes. Les vendeurs illicites, en routine :
- remettent le même produit en ligne sous un nouveau
product_idquelques jours plus tard, - clonent l'annonce sur une boutique sœur (même
seller_id, nouvelle annonce), - migrent vers un autre sous-domaine localisé, voire une autre marketplace.
C'est pourquoi le pipeline est une boucle, pas un one-shot. La plateforme relance ses balayages selon un planning, compare les résultats à la base d'annonces connues, et rapproche les nouvelles annonces des vendeurs déjà sanctionnés via seller_id. Un vendeur avec trois takedowns au compteur qui réapparaît avec une quatrième annonce passe directement en tête de file : et devient une preuve documentée de récidive, que la plupart des programmes marketplace escaladent jusqu'à la fermeture de la boutique.
Un balayage Python fonctionnel
Le script ci-dessous exécute un mot-clé de marque sur trois marketplaces et affiche une liste priorisée d'annonces suspectes, en signalant tout ce qui est vendu sous 40 % du prix public. Il est volontairement minimal : en production, vous persisteriez les snapshots, dédupliqueriez contre les annonces connues et alimenteriez une file de revue.
import requests
PILOTERR_API_KEY = "YOUR-API-KEY"
BRAND_KEYWORD = "acme headphones"
MSRP_EUR = 299.0
SUSPECT_THRESHOLD = 0.40 # signaler les annonces sous 40 % du prix public
BASE = "https://api.piloterr.com/v2"
HEADERS = {"x-api-key": PILOTERR_API_KEY}
def sweep_aliexpress(keyword: str) -> list[dict]:
r = requests.get(f"{BASE}/aliexpress/search",
headers=HEADERS, params={"query": keyword}, timeout=60)
r.raise_for_status()
return [
{
"marketplace": "aliexpress",
"title": item["title"],
"url": item["listing_url"],
"price": item.get("price"),
"currency": item.get("currency"),
"seller": item.get("seller_name"),
"sold_count": item.get("sold_count"),
}
for item in r.json().get("results", [])
]
def sweep_alibaba(keyword: str, subdomain: str = "www") -> list[dict]:
r = requests.get(f"{BASE}/alibaba/search", headers=HEADERS,
params={"query": keyword, "subdomain": subdomain}, timeout=60)
r.raise_for_status()
return [
{
"marketplace": f"alibaba/{subdomain}",
"title": item["title"],
"url": item["listing_url"],
"price": item.get("price_min"),
"currency": "USD",
"seller": item.get("seller_name"),
"min_order": item.get("min_order"),
}
for item in r.json().get("results", [])
]
def sweep_amazon(keyword: str, domain: str = "com") -> list[dict]:
r = requests.get(f"{BASE}/amazon/search", headers=HEADERS,
params={"query": keyword, "domain": domain}, timeout=60)
r.raise_for_status()
return [
{
"marketplace": f"amazon.{domain}",
"title": item["title"],
"url": item["url"],
"price": item.get("real_price") or item.get("price"),
"currency": "EUR" if domain in ("fr", "de", "es", "it") else "USD",
"asin": item["asin"],
}
for item in r.json()
]
def main():
listings = (
sweep_aliexpress(BRAND_KEYWORD)
+ sweep_alibaba(BRAND_KEYWORD)
+ sweep_alibaba(BRAND_KEYWORD, subdomain="french")
+ sweep_amazon(BRAND_KEYWORD, domain="de")
)
suspects = [
item for item in listings
if item["price"] is not None
and item["price"] < MSRP_EUR * SUSPECT_THRESHOLD
]
suspects.sort(key=lambda item: item["price"])
print(f"{len(listings)} annonces collectées, {len(suspects)} suspectes\n")
for item in suspects:
seller = item.get("seller") or "vendeur inconnu"
print(f"[{item['marketplace']}] {item['price']} {item['currency']} "
f"| {seller}\n {item['title'][:80]}\n {item['url']}\n")
if __name__ == "__main__":
main()
À partir de là, l'url de chaque suspect part vers l'endpoint product correspondant pour le snapshot de preuves complet, et chaque cas confirmé entre dans la file d'enforcement.
Au-delà des marketplaces : sites frauduleux et usurpation
Les annonces marketplace sont la plus grande surface d'attaque, mais l'abus de marque ne s'arrête pas là. La même approche API-first couvre le reste du paysage de menaces :
- Sites e-commerce frauduleux : balayez Google Search et Google Images sur les termes de la marque, puis profilez les domaines suspects avec Domain Whois (registrar, date de création, titulaire) et Website Technology : un domaine vieux de deux semaines qui fait tourner un thème Shopify cloné avec vos photos produit est un candidat au takedown.
- Usurpation sur les réseaux sociaux : surveillez les faux comptes et la promotion de contrefaçons avec Instagram User Info et X Profile Info.
- Seconde main et marché gris : les balayages Vinted, StockX et Leboncoin attrapent les contrefaçons vendues comme « authentique, porté une fois ».
Scraper les marketplaces pour la brand protection, est-ce légal ?
La brand protection est l'un des cas d'usage de scraping les plus défendables qui soient : vous collectez des offres commerciales affichées publiquement pour faire respecter des droits de propriété intellectuelle, et les programmes de takedown gérés par les marketplaces elles-mêmes reposent sur le fait que les titulaires de droits trouvent les infractions. Les principes habituels s'appliquent : ne collecter que des données publiques, respecter les limites de débit et ne stocker que les données personnelles strictement nécessaires à l'action d'enforcement. Pour le cadre général, consultez notre guide sur la légalité du web scraping.
En résumé
La brand protection à grande échelle est un pipeline de données : découvrir avec les API de recherche marketplace, qualifier avec des heuristiques prix/vendeur, documenter avec les endpoints product, enforcer et re-scanner en boucle. Les plateformes qui excellent ne sont pas celles qui ont les plus grosses équipes juridiques : ce sont celles dont la couche de détection ne dort jamais.
Piloterr fournit cette couche de détection sous forme d'API : AliExpress, Alibaba, Amazon, eBay, Temu et le reste de la library de 500 endpoints, avec bypass anti-bot et rendu navigateur gérés pour vous. Si vous construisez un outil de brand protection et voulez évaluer la qualité des données sur vos propres marques, créez un compte gratuit (+500 crédits, sans carte bancaire) ou contactez-nous pour un tarif volume et les endpoints que nous pouvons ajouter pour votre cas d'usage.