jsonscraper

TikTok-hashtagien seuranta Pythonilla: toimiva API-kysely

Tarkista reitti ja parametrit Postmanissa, tallenna API-vastaukset ja rakenna havaintohistoria vahvistettujen tietojen pohjalta.

Toimituksellinen linjaus Ilmoita virheestä

Markkinointitiimi huomaa, että TikTokissa julkaistaan videoita uudesta tuotteesta, mutta useiden hashtagien tarkistaminen käsin joka päivä on hankalaa. Julkaisujen ja näkyvien tunnuslukujen vertailuun ajan mittaan tarvitaan toistettava keräys, jossa on aikaleima, alkuperäisten vastausten arkisto ja muutosten tarkistus.

Artikkeli: TikTok-hashtagien seuranta Pythonilla: toimiva API-kysely
Yhteenveto: Käytännön opas julkisten TikTok-videoiden keräämiseen hashtagilla: reitin tarkistus, Python-kyselyt, JSON-arkistointi ja vastauksen vahvistettujen kenttien käsittely.
Kuvan rooli: kansikuva – keskeinen ajatus
Osio: 
Visuaalinen aihe: Editorial-henkinen asetelma: painettu sosiaalisen median analytiikan aikajana älypuhelimen vieressä. Puhelimen näytöllä on yleisluontoinen lyhytvideoiden hashtag-syöte, värikkäitä hashtag-kortteja ja päivättyjä JSON-havaintoja she
© jsonscraper · Tekoälyn luoma kuvitus

Tällaiseen prototyyppiin sopii jsonscraperin TikTok Scraper API: tuotesivulla luetellaan reitit hashtageille, käyttäjille, videoille ja haulle. Ensimmäiseksi tarkistetaan tarvittava reitti ja vastausmuoto Postmanissa, minkä jälkeen vahvistettu määritys siirretään Pythoniin. Näin voidaan rakentaa toistettava prosessi ja poimia vain ne kentät, jotka vastauksessa todella esiintyvät.

Tavoitteena kehityksen seuraaminen, ei yksittäinen suosittu video

Yksi suuren katselumäärän saanut julkaisu voi herättää huomiota, mutta kampanjan suunnittelussa on hyödyllisempää tietää, kuinka monta uutta videota aiheesta löytyy ja miten jo löydettyjen julkaisujen julkiset tunnusluvut muuttuvat. Esimerkiksi urheiluvälineiden verkkokaupan on tärkeää arvioida tiettyä harjoittelumuotoa käsittelevien videoiden määrää ennen siihen liittyvien mainosaineistojen valmistelua.

Käsin tehtävä tarkistus vaikeuttaa vertailua: tulosjoukko muuttuu, tunnusluvut kasvavat ja työntekijät voivat tallentaa ne eri muodoissa. Kun jokaisen ajon tilannekuva tallennetaan keruuajan ja alkuperäisen JSONin kanssa, tiimille muodostuu omien havaintojen historia. Tiedot voidaan käsitellä uudelleen myös analytiikkamallin muuttuessa.

Automaatio koostuu muutamasta vaiheesta: tarkista reitti ja parametrit, hae tiedot aikataulun mukaan, tallenna vastaus, varmista sen rakenne ja poimi sitten tarvittavat kentät. Tuloksena olevaa taulukkoa voi käyttää kaavioihin, aiheiden luokitteluun tai raporttiin.

Mitä API-dokumentaatio vahvistaa

TikTok Scraper API -sivulla ilmoitetaan perusosoitteeksi https://tiktok.evelode.com ja luetellaan hashtag-reitit: GET /getHashtagInfo, GET /getHashtagFeed ja GET /getHashtagFeedByID. Sivulla on myös esimerkkipyyntö toiselle reitille license_key-parametrilla, ja siinä kuvataan avaimen määrittäminen Postman-kokoelmassa.

GET /getHashtagFeed -reitille virallisessa reittimäärityksessä ilmoitetaan pakollinen query-parametri (hashtag-URL tai tagin nimi) sekä valinnaiset parametrit cursor, count, region ja cache_timeout. Syötevastauksen odotetaan sisältävän taulukon tiktok.aweme_list; lueteltuja alkiokenttiä ovat aweme_id, desc, create_time, share_url, tekijän tiedot ja statistics. Yksittäisiä kenttiä voi puuttua, joten tarkista todellinen JSON ennen käsittelyä.

jsonscraperin Postman-kokoelmassa voi tehdä koepyynnön, tarkistaa todellisen vastauksen ja luoda testiesimerkin myöhempää koodin tarkistusta varten. Tunnistautumisessa välitetään license_key; säilytä avain ympäristömuuttujassa äläkä tulosta sitä lokeihin.

Tarkista pyyntö ensin Postmanissa

Aloita yhdellä testihashtagilla. Valitse kokoelmasta hashtag-syötteen reitti, määritä license_key dokumentaatiossa kuvatulla tavalla ja välitä tagin nimi query-parametrissa. Lisää tarvittaessa count ja maan koodi parametrissa region. Suorita pyyntö ja tarkista HTTP-tila, ylimmän tason status-kenttä sekä tiktok.aweme_list-sisältö.

Tallenna onnistunut vastaus testikäyttöön tarkoitettuun JSON-tiedostoon. Tarkista sen avulla, löytyvätkö julkaisun tunniste, kuvaus, julkaisuaika, linkki ja tilastotiedot. Lisää kenttä analytiikkamalliin vasta, kun olet varmistanut, että se saapuu odotetussa tietotyypissä.

Säilytä API-avain ympäristömuuttujassa, älä lähdetiedostossa. Jos avain välitetään URL-osoitteessa, peitä se pyyntöä lokitettaessa, jotta koko osoite ei päädy lokeihin.

Python-asiakas pyyntöihin ja arkistointiin

Alla oleva reitti ja parametrien nimet vastaavat julkaistua määritystä: hashtagille käytetään query-parametria ja tunnistautumisessa välitetään license_key. Esimerkki toimii Python 3.8+:ssa ja tallentaa alkuperäisen vastauksen yhdessä ajon metatietojen kanssa.

import json
import os
from datetime import datetime, timezone
from pathlib import Path

import requests

BASE_URL = "https://tiktok.evelode.com"
API_KEY = os.environ["JSONSCRAPER_TIKTOK_LICENSE_KEY"]


def fetch_hashtag_feed(hashtag: str) -> dict:
    params = {
        "license_key": API_KEY,
        "query": hashtag,
        "count": 20,
    }
    response = requests.get(
        f"{BASE_URL}/getHashtagFeed",
        params=params,
        timeout=45,
    )
    response.raise_for_status()
    payload = response.json()
    if payload.get("status") != "ok":
        raise RuntimeError("API palautti muun kuin ok-tilan")
    return payload


def archive_response(hashtag: str, payload: dict) -> Path:
    collected_at = datetime.now(timezone.utc).isoformat()
    safe_tag = hashtag.lstrip("#").replace("/", "_")
    output_dir = Path("data/raw") / safe_tag
    output_dir.mkdir(parents=True, exist_ok=True)

    filename = datetime.now(timezone.utc).strftime("%Y%m%dT%H%M%SZ.json")
    file_path = output_dir / filename
    file_path.write_text(
        json.dumps(
            {
                "hashtag": hashtag,
                "collected_at": collected_at,
                "response": payload,
            },
            ensure_ascii=False,
            indent=2,
        ),
        encoding="utf-8",
    )
    return file_path


if __name__ == "__main__":
    tag = "#esimerkkiaihe"
    payload = fetch_hashtag_feed(tag)
    saved_path = archive_response(tag, payload)
    print(f"Arkisto tallennettu: {saved_path}")

Aseta ennen ajoa ympäristömuuttuja JSONSCRAPER_TIKTOK_LICENSE_KEY. Pyyntö käyttää vahvistettua query-parametria ja rajoittaa pyydettyjen alkioiden määrää count-parametrilla. Vastauksesta tarkistetaan HTTP-tila ja JSON-tila; arkistoon tallennetaan todelliset tiedot myöhempää käsittelyä varten. Testaa ajo yhdellä hashtagilla ennen aikataulutuksen ja analytiikan lisäämistä.

Normalisoinnin lisääminen ilman hauraita oletuksia

Syötevastauksen dokumentaatiossa ilmoitetaan taulukko tiktok.aweme_list. Tarkista ennen muuntamista, että tiktok on objekti ja aweme_list lista. Poimi kustakin alkiosta vain vahvistetut kentät, kuten aweme_id, desc, create_time, share_url ja statistics-arvot, jos niitä on saatavilla.

Sisäinen taulukko voi sisältää kyselyssä käytetyn hashtagin, keruuajan, videon tunnisteen ja valitut mittarit. Tallenna valinnaisen tai puuttuvan mittarin arvoksi tyhjä arvo: mittarin puuttuminen on eri asia kuin mitattu nolla. Säilytä alkuperäiset vastaukset erillään, jotta taulukon voi muodostaa uudelleen ilman uutta pyyntöä.

Jos vastausmuoto muuttuu, tyyppitarkistuksen tulee pysäyttää virheellinen käsittely ja luoda diagnostiikkaviesti. Säilytä testikäyttöön tarkoitettu JSON jäsentimen testin rinnalla: sen avulla voi tarkistaa, että koodin uusi versio käsittelee edelleen tunnettua rakennetta.

Toistuviin havaintoihin perustuvat mittarit

Jos vastaus sisältää laskureita, tallenna jokainen havainto aikaleiman kanssa. Vertaa yhden julkaisun arvoja kahdella ajokerralla ja laske havaittu muutos niiden väliseltä ajalta. Käytä täsmäytykseen määrityksessä mainittua aweme_id-tunnistetta ja tarkista, että se löytyy jokaisesta alkiosta.

Päivän aikana ensimmäistä kertaa löydettyjen julkaisujen määrän voi laskea omien ajojen tuloksista. Mittari kuvaa tiettyjen kyselyjen palauttamien julkaisujen virtaa käytetyillä parametreilla ja aikataululla. Sen avulla voi vertailla omia tilannekuvia, kun keruumenetelmä pysyy samana.

Vähimmäisraportti voi näyttää päivittäin löydettyjen uusien julkaisujen määrän, saatavilla olevien laskureiden jakauman ja uudelleen löydettyjen videoiden arvojen muutokset. Lisää kyselyaika ja lähdetiedoston nimi, jotta analyytikko voi tarkistaa kunkin tietueen alkuperän.

Aikataulutus ja virheiden käsittely

Kun pyyntö ja jäsentäminen on testattu, suorita skripti aikataulun mukaan esimerkiksi cronilla, GitHub Actionsilla tai dataorkestroijalla. Siirrä hashtagien luettelo erilliseen asetustiedostoon, jotta aiheita voi lisätä ja poistaa muuttamatta asiakasohjelman logiikkaa.

Aseta automaattista ajoa varten aikakatkaisu, rajattu määrä uusintayrityksiä tilapäisten verkkovirheiden varalta sekä HTTP-tilan ja pyynnön keston lokitus. Älä kirjaa avainta. Jäsennysvirheen yhteydessä tallenna turvalliset diagnostiikkatiedot ja ilmoita asiasta vastuuhenkilölle.

Määritys tukee hashtag-syötteen sivutusta cursor-parametrilla. Jos sivutusta tarvitaan, tallenna vastauksesta saatu kursori ja välitä se seuraavaan pyyntöön muuntamatta sitä. Käsittele vain palautetut tulokset ja seuraa has_more-kenttää, jos se on mukana. Jos usean hashtagin kyselyt palauttavat saman julkaisun, valitse tehtävään sopiva deduplikointiavain: käsitelläänkö julkaisu erikseen kunkin hashtagin yhteydessä vai lasketaanko vain yksilölliset videot.

Luokittelu ja raporttien automatisointi

Kun tarkistetut rivit ovat käytettävissä, videoiden kuvaukset voi luokitella määriteltyjen aiheiden mukaan: desc-kenttä mainitaan alkion rakenteessa. Malli voi ryhmitellä julkaisuja muodon mukaan, esimerkiksi ohjeiksi, arvosteluiksi tai käyttäjäkokemuksiksi. Tallenna alkuperäinen teksti, luokka, ohjeen versio ja tulos, ja ohjaa epävarmat tapaukset ihmisen tarkistettaviksi.

Laske numeeriset tunnusluvut tavallisella koodilla, jotta toistuvat ajot tuottavat toistettavia laskutoimituksia. Luokitin sopii tekstin käsittelyyn; loppuraportissa päätelmät tulee yhdistää tiettyihin riveihin ja havaintopäiviin.

Samojen vaiheiden no-code-toteutus voidaan koota automaatiotyökaluun: aikataulutus, HTTP-pyyntö vahvistetulla määrityksellä, vastauksen tarkistus, JSONin tallennus, vahvistettujen kenttien muuntaminen ja virheilmoitus. Vahvista sopimus ensin Postmanissa ja siirrä se sitten Pythoniin, n8n:ään tai Makeen.

Odotettu tulos ja seuraava vaihe

Asetusten valmistuttua tiimillä on API-vastausten arkisto ja havaintotaulukko valituista hashtageista. Niiden avulla voidaan löytää uusia julkaisuja, vertailla saatavilla olevia tunnuslukuja ajan mittaan ja valita aineistoa tarkempaan analyysiin. Jotta tulokset olisivat vertailukelpoisia, käytä yhtenäistä aikataulua, pyyntöparametreja ja normalisointisääntöjä.

Aloita yhdellä reitillä ja yhdellä todellisella vastauksella: tee /getHashtagFeed-pyyntö query-parametrilla, tallenna JSON ja lisää sen jälkeen kenttien jäsentäminen sekä aikataulutus. TikTok Scraper API -sivulla esitellään perusosoite ja reittikartta, ja reittimäärityksessä on asiakasohjelman toteutuksessa käytettävät parametrien nimet.

People

No people listed for this article yet.

Keep readingTikTok-hakutulosten arkistointi Pythonilla
Read the next article

Muuta lukemasi toimivaksi integraatioksi

Tutustu jsonscraperin sosiaalisen datan rajapintoihin, testaa pyyntöjä ja rakenna seuraava työnkulkusi.

Tutki API:t