Douyin Scraper — Hot Trends, Videos & TikTok China Data avatar

Douyin Scraper — Hot Trends, Videos & TikTok China Data

Pricing

from $0.48 / 1,000 hot search topics

Go to Apify Store
Douyin Scraper — Hot Trends, Videos & TikTok China Data

Douyin Scraper — Hot Trends, Videos & TikTok China Data

Collect Douyin hot-search topics with ranks, hot values, views, video counts, IDs, timestamps, and quality fields. Run with hot_search; other modes require real logged-in cookies. Pricing: $0.00049 per result on Free.

Pricing

from $0.48 / 1,000 hot search topics

Rating

0.0

(0)

Developer

Vitalii Bondarev

Vitalii Bondarev

Maintained by Community

Actor stats

0

Bookmarked

90

Total users

9

Monthly active users

17 minutes ago

Last modified

Features

Limited permissions

Share

Douyin Scraper extracts Douyin (抖音) hot-search topics, videos, user posts, comments, and metadata from Douyin endpoints. Use hot_search for trending topics; other modes require a real logged-in session through cookie inputs, while Free runs cap maxItems at 10, retain one input ID or keyword, and return zero comments.

  • Monitor ranked topics with hot values, views, video counts, and event times.
  • Extract video metadata and engagement fields for content intelligence.
  • Review comments, authors, likes, replies, and timestamps.
  • Run keyword, user-video, comment, and video-detail jobs through one Actor.

What you get

Normalized records include parse_confidence and warnings. Missing source values are null.

Record typeFieldsTypeWhat they contain
Hot-search identityrank, sentence_id, wordrank: integer; others: stringTopic rank, ID, and text (hot_search)
Hot-search metricshot_value, view_count, video_count, discuss_video_countintegerHot value, views, associated and discussion videos
Hot-search metadataword_type, labelintegerTopic type and label
Hot-search timingevent_time, scraped_atISO 8601 stringEvent and scrape times
Hot-search qualityparse_confidence, warningsnumber; array of stringsCompleteness and missing-field warnings
Video identityaweme_id, desc—Video ID and caption
Video authorauthor_uid, author_nickname, author_sec_uid—Author IDs and display name
Video engagementdigg_count, comment_count, share_count, play_count, collect_count—Likes, comments, shares, plays, and saves
Video mediavideo_url, cover_url—Video and cover URLs
Musicmusic_title, music_author, music_url—Music title, author, and URL
Video metadatacreate_time, duration_ms, is_top, hashtags—Creation time, duration, pinned status, and hashtags
Video qualityscraped_at, parse_confidence, warnings—Scrape time, completeness, and warnings
Comment identitycomment_id, aweme_id, text—Comment ID, video ID, and text
Comment authorauthor_uid, author_nickname—Author ID and display name
Comment engagementdigg_count, reply_count—Comment likes and replies
Comment metadatacreate_time, scraped_at—Creation and scrape times
Comment qualityparse_confidence, warnings—Completeness and warnings

Sample output

The sample below is one real hot-search record from the dataset sample.

{
"rank": 2,
"sentence_id": "2736348",
"word": "BLG战胜T1挺进决赛",
"hot_value": 12135561,
"view_count": 68973633,
"video_count": 15,
"discuss_video_count": 1,
"word_type": 1,
"event_time": "2026-11-08T13:00:17+00:00",
"label": 3,
"scraped_at": "2026-11-09T06:58:08.913182+00:00",
"parse_confidence": 1,
"warnings": []
}

Pricing

Billing uses events. hot-search-result is charged for each trending topic. video-result is charged for video records and each pushed comment in comments mode. apify-actor-start is charged when the Actor starts; its event count depends on Actor memory, with one event per GB and a minimum of one event.

Live event prices

EventPlanPrice per event
apify-actor-startFree plan$0.00005
apify-actor-startBronze plan$0.0000495
apify-actor-startSilver plan$0.000049
apify-actor-startGold plan$0.0000485
apify-actor-startPlatinum plan$0.000048
apify-actor-startDiamond plan$0.0000475
hot-search-resultFree plan$0.00049
hot-search-resultBronze plan$0.0004851
hot-search-resultSilver plan$0.0004802
hot-search-resultGold plan$0.0004753
hot-search-resultPlatinum plan$0.0004704
hot-search-resultDiamond plan$0.0004655
video-resultFree plan$0.00099
video-resultBronze plan$0.0009801
video-resultSilver plan$0.0009702
video-resultGold plan$0.0009603
video-resultPlatinum plan$0.0009504
video-resultDiamond plan$0.0009405

1,000 hot-search results = $0.49005 on Free, assuming one Free-plan Actor Start event: $0.49 for results plus $0.00005 for the start event. 10,000 hot-search results = $4.90005 on Free, assuming one Free-plan Actor Start event: $4.90 for results plus $0.00005 for the start event.

The $5 credit covers 10,203 hot-search results after one Free-plan Actor Start event.

Apify Free plan includes $5 of monthly platform usage credit. This Actor does not use the Pay per event + usage option, so compute, proxy traffic, and storage are not billed separately.

How to use

  1. Choose hot_search, search, user_videos, comments, or video_detail.
  2. Add keywords, sec_user_ids, or aweme_ids for the selected mode.
  3. Configure an Apify residential proxy with country CN.
  4. Provide msToken, ttwid, or svWebId values when available for session-based modes.
  5. Set maxItems or maxComments, then start the run.
  6. Repeat the run through Apify Schedules; daily is a reasonable starting point for hot-search monitoring.
{
"mode": "hot_search",
"maxItems": 10,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"],
"apifyProxyCountry": "CN"
}
}

Export the dataset as JSON or CSV, or read it through the Apify dataset API.

Input parameters

ParameterWhat it doesDefault
modeSelects hot_search, search, user_videos, comments, or video_detail; invalid values become hot_search.hot_search
keywordsSearch terms for search; each runs separately up to the item limit.No value; empty list
sec_user_idsDouyin sec_user_id strings for user_videos.No value; empty list
aweme_idsVideo IDs for comments or video_detail.No value; empty list
maxItemsLimits videos in search and user_videos, and hot-search records on non-paying runs. Range: 1–10000.50
maxCommentsLimits comments per video in comments. Range: 1–5000; non-paying runs set it to 0.50
msTokenOptional real msToken cookie for session-based modes.Not set
ttwidOptional ttwid cookie; if omitted, the Actor attempts to obtain one automatically.Not set
svWebIdOptional real s_v_web_id cookie for session-based modes.Not set
proxyConfigurationConfigures the Apify proxy.CN RESIDENTIAL prefill; CN residential fallback

Limits and edge cases

ConditionWhat the buyer seesWhat to do
A Free or otherwise non-paying run is usedmaxItems is capped at 10, one keyword, user ID, or video ID is retained, and maxComments becomes 0Use a paid Apify plan for more inputs or comments
comments runs on a non-paying planZero comments and an explanation that comments are not returned on free runsUse a paid Apify plan
A required mode input is missingSucceeded with zero records; OUTPUT contains no_keywords, no_sec_user_ids, or no_aweme_idsSupply the required input
Douyin returns login-required code 2483Session modes can return zero records, the run fails, and OUTPUT.errors lists the errorReview OUTPUT.errors and cookies, or use hot_search
No usable CN residential proxy is availableRequests may be rate-limited, challenged, blocked, or return an access errorConfigure Apify RESIDENTIAL with country CN
The hot-search response has an empty word_listZero records, a no-topics message, a failed run, and the condition in OUTPUT.errorsRun again later or check for a changed response format
Some requests succeed and later requests failDelivered batches reach the dataset; the run succeeds with delivered records, OUTPUT.errors lists failures, and it reports a partial resultReview OUTPUT.errors and rerun the failed scope
A valid request returns no records without a fetch errorSucceeded with an empty dataset and a status messageTry different keywords or IDs, or use hot_search
A private account or video is requestedThe private content cannot be retrieved because login is required and unsupportedUse publicly available content and supported session-based modes
An expired video CDN URL is usedvideo_url may no longer download because URLs expire within hours to daysDownload required media promptly

Request signing uses a pure-Python a_bogus implementation based on SM3, RC4, and custom Base64 processing, so a browser is not required for signing.

FAQ

How much does it cost to scrape Douyin?

On Free, hot-search results cost $0.00049 each, video results cost $0.00099 each, and Actor Start costs $0.00005 per event. 1,000 hot-search results = $0.49005 on Free, assuming one Actor Start event.

Why did my run return an empty result?

The mode-specific input may be missing, or a non-paying comments run may have maxComments set to zero. Check the run status and OUTPUT.errors, then provide the required input or use hot_search.

What should I do if Douyin blocks the run?

Configure an Apify residential proxy for country CN. If the run reports login-required code 2483, provide the required real session cookies or use hot_search.

Can I scrape public Douyin data legally?

The Actor retrieves Douyin data from its public hot-search source and other Douyin endpoints. Whether a use is legal or allowed depends on the buyer’s use case, applicable law, and the source’s terms; this Actor provides no legal guarantee.