Douyin Profile Scraper
Pricing
from $7.00 / 1,000 profile scrapeds
Douyin Profile Scraper
Scrape public Douyin (抖音) creator profiles by URL, share-link, sec_user_id, or uid. Returns nickname, bio, follower/following/like counts, verification, region, gender, custom badges. No cookies. MCP-ready. $0.007 per profile.
Pricing
from $7.00 / 1,000 profile scrapeds
Rating
0.0
(0)
Developer
Khadin Akbar
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
Scrape public Douyin (抖音) creator profiles by profile URL, share-link, or sec_user_id. Returns one flat record per creator with identity, audience metrics, verification badges, region, and business signals. Optional recent-posts enrichment.
Owned Camoufox (anti-detect Firefox) + Apify Residential proxy with country rotation HK → SG → TW → JP → MO. No login, no cookies you have to manage. MCP-ready for AI agents.
What you get
| Field | Description |
|---|---|
nickname | Display name (昵称) |
signature | Bio / signature (个人简介) |
secUserId | Stable Douyin opaque user id |
uid | Numeric user id |
shortId | Public Douyin handle (抖音号) |
followerCount | Followers (粉丝数) |
followingCount | Following (关注数) |
totalFavorited | Total likes received (获赞数) |
awemeCount | Total video count |
verified | Verified flag |
customVerify | Verification badge text |
enterpriseVerifyReason | Enterprise / brand verification reason |
gender | male / female / unknown |
ipLocation | IP location (IP属地) |
country / province / city | Geo fields when set |
isLiveCommerce | Live-commerce enabled |
withCommerceEntry | Has commerce store |
avatarUrl | Avatar URL |
profileUrl | Public profile URL |
When includeRecentPosts: true is set, post records are appended with itemType: "post" carrying awemeId, postDesc, engagement stats, playCount, videoDurationSec, and postUrl.
When to use
- KOL / creator research on Chinese-market influencers.
- Brand monitoring of verified Douyin accounts and enterprise pages.
- Influencer-marketing lead lists.
- AI agents profiling Chinese creators for outreach or due-diligence.
When NOT to use
- TikTok (global) — use a TikTok-specific actor.
- Private / locked accounts (Douyin does not expose them).
- Numeric uid lookups (Douyin's public web requires
sec_user_idto load a profile page).
Inputs
| Field | Type | Description |
|---|---|---|
profileInputs | string[] | Profile URLs, share-links, or raw sec_user_ids (auto-detected per row). |
includeRecentPosts | boolean | Default false. When true, scrolls the profile feed and grabs recent videos. |
maxPostsPerProfile | int | Default 20, max 200. |
maxProfiles | int | Default 25, max 100. Cost cap. |
proxyConfiguration | object | Default Apify Residential, country HK. Override only if you have a better CN-region pool. |
Accepted profileInputs row formats:
https://www.douyin.com/user/MS4wLjABAAAAVtZkS6ZpJVm-T1FZW5XWGcVTQ-Z2u7CcEt1MdJxoZbAhttps://v.douyin.com/iJxYZ8k/MS4wLjABAAAAVtZkS6ZpJVm-T1FZW5XWGcVTQ-Z2u7CcEt1MdJxoZbA
Pricing
| Event | Price |
|---|---|
| Actor start | $0.00005 |
| Profile scraped | $0.007 per profile |
| Post scraped | $0.003 per recent post (only when includeRecentPosts=true) |
Typical run of 10 profiles ≈ $0.07. Same 10 with 20 recent posts each ≈ $0.67.
Reliability
Douyin is a hostile anti-bot target (JS challenge wall + a_bogus signing + IP geo cross-check). Camoufox + Apify Residential clears it most of the time, but expect:
- HK → SG → TW → JP → MO automatic country rotation per blocked navigation.
- Cookie warmup on
douyin.comhomepage before the profile page (setsttwid). - ~85-92% observed success rate on typical input distributions. Failures are logged and pushed as
{ _error, input, secUserId }rows so partial datasets are still useful.
If you have a higher-quality CN-region residential pool, supply it via proxyConfiguration.proxyUrls for better results.
Output example
{"itemType": "profile","input": "https://www.douyin.com/user/MS4wLjABAAAAVtZkS6ZpJVm-T1FZW5XWGcVTQ-Z2u7CcEt1MdJxoZbA","secUserId": "MS4wLjABAAAAVtZkS6ZpJVm-T1FZW5XWGcVTQ-Z2u7CcEt1MdJxoZbA","uid": "93847265012","shortId": "douyin_handle","nickname": "示例创作者","signature": "短视频每天更新","followerCount": 1284321,"followingCount": 248,"totalFavorited": 18950221,"awemeCount": 532,"verified": true,"customVerify": "美食博主","gender": "female","ipLocation": "上海","isLiveCommerce": true,"avatarUrl": "https://...","profileUrl": "https://www.douyin.com/user/MS4w...","scrapedAt": "2026-06-27T06:55:12.000Z","_proxyCountry": "HK"}
MCP usage
search-actors → "douyin profile"call-actor → khadinakbar/douyin-profile-scraperget-actor-output → filter itemType=profile
The actor returns flat, semantic keys ≤500 tokens/record — built for agent consumption.
FAQ
Why no uid or 抖音号 (short_id) input? Douyin's public web routes require sec_user_id to render a profile page. Supplying a numeric uid alone has no public conversion path that survives without a paid signing API.
What happens on a hard block? The row is pushed with _error: "profile_xhr_not_captured" and the next input attempt rotates country. If every input is blocked across every country, the run honest-fails so the failure shows up in your Apify metrics instead of silently succeeding with zero data.
Do video URLs expire? Yes. Douyin video CDN URLs expire within ~1 hour; avatar/cover URLs last longer but are not guaranteed.
Legal
This actor scrapes only publicly visible Douyin profile information. Use complies with Douyin's terms and your local regulations. Do not use scraped data to harass creators or violate privacy laws.
Related actors
- tiktok-profile-scraper — global TikTok equivalent.
- tiktok-video-comments-scraper — TikTok comments.
- douyin-search-scraper — Douyin keyword search.