ScavioScavio
ProduitTarifsDocumentation
ConnexionCommencer
  1. Accueil
  2. Tutoriels
  3. Comment détecter les tendances produits TikTok pour le e-commerce
Tutoriel

Comment détecter les tendances produits TikTok pour le e-commerce

Trouvez les produits tendance sur TikTok avant qu'ils n'atteignent leur pic en utilisant l'API TikTok. Détectez les produits viraux, suivez la vélocité d'engagement et validez avec les données de recherche.

Obtenez une clé API gratuiteDocumentation API

TikTok génère des ventes e-commerce massives. Les produits qui deviennent viraux sur TikTok se vendent en quelques jours sur Amazon. Détecter ces tendances tôt vous donne un avantage d'approvisionnement. Ce tutoriel construit un pipeline de détection de tendances TikTok en utilisant les endpoints API Scavio TikTok. Recherchez des vidéos liées à des produits, suivez la vélocité d'engagement (vues par heure) et recoupez avec les données de recherche Amazon pour valider la viabilité commerciale. Les appels API TikTok utilisent le modèle d'authentification par jeton Bearer.

Prérequis

  • Python 3.9+ installé
  • Bibliothèque requests installée
  • Une clé API Scavio depuis scavio.dev
  • Compréhension de base de l'approvisionnement en produits e-commerce

Parcours

Étape 1: Rechercher des vidéos liées à des produits sur TikTok

Utilisez l'endpoint de recherche de vidéos TikTok pour trouver du contenu lié à des produits. Un nombre élevé de vues et des dates de téléchargement récentes indiquent des produits tendance.

Python
import os, requests, time
from datetime import datetime

SCAVIO_KEY = os.environ['SCAVIO_API_KEY']
TT_URL = 'https://api.scavio.dev/api/v1/tiktok'
TT_H = {'Authorization': f'Bearer {SCAVIO_KEY}', 'Content-Type': 'application/json'}
SEARCH_URL = 'https://api.scavio.dev/api/v1/search'
SEARCH_H = {'x-api-key': SCAVIO_KEY, 'Content-Type': 'application/json'}

def search_tiktok_products(query: str, count: int = 20) -> list:
    """Search TikTok for product-related videos."""
    resp = requests.post(f'{TT_URL}/search/videos', headers=TT_H,
        json={'keyword': query, 'count': count, 'cursor': 0})
    videos = resp.json().get('data', {}).get('videos', [])
    results = []
    for v in videos:
        stats = v.get('stats', {})
        author = v.get('author', {})
        results.append({
            'description': v.get('desc', '')[:100],
            'author': author.get('uniqueId', ''),
            'plays': stats.get('playCount', 0),
            'likes': stats.get('diggCount', 0),
            'comments': stats.get('commentCount', 0),
            'shares': stats.get('shareCount', 0),
            'created': v.get('createTime', 0),
            'video_id': v.get('id', ''),
        })
    # Sort by plays descending
    results.sort(key=lambda x: x['plays'], reverse=True)
    return results

videos = search_tiktok_products('TikTok made me buy it')
print(f'Found {len(videos)} product videos')
for v in videos[:5]:
    print(f'  {v["plays"]:>12,} plays | @{v["author"]:15s} | {v["description"][:40]}')

Étape 2: Détecter les catégories de produits tendance

Recherchez plusieurs hashtags et mots-clés liés à des produits pour identifier les catégories qui sont en tendance. Comparez les taux d'engagement entre les catégories.

Python
def detect_trending_categories(categories: list) -> list:
    """Search TikTok for each product category and rank by engagement."""
    results = []
    for category in categories:
        videos = search_tiktok_products(category, count=10)
        if not videos:
            continue
        total_plays = sum(v['plays'] for v in videos)
        total_likes = sum(v['likes'] for v in videos)
        avg_engagement = total_likes / total_plays if total_plays else 0
        results.append({
            'category': category,
            'videos': len(videos),
            'total_plays': total_plays,
            'total_likes': total_likes,
            'avg_engagement': avg_engagement,
            'top_video': videos[0] if videos else None,
        })
        time.sleep(0.3)
    results.sort(key=lambda x: x['total_plays'], reverse=True)
    return results

categories = [
    'cleaning gadget review',
    'kitchen organization hack',
    'skincare routine product',
    'desk setup accessory',
    'pet gadget review',
]

trending = detect_trending_categories(categories)
print('TikTok Product Trend Detection')
print('=' * 60)
for t in trending:
    print(f"  {t['category']:30s} | {t['total_plays']:>12,} plays | {t['avg_engagement']:.1%} eng")
    if t['top_video']:
        print(f"    Top: {t['top_video']['description'][:50]}")

Étape 3: Suivre la vélocité des hashtags pour le timing des tendances

Utilisez l'endpoint de hashtag TikTok pour vérifier la vitesse de croissance d'un hashtag de produit. Un nombre élevé de vues sur le hashtag indique un timing de pointe ou pré-pointe.

Python
def check_hashtag_velocity(hashtag: str) -> dict:
    """Check a hashtag's total views and video volume."""
    # Get hashtag info
    resp = requests.post(f'{TT_URL}/hashtag', headers=TT_H,
        json={'hashtag': hashtag})
    hashtag_data = resp.json().get('data', {})
    time.sleep(0.3)
    # Get recent videos under this hashtag
    resp = requests.post(f'{TT_URL}/hashtag/videos', headers=TT_H,
        json={'hashtag': hashtag, 'count': 20, 'cursor': 0})
    videos = resp.json().get('data', {}).get('videos', [])
    recent_plays = sum(v.get('stats', {}).get('playCount', 0) for v in videos)
    return {
        'hashtag': hashtag,
        'total_views': hashtag_data.get('stats', {}).get('videoCount', 0),
        'recent_videos': len(videos),
        'recent_plays': recent_plays,
        'avg_plays_per_video': recent_plays // len(videos) if videos else 0,
    }

hashtags = ['cleaninghack', 'kitchengadget', 'desksetup', 'skincareproduct']
print('Hashtag Velocity Check')
print('-' * 60)
for tag in hashtags:
    data = check_hashtag_velocity(tag)
    print(f'  #{data["hashtag"]:20s} | {data["recent_plays"]:>10,} recent plays | '
          f'{data["avg_plays_per_video"]:>8,} avg/video')
    time.sleep(0.3)

Étape 4: Recouper avec les données de recherche Amazon

Un produit qui devient tendance sur TikTok n'est important pour le e-commerce que si les gens l'achètent réellement. Recoupez les tendances TikTok avec les recherches Amazon pour valider la viabilité commerciale.

Python
def validate_trend_commercially(product: str) -> dict:
    """Cross-validate a TikTok trend with Amazon data."""
    # TikTok data
    tt_videos = search_tiktok_products(product, count=10)
    tt_plays = sum(v['plays'] for v in tt_videos)
    time.sleep(0.3)
    # Amazon data
    resp = requests.post(SEARCH_URL, headers=SEARCH_H,
        json={'query': f'site:amazon.com {product}',
              'country_code': 'us', 'num_results': 5})
    amazon_results = resp.json().get('organic_results', [])
    # Scoring
    tiktok_score = min(tt_plays / 100000, 10)  # Normalize to 0-10
    amazon_score = len(amazon_results) * 2  # 0-10
    combined = (tiktok_score + amazon_score) / 2
    return {
        'product': product,
        'tiktok_videos': len(tt_videos),
        'tiktok_plays': tt_plays,
        'amazon_listings': len(amazon_results),
        'tiktok_score': round(tiktok_score, 1),
        'amazon_score': round(amazon_score, 1),
        'combined_score': round(combined, 1),
        'verdict': 'HOT' if combined > 6 else 'WARM' if combined > 3 else 'COLD',
        'cost': 0.010,  # 1 TikTok + 1 Amazon search
    }

products = ['LED sunset lamp', 'portable blender', 'cloud slides shoes']
print('\nTrend Validation Report')
print('=' * 65)
for p in products:
    result = validate_trend_commercially(p)
    print(f"[{result['verdict']:4s}] {result['product']:25s} | "
          f"TT: {result['tiktok_score']}/10 AMZ: {result['amazon_score']}/10 | "
          f"Combined: {result['combined_score']}/10")
    time.sleep(0.5)
total_cost = len(products) * 0.010
print(f'\nTotal cost: ${total_cost:.3f}')

Exemple Python

Python
import os, requests, time

SCAVIO_KEY = os.environ['SCAVIO_API_KEY']
TT_H = {'Authorization': f'Bearer {SCAVIO_KEY}', 'Content-Type': 'application/json'}
S_H = {'x-api-key': SCAVIO_KEY, 'Content-Type': 'application/json'}

def detect_trend(product):
    # TikTok search
    resp = requests.post('https://api.scavio.dev/api/v1/tiktok/search/videos', headers=TT_H,
        json={'keyword': product, 'count': 10, 'cursor': 0})
    videos = resp.json().get('data', {}).get('videos', [])
    plays = sum(v.get('stats', {}).get('playCount', 0) for v in videos)
    time.sleep(0.3)
    # Amazon cross-check
    resp2 = requests.post('https://api.scavio.dev/api/v1/search', headers=S_H,
        json={'query': f'site:amazon.com {product}', 'country_code': 'us', 'num_results': 5})
    amazon = len(resp2.json().get('organic_results', []))
    verdict = 'HOT' if plays > 500000 and amazon >= 3 else 'WARM' if plays > 100000 else 'COLD'
    print(f'[{verdict}] {product}: {plays:,} TT plays, {amazon} AMZ listings')

for p in ['LED sunset lamp', 'portable blender', 'cloud slides']:
    detect_trend(p)
    time.sleep(0.3)

Exemple JavaScript

JavaScript
const SCAVIO_KEY = process.env.SCAVIO_API_KEY;

async function detectTrend(product) {
  const tt = await fetch('https://api.scavio.dev/api/v1/tiktok/search/videos', {
    method: 'POST',
    headers: { Authorization: `Bearer ${SCAVIO_KEY}`, 'Content-Type': 'application/json' },
    body: JSON.stringify({ keyword: product, count: 10, cursor: 0 })
  }).then(r => r.json());
  const plays = (tt.data?.videos || []).reduce((s, v) => s + (v.stats?.playCount || 0), 0);
  const amz = await fetch('https://api.scavio.dev/api/v1/search', {
    method: 'POST',
    headers: { 'x-api-key': SCAVIO_KEY, 'Content-Type': 'application/json' },
    body: JSON.stringify({ query: `site:amazon.com ${product}`, country_code: 'us', num_results: 5 })
  }).then(r => r.json());
  const listings = (amz.organic_results || []).length;
  const verdict = plays > 500000 && listings >= 3 ? 'HOT' : plays > 100000 ? 'WARM' : 'COLD';
  console.log(`[${verdict}] ${product}: ${plays.toLocaleString()} TT plays, ${listings} AMZ listings`);
}

(async () => { for (const p of ['LED sunset lamp', 'portable blender']) await detectTrend(p); })();

Sortie attendue

JSON
Found 20 product videos
  1,234,567 plays | @cleanqueen       | This cleaning gadget changed my life
    892,345 plays | @organizewithme   | Kitchen organization haul from Amazon

TikTok Product Trend Detection
============================================================
  skincare routine product        |   4,523,000 plays | 8.2% eng
  cleaning gadget review          |   3,891,000 plays | 6.5% eng
  kitchen organization hack       |   2,156,000 plays | 7.1% eng

Trend Validation Report
=================================================================
[HOT ] LED sunset lamp             | TT: 7.2/10 AMZ: 8.0/10 | Combined: 7.6/10
[WARM] portable blender            | TT: 4.5/10 AMZ: 6.0/10 | Combined: 5.3/10
[HOT ] cloud slides shoes          | TT: 8.1/10 AMZ: 10.0/10 | Combined: 9.1/10

Total cost: $0.030

Tutoriels associés

  • Comment vérifier les créateurs TikTok pour des partenariats de marque
  • Comment suivre une campagne de hashtag TikTok via l'API
  • Comment valider la rentabilité d'un produit Amazon avec des données de recherche en direct
  • Comment construire un agent de détection de tendances avec YouTube et Google

Questions fréquentes

La plupart des développeurs terminent ce tutoriel en 15 à 30 minutes. Vous aurez besoin d'une clé API Scavio (l'offre gratuite suffit) et d'un environnement Python ou JavaScript fonctionnel.

Python 3.9+ installé. Bibliothèque requests installée. Une clé API Scavio depuis scavio.dev. Compréhension de base de l'approvisionnement en produits e-commerce. Une clé API Scavio vous donne 50 crédits gratuits à l'inscription.

Oui. L'offre gratuite comprend 50 crédits à l'inscription, ce qui est largement suffisant pour terminer ce tutoriel et prototyper une solution fonctionnelle.

Scavio dispose d'un package natif LangChain (langchain-scavio), d'un serveur MCP et d'une API REST simple qui fonctionne avec tout client HTTP. Ce tutoriel utilise the raw REST API, mais vous pouvez l'adapter à votre framework de prédilection.

Ressources connexes

Use Case

Détection des tendances produits TikTok pour le e-commerce

Read more
Best Of

Meilleurs outils de détection des tendances produits TikTok (Mai 2026)

Read more
Use Case

Recherche de produits dropship via API

Read more
Solution

Détecter les produits tendance sur TikTok avant leur pic

Read more
Solution

Détectez les produits tendance TikTok avant qu'ils ne deviennent viraux

Read more
Best Of

Meilleure API de recherche de produits TikTok en 2026

Read more

Commencer

Trouvez les produits tendance sur TikTok avant qu'ils n'atteignent leur pic en utilisant l'API TikTok. Détectez les produits viraux, suivez la vélocité d'engagement et validez avec les données de recherche.

Obtenez une clé API gratuiteLire la documentation
ScavioScavio

API de recherche en temps réel pour agents IA. Recherchez sur toutes les plateformes, pas seulement Google.

Produit

  • Fonctionnalités
  • Tarifs
  • Tableau de bord
  • Affiliés

Développeurs

  • Documentation
  • Référence API
  • Démarrage rapide
  • Intégration MCP
  • SDK Python

Alternatives

  • Alternative à Tavily
  • Alternative à SerpAPI
  • Alternative à Firecrawl
  • Alternative à Exa

Outils

  • Formateur JSON
  • cURL vers code
  • Compteur de jetons
  • Tous les outils

© 2026 Scavio. Tous droits réservés.

Featured on TAAFT
Conditions d'utilisationPolitique de confidentialité