ScavioScavio
ProductoPreciosDocumentación
Iniciar sesionComenzar
  1. Inicio
  2. Tutoriales
  3. Cómo desarrollar la escucha social en TikTok
Tutorial

Cómo desarrollar la escucha social en TikTok

Supervise TikTok en busca de menciones de marca, comentarios de videos y señales de sentimiento. Canalización diaria utilizando la API Scavio TikTok a $0,005/llamada.

Obtener clave API gratisDocumentacion API

La escucha social de TikTok capta menciones de marcas, discusiones sobre productos y cambios de sentimiento que no aparecen en ninguna otra plataforma. Este canal busca videos de TikTok en busca de palabras clave de marca, extrae comentarios de videos relevantes, clasifica opiniones y genera un resumen diario. Cada búsqueda y comentario cuesta $0,005.

Requisitos previos

  • Python 3.8+
  • solicita biblioteca
  • Una clave API de Scavio de scavio.dev
  • Términos de marca y palabras clave para monitorear

Guia paso a paso

Paso 1: Buscar videos de TikTok para menciones de marca

Encuentre videos que mencionen su marca o categoría de producto.

Python
import os, requests, json
from datetime import datetime
from collections import Counter

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

BRAND_TERMS = ['scavio', 'serp api', 'search api']

def search_tiktok(query):
    data = requests.post('https://api.scavio.dev/api/v1/tiktok/search/videos',
        headers=TH, json={'query': query}).json()
    videos = data.get('videos', data.get('data', {}).get('videos', []))
    return [{'id': v.get('id', ''), 'desc': v.get('desc', '')[:100],
             'author': v.get('author', {}).get('uniqueId', 'unknown'),
             'plays': v.get('stats', {}).get('playCount', 0),
             'likes': v.get('stats', {}).get('diggCount', 0),
             'comments': v.get('stats', {}).get('commentCount', 0)} for v in videos]

all_videos = []
for term in BRAND_TERMS:
    videos = search_tiktok(term)
    all_videos.extend(videos)
    print(f'  "{term}": {len(videos)} videos found')
print(f'Total: {len(all_videos)} videos. Cost: ${len(BRAND_TERMS) * 0.005:.3f}')

Paso 2: Extraiga comentarios de vídeos relevantes

Obtenga comentarios de videos de alta participación para realizar análisis de sentimientos.

Python
def get_comments(video_id):
    data = requests.post('https://api.scavio.dev/api/v1/tiktok/video/comments',
        headers=TH, json={'video_id': video_id}).json()
    comments = data.get('comments', data.get('data', {}).get('comments', []))
    return [{'text': c.get('text', '')[:200],
             'likes': c.get('digg_count', c.get('likes', 0)),
             'user': c.get('user', {}).get('uniqueId', c.get('user', {}).get('unique_id', 'anon'))}
            for c in comments]

# Get comments from top videos by engagement
top_videos = sorted(all_videos, key=lambda v: v['likes'], reverse=True)[:5]
all_comments = []
for v in top_videos:
    if v['id']:
        comments = get_comments(v['id'])
        all_comments.extend(comments)
        print(f'  @{v["author"]}: {len(comments)} comments (video: {v["likes"]:,} likes)')

print(f'Total comments: {len(all_comments)}. Cost: ${len(top_videos) * 0.005:.3f}')

Paso 3: Clasificar sentimientos a partir de comentarios

Califique los comentarios según el sentimiento para medir la percepción de la marca.

Python
POSITIVE = ['love', 'great', 'amazing', 'best', 'awesome', 'perfect', 'fire', 'goat',
            'recommend', 'game changer', 'saved', 'finally']
NEGATIVE = ['hate', 'terrible', 'worst', 'scam', 'trash', 'overrated', 'expensive',
            'broken', 'waste', 'disappointed', 'avoid']

def classify_comment(text):
    text_lower = text.lower()
    pos = sum(1 for w in POSITIVE if w in text_lower)
    neg = sum(1 for w in NEGATIVE if w in text_lower)
    if pos > neg: return 'positive'
    if neg > pos: return 'negative'
    return 'neutral'

def sentiment_analysis(comments):
    sentiments = Counter()
    examples = {'positive': [], 'negative': [], 'neutral': []}
    for c in comments:
        sentiment = classify_comment(c['text'])
        sentiments[sentiment] += 1
        if len(examples[sentiment]) < 3:
            examples[sentiment].append(c['text'][:80])
    total = len(comments)
    print(f'\nSentiment Analysis ({total} comments):')
    for sent in ['positive', 'negative', 'neutral']:
        pct = sentiments[sent] / total * 100 if total else 0
        print(f'  {sent}: {sentiments[sent]} ({pct:.0f}%)')
        for ex in examples[sent][:2]:
            print(f'    "{ex}"')
    return dict(sentiments)

sentiment_analysis(all_comments)

Paso 4: Generar un resumen diario de escucha social

Combine menciones en vídeo y opiniones de comentarios en un informe diario.

Python
def daily_digest(brand_terms):
    print(f'\n=== TikTok Social Listening Digest - {datetime.now().strftime("%Y-%m-%d")} ===')
    all_videos = []
    cost = 0
    for term in brand_terms:
        videos = search_tiktok(term)
        all_videos.extend(videos)
        cost += 0.005
    # Deduplicate
    seen = set()
    unique = [v for v in all_videos if v['id'] not in seen and not seen.add(v['id'])]
    print(f'\nVideos found: {len(unique)} (from {len(brand_terms)} searches)')
    total_plays = sum(v['plays'] for v in unique)
    total_likes = sum(v['likes'] for v in unique)
    print(f'Total reach: {total_plays:,} plays, {total_likes:,} likes')
    # Top videos
    top = sorted(unique, key=lambda v: v['plays'], reverse=True)[:5]
    print(f'\nTop mentions:')
    for v in top:
        print(f'  @{v["author"]:20} | {v["plays"]:>10,} plays | {v["desc"][:40]}')
    # Comments from top videos
    all_comments = []
    for v in top[:3]:
        if v['id']:
            comments = get_comments(v['id'])
            all_comments.extend(comments)
            cost += 0.005
    if all_comments:
        sentiment_analysis(all_comments)
    print(f'\nDigest cost: ${cost:.3f}')

daily_digest(BRAND_TERMS)

Ejemplo en Python

Python
import os, requests
TH = {'Authorization': f'Bearer {os.environ["SCAVIO_API_KEY"]}', 'Content-Type': 'application/json'}

def listen(brand):
    data = requests.post('https://api.scavio.dev/api/v1/tiktok/search/videos',
        headers=TH, json={'query': brand}).json()
    videos = data.get('videos', data.get('data', {}).get('videos', []))
    print(f'{brand}: {len(videos)} TikTok mentions')
    for v in videos[:3]:
        print(f'  @{v.get("author", {}).get("uniqueId", "?")}: {v.get("desc", "")[:40]} ({v.get("stats", {}).get("playCount", 0):,} plays)')
    print(f'Cost: $0.005')

listen('serp api')

Ejemplo en JavaScript

JavaScript
const TH = { 'Authorization': `Bearer ${process.env.SCAVIO_API_KEY}`, 'Content-Type': 'application/json' };
async function listen(brand) {
  const data = await fetch('https://api.scavio.dev/api/v1/tiktok/search/videos', {
    method: 'POST', headers: TH, body: JSON.stringify({ query: brand })
  }).then(r => r.json());
  const videos = data.videos || data.data?.videos || [];
  console.log(`${brand}: ${videos.length} TikTok mentions`);
  videos.slice(0, 3).forEach(v =>
    console.log(`  @${v.author?.uniqueId || '?'}: ${(v.desc || '').slice(0, 40)}`));
}
listen('serp api').catch(console.error);

Salida esperada

JSON
  "scavio": 5 videos found
  "serp api": 12 videos found
  "search api": 8 videos found
Total: 25 videos. Cost: $0.015

=== TikTok Social Listening Digest - 2026-05-19 ===
Videos found: 20 (from 3 searches)
Total reach: 450,000 plays, 32,000 likes

Top mentions:
  @devtools_review     |    120,000 plays | Best SERP APIs ranked for developers
  @startup_hacks       |     89,000 plays | I replaced my web scraper with this

Sentiment Analysis (45 comments):
  positive: 28 (62%)
    "This is exactly what I needed for my project"
  negative: 5 (11%)
  neutral: 12 (27%)

Digest cost: $0.030

Tutoriales relacionados

  • Cómo crear un rastreador de competidores de TikTok
  • Cómo crear análisis de cuentas públicas a través de la API de TikTok
  • Cómo recopilar UGC de los hashtags de TikTok

Preguntas frecuentes

La mayoria de los desarrolladores completan este tutorial en 15 a 30 minutos. Necesitaras una clave API de Scavio (el plan gratuito funciona) y un entorno de Python o JavaScript.

Python 3.8+. solicita biblioteca. Una clave API de Scavio de scavio.dev. Términos de marca y palabras clave para monitorear. Una clave API de Scavio te da 50 creditos gratuitos al registrarte.

Si. El plan gratuito incluye 50 creditos al registrarte, mas que suficiente para completar este tutorial y crear un prototipo funcional.

Scavio tiene un paquete nativo de LangChain (langchain-scavio), un servidor MCP y una API REST simple que funciona con cualquier cliente HTTP. Este tutorial usa the raw REST API, pero puedes adaptarlo al framework que prefieras.

Recursos relacionados

Best Of

Las mejores API de análisis de hashtags de TikTok (2026)

Read more
Best Of

Las mejores API de datos de TikTok sin autenticación en 2026

Read more
Glossary

API no oficial de TikTok

Read more
Comparison

TikTok Proxy Scraping vs TikTok Third-Party API (Scavio, TikAPI)

Read more
Glossary

Cumplimiento de la API de TikTok versus raspado

Read more
Comparison

Apify TikTok Scraper vs Scavio TikTok API

Read more

Empieza a construir

Supervise TikTok en busca de menciones de marca, comentarios de videos y señales de sentimiento. Canalización diaria utilizando la API Scavio TikTok a $0,005/llamada.

Obtener clave API gratuitaLeer la documentacion
ScavioScavio

API de busqueda en tiempo real para agentes de IA. Busca en todas las plataformas, no solo en Google.

Producto

  • Funciones
  • Precios
  • Panel
  • Afiliados

Desarrolladores

  • Documentacion
  • Referencia de API
  • Inicio rapido
  • Integracion MCP
  • Python SDK

Alternativas

  • Alternativa a Tavily
  • Alternativa a SerpAPI
  • Alternativa a Firecrawl
  • Alternativa a Exa

Herramientas

  • Formateador JSON
  • cURL a codigo
  • Contador de tokens
  • Todas las herramientas

© 2026 Scavio. Todos los derechos reservados.

Featured on TAAFT
Terminos de servicioPolitica de privacidad