jsonscraper
Markeder
Tilbake til journalen

Slik sjekker du reklamemerking i offentlige TikTok-videoer

Et Python-skript samler videoer fra merkevaresøk, markerer tydelige reklameformuleringer og lagrer en liste for manuell gjennomgang

Redaksjonelle retningslinjer Meld fra om en feil

For å finne offentlige TikTok-videoer som omtaler en merkevare og inneholder tydelige reklameformuleringer, kan du samle resultater fra flere søk, hente bildetekstene og markere signalord. Resultatet er en CSV-fil med lenker og tilgjengelige måltall – en kø for menneskelig gjennomgang, ikke en automatisk vurdering av om reglene er fulgt.

En slik arbeidsflyt kan være nyttig for et byrå som sammenligner en kampanje med en brief, eller et internt team som fører oversikt over offentlige omtaler. Den gjør søkeresultatene enklere å organisere og tar vare på tegnene analytikeren kan bruke til å avgjøre hvilken video som bør åpnes og undersøkes.

Hva bør du se etter i videoene?

Ved kontroll av reklame er det viktig å undersøke forbindelsen mellom skaperen og merkevaren, og hvordan den opplyses i forbindelse med en anbefaling. FTCs veiledning for influensere forklarer at en vesentlig forbindelse kan være økonomisk, arbeidsrelatert, personlig eller familiær, og at opplysningen må være tydelig og forståelig. For videoanbefalinger sier FTC at opplysningen bør stå i selve videoen, ikke bare i beskrivelsen. Bildeteksten er derfor nyttig for sortering, men viser ikke i seg selv hva seerne så i bildet eller hørte i lyden.

Dette skriptet har et mer avgrenset formål: å finne videoer i søkeresultatene der bildeteksten inneholder merkevareuttrykk og mulige markører som «reklame», «sponsor» eller «partnerskap». Tilpass ordlisten til kampanjens språk og terminologi. Hvis en markør ikke finnes i bildeteksten, åpner du videoen og undersøker innholdet: et teksttreff fastslår ikke om videoen selv inneholder en opplysning.

Hvordan gjør du søkeresultater om til en kø for gjennomgang?

Lag en kort liste med søkefraser: merkenavnet, kampanjen og en vanlig skrivemåte for produktet. Kjør hvert søk separat, og lagre søkefrasen sammen med resultatene. Da kan teamet se hvilket søk som fant videoen, og gjenta innsamlingen ved behov.

Artikkel: Slik sjekker du reklamemerking i offentlige TikTok-videoer
Sammendrag: Markedsføringsteam trenger ofte å finne offentlige TikTok-videoer som omtaler en merkevare og kan inneholde reklamemerking. Her viser vi hvordan du samler API-resultater, henter bildetekster og tilgjengelige måltall og markerer tydelige ord som «reklame» og «partnerskap» for videre gjennomgang.
Bildets rolle: illustrasjon som støtter artikkelen, aspekt 2 – en annen, spesifikk side
Del: Hvordan gjør du søkeresultater om til en kø for gjennomgang?
Diagrammet viser veien fra søkeresultater til en CSV-kø og manuell kontroll av reklamemerkingen i selve videoen.© jsonscraper · AI-generert illustrasjon
Artikkel: Slik sjekker du reklamemerking i offentlige TikTok-videoer
Sammendrag: Markedsføringsteam trenger ofte å finne offentlige TikTok-videoer som omtaler en merkevare og kan inneholde reklamemerking. Her viser vi hvordan du samler API-resultater, henter bildetekster og tilgjengelige måltall og markerer tydelige ord som «reklame» og «partnerskap» for videre gjennomgang.
Bildets rolle: forsidebilde – hovedideen
Del: Hvordan gjør du søkeresultater om til en kø for gjennomgang?
Visuelt motiv: russisk inf
Diagrammet viser veien fra søkeresultater til en CSV-kø og manuell kontroll av reklamemerkingen i selve videoen.© jsonscraper · laget med KI

Til innsamlingen kan du bruke TikTok Scraper API fra jsonscraper. Den dokumenterte GET-ruten /searchVideo ligger på https://tiktok.evelode.com og tar imot parameterne keyword, count, date_posted, sort_by, region og cursor. I et observert svar lå TikTok-dataene for videoer i search_item_list[].aweme_info; aweme_list kunne være tom. Parseren nedenfor sjekker begge plasseringene.

Nøkkelen sendes i parameteren license_key. Oppbevar den i en miljøvariabel, ikke i skriptet eller et kodelager. Dokumentasjonen for TikTok-rutene inneholder navnene på søkeparametrene; bruk den returnerte cursor-verdien for neste side. Ta vare på antallet behandlede objekter og selve søkefrasen: paginering lar deg fortsette gjennom resultatene, men fastslår ikke i seg selv at resultatsettet er fullstendig.

Et enkelt eksempel i Python

Skriptet sender én forespørsel for hver frase, samler begge dokumenterte resultatformatene, fjerner duplikater basert på video-ID, markerer ord i beskrivelsen og skriver en CSV-fil. Installer requests med kommandoen python -m pip install requests, angi JSONSCRAPER_TIKTOK_LICENSE_KEY i miljøet og kjør filen. Eksemplet fungerer med Python 3.8 og nyere.

import csv
import os
import sys
import requests

BASE_URL = "https://tiktok.evelode.com/searchVideo"
KEY = os.environ.get("JSONSCRAPER_TIKTOK_LICENSE_KEY")
if not KEY:
    raise SystemExit("Set JSONSCRAPER_TIKTOK_LICENSE_KEY first")

QUERIES = ["Example Brand", "Example Product", "Example Campaign"]
MARKERS = ("#реклама", "реклама", "спонсор", "партнерство", "партнёрство", "#ad", "sponsored")


def videos_from(payload):
    data = payload.get("tiktok") or {}
    videos = data.get("aweme_list") or []
    if not videos:
        videos = [
            item.get("aweme_info")
            for item in (data.get("search_item_list") or [])
            if isinstance(item, dict) and isinstance(item.get("aweme_info"), dict)
        ]
    return [video for video in videos if isinstance(video, dict)]


rows = {}
for query in QUERIES:
    response = requests.get(
        BASE_URL,
        params={"keyword": query, "count": 20, "date_posted": "this-month", "license_key": KEY},
        timeout=30,
    )
    response.raise_for_status()
    payload = response.json()
    if payload.get("status") != "ok":
        print("Unexpected API status for query:", query, file=sys.stderr)
        continue

    for video in videos_from(payload):
        video_id = video.get("aweme_id")
        if not video_id:
            continue
        author = video.get("author") or {}
        stats = video.get("statistics") or {}
        caption = video.get("desc") or ""
        matched = [word for word in MARKERS if word in caption.casefold()]
        row = rows.setdefault(str(video_id), {
            "video_id": str(video_id),
            "url": video.get("share_url") or "",
            "author": author.get("unique_id") or author.get("nickname") or "",
            "caption": caption,
            "queries": set(),
            "disclosure_markers": set(),
            "play_count": stats.get("play_count"),
            "digg_count": stats.get("digg_count"),
            "comment_count": stats.get("comment_count"),
            "review_status": "manual_review",
        })
        row["queries"].add(query)
        row["disclosure_markers"].update(matched)

with open("tiktok_disclosure_review.csv", "w", newline="", encoding="utf-8-sig") as file:
    fields = ["video_id", "url", "author", "caption", "queries", "disclosure_markers",
              "play_count", "digg_count", "comment_count", "review_status"]
    writer = csv.DictWriter(file, fieldnames=fields)
    writer.writeheader()
    for row in rows.values():
        row["queries"] = " | ".join(sorted(row["queries"]))
        row["disclosure_markers"] = " | ".join(sorted(row["disclosure_markers"]))
        writer.writerow(row)

print("Saved", len(rows), "unique returned videos")

Før du lagrer koden, bør du kontrollere statusen til det eksterne svaret og deretter dataene i tiktok. Normaliseringen leser begge plasseringene for videoer. For neste side kan du sende den mottatte cursor-verdien videre uendret; dette enkle eksemplet er med hensikt begrenset til én side per søk.

Hva viser CSV-filen?

Hver rad kobler sammen video-ID og lenke, tilgjengelig forfatter-ID, bildetekst, søkefraser og treff på markører. Hvis svaret inneholder tall for visninger, likerklikk og kommentarer, lagres de som kontekst for å velge rekkefølgen på gjennomgangen. Disse feltene kan mangle; skriptet lar dem stå tomme i stedet for å sette dem til null.

Åpne deretter videoen, kontroller om reklamemerkingen finnes og er tydelig i selve videoen, og registrer resultatet med avtalte kategorier, for eksempel «funnet», «trenger mer gjennomgang» eller «ikke funnet ved gjennomgang». Koden leter bare etter eksakte tekstmarkører i bildeteksten; den analyserer ikke bilde eller lyd og avgjør ikke om reglene er fulgt.

Hvis dette skal gjentas regelmessig, kan du kjøre innsamlingen etter en tidsplan, registrere tidspunktet for forespørselen og lagre den opprinnelige JSON-filen sammen med CSV-filen. Begrens søkelisten til nødvendige fraser og fastsett hvor lenge innsamlede data skal lagres. jsonscrapers retningslinjer for ansvarlig datainnsamling anbefaler rimelig forespørselsfrekvens, dataminimering og kontroll av KI-resultater før videre handling.

Resultatet er en etterprøvbar kø med offentlige videoer for manuell kontroll av reklamemerking: søketreff og tilgjengelige måltall hjelper deg med å velge hva du skal åpne først, mens vurderingen av selve videoen fortsatt gjøres av en kontrollør. Du kan kontrollere parameternavnene i dokumentasjonen for TikTok API og finne produktinformasjon på siden for TikTok Scraper API.

Mennesker

Ingen personer er oppført for denne artikkelen ennå.

Fortsett å leseTikTok: Gjør søkeresultater til en ukentlig liste over støttetemaer
Les neste artikkel

Gjør det du leser til en fungerende integrasjon

Utforsk jsonscrapers API-er for sosiale data, test forespørsler og bygg neste arbeidsflyt.

Utforsk API-er