jsonscraper
Marknader
Tillbaka till journalen

Så hittar du återkommande produktfrågor på TikTok

Samla offentliga videor med flera sökfraser, slå ihop resultaten och omvandla formuleringarna du hittar till en arbetskö för support- eller innehållsteamet.

Redaktionella riktlinjer Rapportera ett fel

Om kunder ställer samma fråga i flera TikTok-videor är det användbart för supportteamet att få en lista över originalvideorna och formuleringarna som kan granskas. Börja med att samla sökresultat för flera sökfraser, slå ihop dem utifrån video-ID och lämna urvalet för manuell märkning.

Nedan finns ett Python-skript som samlar in returnerade resultat och skapar en CSV-fil med länkar, videobeskrivningar och sökfraserna som hittade varje video. Det hjälper dig att se överlappningar mellan sökningarna, men identifierar inte i sig semantiskt liknande frågor. Den bedömningen görs av en specialist eller en separat klassificerare, följt av mänsklig granskning.

Vilken fråga ska insamlingen besvara?

Anta att ett team säljer en termosmugg och vill förstå vad människor frågar om i offentliga videor. Sökningen ”termosmuggen läcker” kan ge videor med klagomål, recensioner och instruktioner. Sökningen ”hur rengör man en termosmugg” ger ett annat urval. Flera uttryck skapar en praktisk uppsättning exempel för granskning av supporten och innehållsplanen.

Artikel: Så hittar du återkommande produktfrågor på TikTok
Sammanfattning: Vi visar hur du med TikTok Scraper API hämtar videor för flera sökfraser, extraherar beskrivningar och länkar, tar bort dubbletter och skapar ett urval för att granska återkommande frågor – utan att ersätta saknade mätvärden med nollor.
Bildens roll: omslagsbild – huvudidén
Avsnitt: Vilken fråga ska insamlingen besvara?
Visuellt motiv: Redaktionellt stilleben, en praktisk pappersbaserad karta över forskning kring offentliga kortvideor: flera videolänk
Länkar till inläggen gör det möjligt att kontrollera sammanhanget och gruppera bekräftade frågor manuellt.© jsonscraper · skapad med AI

Resultatet från skriptet är en tabell där varje post har ett publicerings-ID, en beskrivning, en länk och en lista över sökfraserna som hittade den. Att en video förekommer i flera resultat visar att sökningarna överlappar, men bevisar inte att videon innehåller en återkommande fråga. Öppna länkarna, kontrollera sammanhanget och tilldela bekräftade formuleringar ett ämne för att skapa en frågekö.

Arbetssättet är användbart för utvecklare som automatiserar insamlingen och analytiker som behöver ett reproducerbart underlag för granskning. Kopplingen till originalvideon gör att slutsatsen kan kontrolleras innan en instruktion ändras eller nytt material tas fram.

Vilka data returnerar sökningen?

Rutten /searchVideo och dess parametrar anges i TikTok API-referensen. keyword är obligatorisk; bland de ytterligare parametrarna finns count, cursor, region, date_posted, sort_by och cache_timeout. Förfrågan autentiseras med parametern license_key. Exemplet nedan använder en fras och en sidstorlek.

I den verifierade svarstypen finns ett överordnat status och ett tiktok-objekt. Poster kan innehålla ID, beskrivning, länk, information om skaparen och statistik, inklusive visningar och kommentarer. Enskilda fält kan saknas: i CSV-filen lämnas sådana värden därför tomma i stället för att omvandlas till noll.

Söksvaret stöder två datastrukturer: poster kan finnas i aweme_list eller i search_item_list[].aweme_info. Normaliseraren hanterar båda varianterna. Koden kontrollerar också att objektet tiktok finns, så att ett oväntat svarsformat inte misstas för ett lyckat, tomt resultat.

En färdig insamlare i Python

Exemplet fungerar med Python 3.8+ och biblioteket requests. Det gör en förfrågan per fras, kontrollerar HTTP-svaret och API-statusen, slår ihop poster utifrån ID, sparar matchande sökfraser och skriver en CSV-fil. Nyckeln läses från en miljövariabel och skrivs inte ut.

Artikel: Så hittar du återkommande produktfrågor på TikTok
Sammanfattning: Vi visar hur du med TikTok Scraper API hämtar videor för flera sökfraser, extraherar beskrivningar och länkar, tar bort dubbletter och skapar ett urval för att granska återkommande frågor – utan att ersätta saknade mätvärden med nollor.
Bildens roll: kompletterande illustration 2 – en annan specifik aspekt
Avsnitt: En färdig insamlare i Python
Visuellt motiv: Infografik på ryska som visar verifierade arbetsflödessteg: tre sökningar med nyckelord
Diagrammet visar två typer av poster i söksvaret och hur de normaliseras till en CSV-fil för manuell granskning.© jsonscraper · AI-genererad illustration
import csv
import os
import sys
import requests

BASE_URL = "https://tiktok.evelode.com/searchVideo"
KEY = os.environ.get("JSONSCRAPER_TIKTOK_LICENSE_KEY")
QUERIES = [
    "termosmuggen läcker",
    "hur rengör man en termosmugg",
    "termosmuggen håller inte värmen",
]

if not KEY:
    sys.exit("Ange JSONSCRAPER_TIKTOK_LICENSE_KEY")

def extract_items(payload):
    data = payload.get("tiktok")
    if not isinstance(data, dict):
        raise RuntimeError("Svaret saknar objektet tiktok")

    items = list(data.get("aweme_list") or [])
    for entry in data.get("search_item_list") or []:
        video = entry.get("aweme_info") if isinstance(entry, dict) else None
        if isinstance(video, dict):
            items.append(video)
    return items

rows = {}

for query in QUERIES:
    response = requests.get(
        BASE_URL,
        params={"license_key": KEY, "keyword": query, "count": 20},
        timeout=30,
    )
    response.raise_for_status()
    payload = response.json()
    if payload.get("status") != "ok":
        raise RuntimeError("API returnerade en annan status än ok")

    for item in extract_items(payload):
        video_id = item.get("aweme_id")
        if not video_id:
            continue
        stats = item.get("statistics") or {}
        author = item.get("author") or {}
        row = rows.setdefault(video_id, {
            "video_id": video_id,
            "description": item.get("desc"),
            "share_url": item.get("share_url"),
            "author": author.get("nickname"),
            "play_count": stats.get("play_count"),
            "comment_count": stats.get("comment_count"),
            "matched_queries": set(),
        })
        row["matched_queries"].add(query)

fields = ["video_id", "description", "share_url", "author",
          "play_count", "comment_count", "matched_queries"]
with open("tiktok_questions.csv", "w", newline="", encoding="utf-8-sig") as file:
    writer = csv.DictWriter(file, fieldnames=fields)
    writer.writeheader()
    for row in rows.values():
        output = dict(row)
        output["matched_queries"] = " | ".join(sorted(row["matched_queries"]))
        writer.writerow(output)

Installera beroendet med kommandot python -m pip install requests, ange JSONSCRAPER_TIKTOK_LICENSE_KEY i processens miljö och kör filen. Lägg inte nyckeln i källkoden, CSV-filen eller loggarna. För schemalagda körningar startar du skriptet i en skyddad miljö där uppgiften har tillgång till variabeln.

Så omvandlar du CSV-filen till en frågekö

Öppna videorna efter insamlingen och plocka manuellt ut de faktiska frågorna. Gruppera sedan de bekräftade formuleringarna efter ämne, till exempel ”täthet”, ”skötsel” eller ”värmehållning”. Sökfrasen hjälper dig att hitta inlägget, men videobeskrivningen och överlappande sökresultat ersätter inte en kontroll av sammanhanget.

Om du använder en språkmodell kan du ge den beskrivningen och be den föreslå en kort ämnesetikett och en möjlig fråga. Spara originaltexten, länken och modellens resultat tillsammans, så att en specialist kan kontrollera grunden för klassificeringen. Presentera inte en formulering som modellen föreslagit som en ordagrann fråga om den inte finns i beskrivningen.

Antalet poster som hittas beskriver endast resultaten som returnerades för de specifika sökningarna. Det mäter inte den totala omfattningen av diskussioner eller efterfrågan. Spara kördatum, den ursprungliga frasen, ID och det obearbetade API-svaret i interna rapporter. Då kan du jämföra resultat från upprepade körningar och markera nya ID separat.

Exemplet saknar avsiktligt automatisk sidindelning. För efterföljande sidor anger dokumentationen parametern cursor; värdet hämtas från föregående svar och skickas vidare utan ändringar. En sida motsvarar bara den returnerade resultatmängden, inte hela sökresultatet.

Det här får teamet

Filen tiktok_questions.csv innehåller en rad per unikt ID som hittats med de angivna fraserna. Kolumnen matched_queries visar vilka sökningar som hittade videon. Det är ett praktiskt sätt att hitta överlappningar mellan resultat och välja exempel för granskning; frågorna måste klassificeras separat.

Därefter kan CSV-filen ingå i veckovis automatisering: en schemaläggare kör insamlingen, ett datalager sparar en ögonblicksbild och en avisering skickas när ett ID dyker upp som inte redan finns i loggen. Det är logik för extern orkestrering, inte en funktion i sökendpointen. Teamet får en kö med länkar att analysera, inte en färdig slutsats om orsakerna bakom kundernas beteende.

Parametrarna för rutterna finns i API-dokumentationen; du kan testa en förfrågan på TikTok API:s demoplattform. Kontrollera den faktiska svarsstrukturen innan du börjar samla in regelbundet och spara de värden som behövs för att gå från en sammanfattning till en specifik video. Produktbeskrivningen finns på sidan för TikTok Scraper API.

Det användbara resultatet är en verifierbar uppsättning videor kopplade till specifika sökfraser. Den hjälper dig att välja material för manuell granskning och spara källorna till varje ämne som tas med i innehållsplanen.

Personer

Inga personer listade för denna artikel ännu.

Fortsätt läsaSå analyserar du TikTok-skapares ämnen: ett praktiskt Python-arbetsflöde
Läs nästa artikel

Gör det du läser till en fungerande integration

Utforska jsonscrapers API:er för social data, testa anrop och bygg nästa arbetsflöde.

Utforska API:er