Douyin Profile Scraper avatar

Douyin Profile Scraper

Pricing

from $7.00 / 1,000 profile scrapeds

Go to Apify Store
Douyin Profile Scraper

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

Khadin Akbar

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

6 days ago

Last modified

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

FieldDescription
nicknameDisplay name (昵称)
signatureBio / signature (个人简介)
secUserIdStable Douyin opaque user id
uidNumeric user id
shortIdPublic Douyin handle (抖音号)
followerCountFollowers (粉丝数)
followingCountFollowing (关注数)
totalFavoritedTotal likes received (获赞数)
awemeCountTotal video count
verifiedVerified flag
customVerifyVerification badge text
enterpriseVerifyReasonEnterprise / brand verification reason
gendermale / female / unknown
ipLocationIP location (IP属地)
country / province / cityGeo fields when set
isLiveCommerceLive-commerce enabled
withCommerceEntryHas commerce store
avatarUrlAvatar URL
profileUrlPublic 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_id to load a profile page).

Inputs

FieldTypeDescription
profileInputsstring[]Profile URLs, share-links, or raw sec_user_ids (auto-detected per row).
includeRecentPostsbooleanDefault false. When true, scrolls the profile feed and grabs recent videos.
maxPostsPerProfileintDefault 20, max 200.
maxProfilesintDefault 25, max 100. Cost cap.
proxyConfigurationobjectDefault 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-Z2u7CcEt1MdJxoZbA
https://v.douyin.com/iJxYZ8k/
MS4wLjABAAAAVtZkS6ZpJVm-T1FZW5XWGcVTQ-Z2u7CcEt1MdJxoZbA

Pricing

EventPrice
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.com homepage before the profile page (sets ttwid).
  • ~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-scraper
get-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.

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.