Ir para o conteúdo principal
Piloterr
Voltar ao blog
28 de julho de 2026

Web scraping para brand protection: caçando falsificações no AliExpress, Alibaba e Amazon

Falsificação não é um problema de nicho. A OCDE estima o comércio de produtos falsificados em centenas de bilhões de dólares por ano, e a maior parte flui hoje pelos mesmos canais que seus clientes usam diariamente: AliExpress, Alibaba, Amazon, eBay, Temu e o social commerce. Para uma marca, cada anúncio falsificado é receita perdida, um risco de segurança e a diluição de uma marca construída ao longo de anos.

As equipes que combatem isso (departamentos internos de PI e plataformas especializadas de brand protection) enfrentam o mesmo problema operacional: anúncios infratores surgem mais rápido do que humanos conseguem encontrá-los, e os vendedores republicam poucos dias após um takedown. A resposta não é adicionar analistas colando URLs em planilhas. É um pipeline de detecção automatizado construído sobre dados de marketplace confiáveis.

Este artigo mostra como esse pipeline funciona na prática, a partir de um padrão real de produção de um dos nossos clientes (uma plataforma de brand protection que não vamos nomear), com chamadas de API concretas ao AliExpress, Alibaba e Amazon.

O caso de uso: uma plataforma de brand protection em grande escala

Um dos nossos clientes opera um serviço de brand protection para empresas e criadores de conteúdo. A promessa deles é simples de enunciar e difícil de cumprir:

  1. Escanear continuamente: monitorar mais de 100.000 sites, marketplaces, mecanismos de busca e plataformas sociais 24 horas por dia, em busca de falsificações, perfis falsos e vendedores não autorizados.
  2. Remover infrações: enviar notificações legais aos publicadores, protocolar reclamações de PI nos marketplaces, desindexar páginas fraudulentas dos buscadores e derrubar contas sociais falsas.
  3. Documentar tudo: dar a cada cliente um dashboard com evidências em tempo real, status do enforcement e tendências dos infratores.

As etapas 2 e 3 são trabalho jurídico e de produto. A etapa 1 é um problema de engenharia de dados, e é aí que a infraestrutura de scraping define o sucesso ou o fracasso do negócio. A plataforma deles executa varreduras recorrentes por palavras-chave de marca nos marketplaces através das APIs da Piloterr, em vez de manter internamente uma frota de navegadores headless, proxies e parsers por site.

Vale detalhar por que eles terceirizam a camada de scraping, porque isso vale para qualquer equipe que constrói ferramentas de brand protection:

  • Marketplaces são alvos hostis. As páginas de busca do AliExpress são single-page applications em JavaScript atrás de sistemas anti-bot. A Amazon alterna layouts e limita o tráfego agressivamente. Manter lógica de bypass para uma dúzia de sites equivale a uma equipe de engenharia em tempo integral.
  • A cobertura precisa ser localizada. Vendedores de falsificações miram deliberadamente mercados onde a marca vigia menos. Uma varredura que só verifica alibaba.com em inglês perde os anúncios exibidos a compradores franceses ou poloneses.
  • As evidências precisam ser estruturadas. Uma notificação de takedown exige a identidade do vendedor, o preço, a URL do anúncio e um timestamp: campos JSON, não capturas de tela de HTML bruto.

Anatomia de um pipeline de detecção de falsificações

O pipeline tem quatro estágios, e cada um corresponde a chamadas de API específicas.

Texto simples
Descobrir         Qualificar        Documentar        Enforcement e monitoramento
(APIs search)     (scoring)         (APIs product)    (takedown + re-scan)
     │                 │                  │                  │
varreduras por → heurísticas   →  identidade do  →  reclamação de PI,
palavra-chave    preço/vendedor    vendedor, imagens  vigilância de republicações

Estágio 1: descobrir anúncios com os endpoints de busca

Tudo começa com varreduras por palavras-chave de marca. Para cada marca protegida, a plataforma consulta o endpoint de busca de cada marketplace coberto com o nome da marca, erros ortográficos comuns (variantes tipo "nlke", "addidas") e palavras-chave das linhas de produto.

No AliExpress, uma única chamada retorna anúncios estruturados com preço, vendedor e volume de vendas:

Bash
curl -G "https://api.piloterr.com/v2/aliexpress/search" \
  -H "x-api-key: YOUR-API-KEY" \
  --data-urlencode "query=acme headphones"

Cada resultado inclui product_id, title, listing_url, price, currency e, quando exibidos, sold_count, seller_name e seller_id. Os campos de paginação (total_results, total_pages, next) permitem esgotar o conjunto de resultados: adicione ?page=N a uma URL wholesale para paginar.

No Alibaba, o lado B2B importa ainda mais: é onde as falsificações são adquiridas a montante, em grande quantidade, antes mesmo de chegarem aos marketplaces de consumo. A API Alibaba Search expõe o MOQ e a identidade do fornecedor diretamente no card de resultado, e suporta 17 subdomínios localizados:

Bash
# Vitrine em inglês
curl -G "https://api.piloterr.com/v2/alibaba/search" \
  -H "x-api-key: YOUR-API-KEY" \
  --data-urlencode "query=acme headphones"

# A mesma varredura na vitrine francesa: outros vendedores aparecem
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"

Rodar a mesma palavra-chave nos subdomínios french, german, spanish ou polish regularmente revela fornecedores que nunca aparecem na vitrine em inglês. Para uma varredura de brand protection, cada locale é um mercado distinto a ser limpo.

Na Amazon, a API Search cobre todos os grandes marketplaces via o parâmetro domain:

Bash
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"

Os resultados incluem asin, title, price, real_price, rating e reviews_count, tanto para anúncios orgânicos quanto patrocinados. Os patrocinados importam: falsificadores compram anúncios sobre as palavras-chave da própria marca.

O mesmo padrão se estende ao eBay, Temu, Etsy, Allegro, Cdiscount e ao restante da coleção e-commerce. Uma única integração, um único esquema de autenticação (x-api-key), JSON consistente.

Estágio 2: qualificar suspeitos com heurísticas de scoring

Uma varredura por palavra-chave de marca retorna majoritariamente anúncios legítimos. A camada de qualificação separa os suspeitos do ruído usando os campos estruturados que as APIs de busca retornam:

SinalCampo(s)Por que importa
Preço muito abaixo do preço sugeridoprice, currencyUm produto de € 300 anunciado a € 24 é o indicador de falsificação mais forte
Vendedor desconhecidoseller_name, seller_idNão consta na lista de distribuidores autorizados da marca
Alto volume em anúncio recentesold_countFalsificações que giram rápido causam o maior dano
Disponibilidade B2B em atacadomin_order, price_min (Alibaba)"MOQ de 500 peças" de um produto de marca numa fábrica desconhecida
Marca no título, campo brand erradotitle vs brandPadrão de keyword-stuffing típico dos infratores

Nenhum desses sinais prova sozinho a infração. Combinados, produzem uma fila priorizada em que um analista humano (ou, cada vez mais, um modelo de correspondência de imagens comparando image_url com os ativos oficiais da marca) confirma o caso em segundos em vez de procurá-lo por horas.

Estágio 3: documentar com os endpoints product

Os programas de reclamação de PI dos marketplaces (o IPP do Alibaba, o Brand Registry da Amazon, o VeRO do eBay) exigem evidências específicas e verificáveis. É isso que os endpoints product fornecem.

Uma vez sinalizado um anúncio, busque a página de detalhes completa. No AliExpress, a API Product sempre retorna a identidade do vendedor, que os cards de busca só expõem às vezes:

Bash
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"

A resposta entrega o dossiê de evidências completo: título, todas as imagens do produto, seller_id, seller_name, preços, especificações e detalhes de entrega, como JSON estruturado que você pode arquivar com timestamp. O mesmo vale para o Alibaba Product (faixas de quantidade, perfil do fornecedor, prazos de produção: a prova de fabricação de falsificações em escala) e o Amazon Product.

Na Amazon, mais um endpoint é decisivo para marcas que também vendem lá: o Amazon Product Offer lista os vendedores terceiros em um determinado ASIN. Falsificadores frequentemente não criam anúncios novos: eles anexam estoque falso à própria página legítima da marca. Monitorar a lista de ofertas dos seus próprios ASINs captura exatamente isso.

Estágio 4: enforcement, depois vigiar as republicações

O takedown em si acontece no programa de PI do marketplace: fora da camada de scraping. Mas enforcement sem monitoramento é uma roda de hamster. Vendedores infratores, rotineiramente:

  • republicam o mesmo produto sob um novo product_id poucos dias depois,
  • clonam o anúncio em uma loja irmã (mesmo seller_id, anúncio novo),
  • migram para outro subdomínio localizado ou até para outro marketplace.

Por isso o pipeline é um loop, não um one-shot. A plataforma reexecuta as varreduras conforme um cronograma, compara os resultados com o banco de anúncios conhecidos e associa anúncios novos a vendedores já sancionados pelo seller_id. Um vendedor com três takedowns anteriores que reaparece com um quarto anúncio vai direto ao topo da fila: e vira evidência documentada de reincidência, que a maioria dos programas de marketplace escala até o fechamento da loja.

Uma varredura funcional em Python

O script abaixo executa uma palavra-chave de marca em três marketplaces e imprime uma lista priorizada de anúncios suspeitos, sinalizando tudo o que estiver abaixo de 40% do preço sugerido. Ele é deliberadamente mínimo: em produção, você persistiria os snapshots, faria deduplicação contra os anúncios conhecidos e alimentaria uma fila de revisão.

Python
import requests

PILOTERR_API_KEY = "YOUR-API-KEY"
BRAND_KEYWORD = "acme headphones"
MSRP_EUR = 299.0
SUSPECT_THRESHOLD = 0.40  # sinalizar anúncios abaixo de 40% do preço sugerido

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)} anúncios coletados, {len(suspects)} suspeitos\n")
    for item in suspects:
        seller = item.get("seller") or "vendedor desconhecido"
        print(f"[{item['marketplace']}] {item['price']} {item['currency']} "
              f"| {seller}\n  {item['title'][:80]}\n  {item['url']}\n")

if __name__ == "__main__":
    main()

A partir daqui, a url de cada suspeito vai para o endpoint product correspondente para o snapshot de evidências completo, e cada caso confirmado entra na fila de enforcement.

Além dos marketplaces: sites fraudulentos e perfis falsos

Anúncios de marketplace são a maior superfície, mas o abuso de marca não para aí. A mesma abordagem API-first cobre o restante do cenário de ameaças:

  • Sites e-commerce fraudulentos: varra o Google Search e o Google Images com os termos da marca, depois trace o perfil dos domínios suspeitos com o Domain Whois (registrador, data de criação, titular) e o Website Technology: um domínio de duas semanas rodando um tema Shopify clonado com suas fotos de produto é candidato a takedown.
  • Perfis falsos em redes sociais: monitore contas falsas e promoção de falsificações com o Instagram User Info e o X Profile Info.
  • Segunda mão e mercado cinza: varreduras no Vinted, StockX e Leboncoin capturam falsificações vendidas como "autêntico, usado uma vez".

Brand protection é um dos casos de uso de scraping mais defensáveis que existem: você coleta ofertas comerciais exibidas publicamente para fazer valer direitos de propriedade intelectual, e os programas de takedown administrados pelos próprios marketplaces dependem de os titulares de direitos encontrarem as infrações. Os princípios habituais continuam valendo: coletar apenas dados públicos, respeitar os limites de taxa e não armazenar mais dados pessoais do que a ação de enforcement exige. Para o quadro geral, veja nosso guia sobre a legalidade do web scraping.

Em resumo

Brand protection em grande escala é um pipeline de dados: descobrir com APIs de busca de marketplaces, qualificar com heurísticas de preço e vendedor, documentar com endpoints product, fazer enforcement e re-escanear em loop. As plataformas que fazem isso bem não são as que têm as maiores equipes jurídicas: são aquelas cuja camada de detecção nunca dorme.

A Piloterr fornece essa camada de detecção como API: AliExpress, Alibaba, Amazon, eBay, Temu e o restante da biblioteca de 500 endpoints, com bypass anti-bot e renderização de navegador gerenciados por nós. Se você está construindo ferramentas de brand protection e quer avaliar a qualidade dos dados com as suas próprias marcas, crie uma conta gratuita (+500 créditos, sem cartão de crédito) ou fale conosco sobre preços por volume e endpoints que podemos adicionar para o seu caso de uso.

Mais para ler

Guias e notícias sobre web scraping, proxies e extração de dados.

Web Scraping

Web scraping para o setor automotivo: acompanhando preços de carros e peças no AutoScout24, Mobile.de, Leboncoin e Autodoc

Como plataformas de pricing automotivo usam APIs de scraping para monitorar anúncios de carros usados no AutoScout24, Mobile.de e Leboncoin, e preços de peças nas mais de 30 lojas nacionais da Autodoc. Desenho do pipeline, exemplos de API e um script Python.

Josselin Liebe
Josselin Liebe
Ler
Web Scraping

Migrando do NetNut: o que fazer após a desativação da rede

O Google tomou medidas contra a rede de proxies NetNut/Popa em conjunto com o FBI e a Lumen. Como repensar sua stack de scraping sem gerenciar proxies por conta própria.

Josselin Liebe
Josselin Liebe
Ler
Web Scraping

€17,99 na França, €29,99 na Alemanha: monitoramento de preços por país

Mesma referência no ERP, preços diferentes por país: promoções, moedas e sortimento variam de uma loja para outra. Modelo de dados, exemplos de API e um script em Python para monitoramento confiável de preços.

Josselin Liebe
Josselin Liebe
Ler

Pronto para começar?

Sua API de web scraping está a um clique. Comece com +500 créditos, sem infraestrutura para configurar, sem proxies para gerenciar e sem cartão de crédito necessário.

  • +500 créditos
  • Sem cartão de crédito
  • Todos os endpoints incluídos