ScavioScavio
ProduitTarifsDocumentation
ConnexionCommencer
  1. Accueil
  2. Tutoriels
  3. Comment créer un scanner d'étude de marché Reddit
Tutoriel

Comment créer un scanner d'étude de marché Reddit

Scannez Reddit pour les mentions de produits, les points douloureux et les demandes de fonctionnalités dans les subreddits. Pipeline Python à 0,005 $/requête pour l'étude de marché.

Obtenez une clé API gratuiteDocumentation API

Les fils de discussion Reddit contiennent des retours produits non filtrés, des demandes de fonctionnalités et des plaintes concurrentielles qu'aucune enquête ne peut reproduire. Ce scanner parcourt plusieurs subreddits à la recherche de signaux de marché, les classe par type (point douloureux, demande de fonctionnalité, mention de concurrent, intention d'achat) et génère un rapport de recherche priorisé. Chaque requête coûte 0,005 $ via le point d'accès Scavio Reddit.

Prérequis

  • Python 3.8+
  • Bibliothèque requests
  • Une clé API Scavio provenant de scavio.dev
  • Catégorie de produit ou marché cible à étudier

Parcours

Étape 1: Configurer le scanner d'étude de marché

Paramétrez des requêtes de recherche ciblant différents types de signaux de marché.

Python
import os, requests
from collections import defaultdict

API_KEY = os.environ['SCAVIO_API_KEY']
SH = {'x-api-key': API_KEY, 'Content-Type': 'application/json'}

def market_queries(product):
    return [
        f'{product} alternative to',
        f'{product} looking for recommendation',
        f'{product} vs',
        f'{product} problem with',
        f'{product} wish feature',
        f'{product} switched from',
    ]

PRODUCT = 'serp api'
queries = market_queries(PRODUCT)
print(f'Market research for "{PRODUCT}": {len(queries)} signal queries')
print(f'Estimated cost: ${len(queries) * 0.005:.3f}')

Étape 2: Scannez Reddit pour des signaux de marché

Exécutez des recherches et extrayez des signaux de marché structurés à partir des résultats.

Python
SIGNAL_TYPES = {
    'alternative to': 'switching_intent',
    'looking for': 'purchase_intent',
    'recommendation': 'purchase_intent',
    'vs': 'comparison',
    'problem with': 'pain_point',
    'wish feature': 'feature_request',
    'switched from': 'churn_signal'
}

def scan_signals(product):
    signals = defaultdict(list)
    for query in market_queries(product):
        data = requests.post('https://api.scavio.dev/api/v1/search',
            headers=SH, json={'query': query, 'platform': 'reddit', 'country_code': 'us'}).json()
        signal_type = next((v for k, v in SIGNAL_TYPES.items() if k in query), 'other')
        for r in data.get('organic_results', [])[:5]:
            signals[signal_type].append({
                'title': r.get('title', '')[:80],
                'snippet': r.get('snippet', '')[:150],
                'link': r.get('link', '')
            })
    return dict(signals)

signals = scan_signals(PRODUCT)
for stype, items in signals.items():
    print(f'\n{stype}: {len(items)} signals')
    for item in items[:2]:
        print(f'  - {item["title"][:60]}')

Étape 3: Extrayez les concurrents et les points douloureux

Analysez les signaux pour identifier les concurrents mentionnés et les points douloureux récurrents.

Python
def extract_competitors(signals):
    competitors = defaultdict(int)
    for items in signals.values():
        for item in items:
            text = f"{item['title']} {item['snippet']}".lower()
            known = ['serpapi', 'dataforseo', 'serper', 'scrapingbee', 'brightdata', 'apify', 'tavily', 'exa']
            for comp in known:
                if comp in text:
                    competitors[comp] += 1
    return dict(sorted(competitors.items(), key=lambda x: -x[1]))

def extract_pain_points(signals):
    pain_keywords = ['slow', 'expensive', 'unreliable', 'broken', 'complex', 'limited',
                     'missing', 'annoying', 'frustrating', 'confusing']
    pains = defaultdict(int)
    for items in signals.get('pain_point', []) + signals.get('churn_signal', []):
        text = f"{items['title']} {items['snippet']}".lower()
        for kw in pain_keywords:
            if kw in text:
                pains[kw] += 1
    return dict(sorted(pains.items(), key=lambda x: -x[1]))

comps = extract_competitors(signals)
pains = extract_pain_points(signals)
print(f'\nCompetitors mentioned: {comps}')
print(f'Pain points: {pains}')

Étape 4: Générez un rapport d'étude de marché

Combinez tous les signaux en un rapport d'étude de marché structuré.

Python
def market_report(product):
    signals = scan_signals(product)
    competitors = extract_competitors(signals)
    pains = extract_pain_points(signals)
    cost = len(market_queries(product)) * 0.005
    print(f'\n=== Market Research Report: {product} ===')
    print(f'\nSignal summary:')
    for stype, items in signals.items():
        print(f'  {stype:20}: {len(items)} signals')
    print(f'\nTop competitors mentioned:')
    for comp, count in list(competitors.items())[:5]:
        print(f'  {comp:20}: {count} mentions')
    print(f'\nTop pain points:')
    for pain, count in list(pains.items())[:5]:
        print(f'  {pain:20}: {count} mentions')
    # High-intent signals
    purchase = signals.get('purchase_intent', [])
    print(f'\nHigh-intent threads ({len(purchase)}):')
    for p in purchase[:3]:
        print(f'  - {p["title"][:60]}')
    print(f'\nCost: ${cost:.3f}')

market_report('serp api')

Exemple Python

Python
import os, requests
from collections import defaultdict
SH = {'x-api-key': os.environ['SCAVIO_API_KEY'], 'Content-Type': 'application/json'}

def scan(product):
    signals = defaultdict(list)
    for q in [f'{product} alternative', f'{product} vs', f'{product} problem']:
        data = requests.post('https://api.scavio.dev/api/v1/search',
            headers=SH, json={'query': q, 'platform': 'reddit', 'country_code': 'us'}).json()
        for r in data.get('organic_results', [])[:3]:
            signals[q.split()[-1]].append(r.get('title', '')[:60])
    for stype, items in signals.items():
        print(f'{stype}: {len(items)} signals')
        for i in items[:2]: print(f'  - {i}')

scan('serp api')

Exemple JavaScript

JavaScript
const SH = { 'x-api-key': process.env.SCAVIO_API_KEY, 'Content-Type': 'application/json' };
async function scan(product) {
  for (const suffix of ['alternative', 'vs', 'problem']) {
    const data = await fetch('https://api.scavio.dev/api/v1/search', {
      method: 'POST', headers: SH,
      body: JSON.stringify({ query: `${product} ${suffix}`, platform: 'reddit', country_code: 'us' })
    }).then(r => r.json());
    console.log(`${suffix}: ${(data.organic_results || []).length} results`);
    (data.organic_results || []).slice(0, 2).forEach(r => console.log(`  - ${r.title.slice(0, 60)}`));
  }
}
scan('serp api').catch(console.error);

Sortie attendue

JSON
Market research for "serp api": 6 signal queries
Estimated cost: $0.030

switching_intent: 8 signals
  - Looking for SerpAPI alternative, too expensive for startup
  - Switched from SerpAPI to something cheaper
purchase_intent: 6 signals
comparison: 7 signals
pain_point: 5 signals

Top competitors mentioned:
  serpapi             : 8 mentions
  dataforseo          : 5 mentions
  serper              : 3 mentions

Cost: $0.030

Tutoriels associés

  • Comment noter les fils Reddit par intention d’achat
  • Comment construire un scanner de sentiment boursier Reddit
  • Comment construire un moniteur personnel Reddit

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.8+. Bibliothèque requests. Une clé API Scavio provenant de scavio.dev. Catégorie de produit ou marché cible à étudier. 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

Best Of

Meilleures API Reddit avec filtrage par fraîcheur (2026)

Read more
Best Of

Meilleure API pour les études de marché en 2026

Read more
Use Case

Étude de marché SaaS sur Reddit

Read more
Solution

Découverte de la demande sur Reddit pour les fondateurs

Read more
Workflow

Analyse de fraîcheur de la demande Reddit

Read more
Use Case

Recherche de produits dropship via API

Read more

Commencer

Scannez Reddit pour les mentions de produits, les points douloureux et les demandes de fonctionnalités dans les subreddits. Pipeline Python à 0,005 $/requête pour l'étude de marché.

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é