jsonscraper

TikTok-guide

Så scrapar du TikTok med Python

Uppdaterad 5 mars 2026 3 min läsning 12 visningar

Den här guiden visar hur man bygger en robust TikTok-datapipeline med användar-/profilslutpunkter, sökrutter och användningsfall utan vattenstämpel.

TikTok API-kartan inkluderar användar-, video-, hashtag-, plats-, musik-, trend-, effekt- och sökklasser. Detta gör att en backend kan stödja analys-, modererings- och berikningsarbetsflöden på samma gång.

Det här kommer du att bygga

Snabbstart i Postman

Öppna den officiella TikTok-samlingen, sätt license_key och verifiera de första rutterna innan du kodar.

Steg 1

Gaffel

Använd IG- eller TikTok Postman-samlingen som baslinje för din arbetsyta.

Steg 2

Ställ in nyckel

Configure license_key once in an environment variable.

Steg 3

Automatisera

Exportera utdrag eller kör AI-agentarbetsflöden ovanpå färdiga förfrågningar.

Alla API-anrop

Fullständig endpoint-karta från samlingen. Expandera varje klass och klicka på en rutt för parametrar och exempel på svar.

Video Sök Anvandare Hashtag Plats Musik Trendar Effekter Stories Spellistor Live
Video (8 endpoints)
Sök (9 endpoints)
Anvandare (15 endpoints)
Hashtag (3 endpoints)
Plats (2 endpoints)
Musik (3 endpoints)
Trendar (2 endpoints)
Effekter (3 endpoints)
Stories (2 endpoints)
Spellistor (3 endpoints)
Live (4 endpoints)
Se hela slutpunktslistan i Postman

Python-exempel från samlingen

Dessa exempel använder samma auth-mönster som i Postman: license_key i query-parametrar.

Example 1: search video by keyword (GET /searchVideo)

import requests

BASE_URL = "https://tiktok.evelode.com/tiktok-api"
LICENSE_KEY = "YOUR_LICENSE_KEY"

params = {
    "license_key": LICENSE_KEY,
    "keyword": "appletv",
    "cache_timeout": 0,
}

r = requests.get(f"{BASE_URL}/searchVideo", params=params, timeout=30)
r.raise_for_status()
data = r.json()

print(data["status"], data.get("tiktok", {}).get("cursor"))
{
  "status": "ok",
  "tiktok": {
    "cursor": 12,
    "aweme_list": []
  }
}

Example 2: get no-watermark URL by video ID (GET /getNoWatermarkUrlByID)

import requests

BASE_URL = "https://tiktok.evelode.com/tiktok-api"
LICENSE_KEY = "YOUR_LICENSE_KEY"

params = {
    "license_key": LICENSE_KEY,
    "video_id": "7106855913906081070",
    "cache_timeout": 0,
}

r = requests.get(f"{BASE_URL}/getNoWatermarkUrlByID", params=params, timeout=30)
r.raise_for_status()
data = r.json()

print(data["status"], data["tiktok"]["id"])
print(data["tiktok"]["url"])

Python-mönster för anrop (auth + paginering)

Centralisera request-signering och hantering av cursor för att hålla högvolymsjobb förutsägbara.

import requests

BASE_URL = "https://tiktok.evelode.com/tiktok-api"
LICENSE_KEY = "YOUR_LICENSE_KEY"

def call(endpoint: str, **params):
    q = {"license_key": LICENSE_KEY, "cache_timeout": 0, **params}
    r = requests.get(f"{BASE_URL}{endpoint}", params=q, timeout=30)
    r.raise_for_status()
    return r.json()

page1 = call("/getFollowers", query="therock", count=20)
next_cursor = page1.get("tiktok", {}).get("next_cursor")
if next_cursor:
    page2 = call("/getFollowers", query="therock", count=20, cursor=next_cursor)

Implementeringsnoteringar

  • Inkludera alltid license_key i varje anrop.
  • Använd cache_timeout medvetet för återkommande kontroller.
  • Spara cursor-fält tillsammans med query-kontext.
  • Skala rutttäckning klass för klass efter basvalidering.

Är du redo att starta ditt API-arbetsflöde?

Välj ett API, testa slutpunkter i Postman och starta ditt arbetsflöde på några minuter.