浏览器

Douyin Scraper API - Videos, Creators, Comments, Search

试用

Pull Douyin videos, user profiles and feeds, comments, hashtags, music, live rooms, the hot-search board, keyword search across videos, users, music and hashtags, and live-room lookup by creator. 27 endpoints, structured JSON.

它能做什么

Pull Douyin (the Chinese TikTok) videos, user profiles and feeds, comments, hashtags, music, live rooms, the hot-search board, and run keyword search across videos, users, music, live and hashtags. All endpoints return structured JSON.

技能文档

Douyin via Scavio

Pull Douyin (the Chinese TikTok) videos, user profiles and feeds, comments, hashtags, music, live rooms, the hot-search board, and run keyword search across videos, users, music, live and hashtags. All endpoints return structured JSON.

When to trigger

Use this skill when the user asks to:

  • Pull a Douyin video's full detail or statistics (play, like, share, download counts), or resolve a share link
  • Read a user's profile, their posts, their liked videos, followers or following, or their current live stream
  • Read a video's comments and comment replies, or videos recommended alongside it
  • Look up a hashtag or a sound (music) and the videos under it
  • Read the hot-search board, the recommended home feed, or a live room by web_rid
  • Search Douyin by keyword - general, or scoped to videos, users, music, live streams or hashtags
  • Do China-market social research, creator analysis or trend spotting on Douyin

Setup

Get a free API key at scavio.dev (50 free credits to get started, no card required):

export SCAVIO_API_KEY=sk_live_your_key

Every request is a POST with a JSON body and:

Authorization: Bearer $SCAVIO_API_KEY

Pricing

Base URL: https://api.scavio.dev.

  • Search endpoints (/api/v1/douyin/search*) cost 10 credits each.
  • Every other Douyin endpoint costs 1 credit.

Check credits_used on each response to confirm what a call cost.

Endpoints

Video

EndpointCreditsWhat it returns
POST /api/v1/douyin/video1Full detail for a single video by id
POST /api/v1/douyin/video/by-share-url1Resolve a share link to its video detail
POST /api/v1/douyin/video/statistics1Play, like, share and download counts for one or more videos
POST /api/v1/douyin/video/comments1Top-level comments on a video
POST /api/v1/douyin/video/comment-replies1Replies under a comment
POST /api/v1/douyin/related1Videos recommended alongside a given video

User

EndpointCreditsWhat it returns
POST /api/v1/douyin/user/profile1Profile details for a user
POST /api/v1/douyin/user/posts1A user's published videos
POST /api/v1/douyin/user/likes1A user's publicly liked videos
POST /api/v1/douyin/user/followers1A user's followers
POST /api/v1/douyin/user/following1Accounts a user follows
POST /api/v1/douyin/user/live1A user's current live stream

Hashtag / music / live

EndpointCreditsWhat it returns
POST /api/v1/douyin/hashtag1Details for a hashtag
POST /api/v1/douyin/hashtag/videos1Videos under a hashtag
POST /api/v1/douyin/music1Details for a sound
POST /api/v1/douyin/music/videos1Videos using a sound
POST /api/v1/douyin/live/room1Live room detail by web_rid
EndpointCreditsWhat it returns
POST /api/v1/douyin/trending1The current hot-search board
POST /api/v1/douyin/home-feed1The recommended home feed
POST /api/v1/douyin/resolve/video-id1Extract a video id from a Douyin URL
POST /api/v1/douyin/resolve/user-id1Extract a user sec_user_id from a Douyin URL

Search (10 credits each)

EndpointCreditsWhat it returns
POST /api/v1/douyin/search10General keyword search
POST /api/v1/douyin/search/videos10Search videos by keyword
POST /api/v1/douyin/search/users10Search users by keyword
POST /api/v1/douyin/search/music10Search sounds by keyword
POST /api/v1/douyin/search/live10Search live streams by keyword
POST /api/v1/douyin/search/hashtags10Search hashtags by keyword

Key identifiers

  • aweme_id - a video id (e.g. 7436613508646702348). Used by video, video/statistics, video/comments, video/comment-replies, related.
  • sec_user_id - a user id (the MS4wLjABAAAA... string). Used by the user endpoints. Get it from resolve/user-id if you only have a profile URL.
  • Feed/comment endpoints paginate with max_cursor / cursor / max_time from the previous response, and take an optional count (1-50).

Examples

import requests

BASE = "https://api.scavio.dev"
# Your key from https://scavio.dev. Load it from your environment or secret
# store in real code - keep it out of source control.
API_KEY = "sk_your_key_here"
HEADERS = {"Authorization": f"Bearer {API_KEY}"}

# 1. Resolve a share link, then read that video's comments (1 credit each)
video = requests.post(f"{BASE}/api/v1/douyin/video/by-share-url", headers=HEADERS,
    json={"share_url": "https://v.douyin.com/v1zNJi__Teg/"}).json()
aweme_id = video["data"]["aweme_id"]
comments = requests.post(f"{BASE}/api/v1/douyin/video/comments", headers=HEADERS,
    json={"aweme_id": aweme_id, "count": 50}).json()

# 2. Resolve a profile URL to a user id, then read the user's posts (1 credit each)
uid = requests.post(f"{BASE}/api/v1/douyin/resolve/user-id", headers=HEADERS,
    json={"url": "https://www.douyin.com/user/"}).json()["data"]["sec_user_id"]
posts = requests.post(f"{BASE}/api/v1/douyin/user/posts", headers=HEADERS,
    json={"sec_user_id": uid, "count": 20}).json()

# 3. Keyword search - 10 credits
found = requests.post(f"{BASE}/api/v1/douyin/search/videos", headers=HEADERS,
    json={"keyword": "美食"}).json()

curl:

curl -s https://api.scavio.dev/api/v1/douyin/trending \
  -H "Authorization: Bearer $SCAVIO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'

Response shape

Every response uses the envelope { data, response_time, credits_used, credits_remaining }. data carries the video / user / feed payload, with lists under keys like videos, comments, users and cursors for pagination.

Guardrails

  • Search costs 10 credits per call; everything else costs 1. Confirm with credits_used and avoid running search in tight loops.
  • Use resolve/video-id and resolve/user-id to turn a Douyin URL into the id the other endpoints need.
  • Paginate only with the cursor the previous response returned (max_cursor / cursor / max_time); stop when it stops advancing.
  • Trending, hot-search and rankings are point-in-time snapshots - re-fetch for a fresh board rather than assuming stability.
  • Never fabricate video counts, comment text, follower numbers or user details. Only return what the API returned.
  • Comments and profiles are written by real people. Summarise; do not build profiles of individuals.

Failure handling

  • 400 means malformed input (e.g. a bad URL). Fix and retry.
  • 401 means the API key is invalid or missing. Check SCAVIO_API_KEY.
  • 422 means a required identifier is missing (e.g. no sec_user_id). Supply it and retry.
  • 429 means rate or usage limit exceeded. Wait before retrying. See rate limits.
  • 502 means the source is temporarily unavailable - wait a few seconds and retry.
  • If SCAVIO_API_KEY is not set, prompt the user to export it before continuing.

相关技能

把自然语言描述转为结构化 JSON,并由 mcp-diagram-generator MCP 服务生成 Draw.io、Mermaid 或 Excalidraw 图表文件。

作者 nssa.io1.0k 次安装47 星标

从 AdMapix API 拉取广告创意、应用、榜单和收入预估等数据,原样返回结构化 JSON。

作者 fly0pants4.3k 次安装296 星标

在本地磁盘以分类纯 Markdown 文件保存需要长期留存的事实,与智能体内置记忆并存。

作者 Iván559 次安装18 星标

以 AI 机器人身份加入视频会议,提供语音、虚拟形象与屏幕共享四种模式。

作者 johnpatternai22 次安装8 星标

诊断生产力系统反复失效的根因,给出最小干预——容量测算、瓶颈定位、可靠的本地记录。

作者 Iván855 次安装69 星标

scavio-ai 的更多技能

浏览全部技能

Pull a Facebook page's profile, posts, reels and photos, one post with its comments, a single reel/video with downloadable URLs, a public group and its posts, an event, and hashtag posts. 11 endpoints, 1 credit each, structured JSON.

作者 scavio-ai3 次安装

Search the Meta Ad Library by keyword or Facebook Page id and walk full cursor pagination through every ad, with creative, run dates, platforms and political spend. 3 endpoints, 1 credit per page.

作者 scavio-ai3 次安装

Search live or SOLD eBay listings, read a listing in full, and look up a seller's profile card as structured JSON. 3 endpoints, 1 credit each. Sold-listing search is the price-research feature eBay itself hides.

作者 scavio-ai1 次安装