
Instagram Reel Scraper
scrape.ly/store/echofield/instagram-reel-scraperSocial mediaVideos
1 monthly user

Scrape Douyin (抖音) real-time trending topics from all hot-search boards: rank, topic, hot value, label, cover, video count and link. No login needed.
Get Douyin (抖音) real-time trending topics as clean, structured data. Pull the live Hot Search, Seeding, Entertainment, Social and Challenge boards in one run: rank, topic, hot value, views, video count, badge, cover image and a link for every topic. No login, no cookies, and a full run takes seconds.
| Field | Type | Description |
|---|---|---|
boards | array | hotspot, seeding, entertainment, social, challenge. Default ["hotspot"]. |
maxResultsPerBoard | integer | Topics per board. Default 50. Douyin lists about 50. |
minHotValue | integer | Skip topics below this hot value. Default 0. |
dedupeAcrossBoards | boolean | Return a topic that appears on several boards only once. Default on. |
proxyConfiguration | object | Datacenter proxy by default. |
{
"boards": ["hotspot", "entertainment", "social"],
"maxResultsPerBoard": 20,
"minHotValue": 5000000
}
One row per trending topic.
| Field | Meaning |
|---|---|
board, boardName | Board key and its Chinese name |
rank | Position in the returned board (1 is first, after removing repeats) |
position | Position Douyin reports for the topic, empty for pinned topics |
maxRank | Best rank the topic reached (main board) |
word | The trending topic text |
url | Douyin search link for the topic |
hotValue | Hot value (heat score) |
viewCount, videoCount, discussVideoCount | Attention metrics |
label, labelUrl | Douyin badge code and badge image (new, hot and similar) |
coverImageUrl, wordCover | Cover image URL and the full cover object |
eventTime | When the topic started trending (UTC) |
boardActiveTime | When Douyin last refreshed the board |
isPinned | True for editorially pinned topics, which have no hot value |
sentenceId, groupId, wordType, sentenceTag, displayStyle, hotlistParam, postAwemeInfo, wordSubBoard, topicInfo, roomCount | Douyin identifiers and passthrough fields |
scrapedAt | Time of the run |
{
"type": "trending",
"board": "hotspot",
"boardName": "热点榜",
"rank": 1,
"position": 1,
"maxRank": 1,
"word": "中朝新鸭绿江大桥将开通",
"url": "https://www.douyin.com/search/%E4%B8%AD...?type=general",
"hotValue": 12123270,
"viewCount": 63004582,
"videoCount": 3,
"coverImageUrl": "https://p26-sign.douyinpic.com/tos-cn-p-0015/osABOiWz...jpeg?...",
"eventTime": "2026-10-14T02:02:32.000Z",
"boardActiveTime": "2026-10-14 17:52:22",
"label": 3,
"isPinned": false,
"scrapedAt": "2026-10-14T09:52:46.000Z"
}
Cover image links are signed by Douyin and expire after a few days. Download them if you need to keep them.
You pay $0.006 per trending topic saved to the dataset ($6 per 1,000). There is no start fee. Platform usage for a run is a fraction of a cent.
| Job | Topics | Cost |
|---|---|---|
| Hot Search board | 50 | about $0.30 |
| All five boards | about 210 | about $1.26 |
| Hourly Hot Search snapshot for a day | 1,200 | about $7.20 |
Use Max results per board to cap spending. A run stops cleanly when your maximum charge is reached.
Is it legal? The actor reads the public trending lists that Douyin shows to everyone without signing in. You are responsible for how you use the data and for following local law and Douyin's terms.
Do I need a login or a proxy? No login. A datacenter proxy is on by default and needs no setup.
How many results can I get? Douyin lists about 50 topics per board, so about 250 across the five boards before removing repeats. Asking for more returns what is listed.
Why are some fields empty? Pinned topics have no hot value or view counts. Challenge-board topics carry extra post information. Empty values are left empty, never shown as zero.
Can I schedule it? Yes. Schedule the actor hourly or daily and compare rank and hotValue between runs. Each row has scrapedAt and boardActiveTime.
Can I use the API? Yes, with the standard run and dataset endpoints. The topic text is Chinese. Translate it downstream if you need another language.
Every field below can be set in the run form, passed through the API, or saved as a task. Unset fields fall back to the defaults shown.
boardsarrayOptionaldefault ["hotspot"]Trending boards
Which Douyin trending boards to read. Each board lists up to about 50 live topics.
maxResultsPerBoardintegerOptionaldefault 50Max results per board
Maximum topics returned per board. Douyin publishes about 50 per board, so a higher value returns everything currently listed.
minHotValueintegerOptionaldefault 0Minimum hot value
Skip topics whose hot value is below this number. Leave 0 to keep everything. Pinned topics have no hot value and are skipped when this is above 0.
dedupeAcrossBoardsbooleanOptionaldefault trueRemove topics repeated on several boards
A topic that shows up on more than one board is returned once, on the first board you selected that lists it. Turn off to get every board in full.
proxyConfigurationobjectOptionaldefault {"useScrapelyProxy":true,"scrapelyProxyGroups":["DATACENTER…Proxy configuration
Datacenter proxy by default. Switch the group to residential only if Douyin starts refusing requests.
Every run writes its results to a dataset. Preview it in the dashboard, then export it or read it through the API.
| Field | Type | Description |
|---|---|---|
| board | any | Board |
| boardName | any | Board name |
| rank | any | Rank |
| position | any | Server rank |
| maxRank | any | Peak rank |
| word | any | Topic |
| url | any | Link |
| hotValue | any | Hot value |
| viewCount | any | Views |
| videoCount | any | Videos |
| discussVideoCount | any | Discussion videos |
| coverImageUrl | any | Cover |
| labelUrl | any | Badge |
| label | any | Label |
| eventTime | any | Trending since |
| boardActiveTime | any | Board refreshed |
| isPinned | any | Pinned |
| scrapedAt | any | Scraped at |
You pay for the events the actor reports, such as each result or page it produces. Platform usage is included in the event prices.
| Event | Charged when | Price |
|---|---|---|
| Trending topic | One Douyin trending topic saved to the dataset. | $0.006 |
Run this actor from your own code. Swap in your API token and the examples work as-is.
import { ScrapelyClient } from 'scrapely-client'
const client = new ScrapelyClient({ token: process.env.SCRAPELY_TOKEN })
// Start the actor and wait for the run to finish.
const run = await client.actor('echofield/douyin-trending-scraper').call({
"boards": [
"hotspot"
],
"maxResultsPerBoard": 50,
"minHotValue": 0,
"dedupeAcrossBoards": true,
"proxyConfiguration": {
"useScrapelyProxy": true,
"scrapelyProxyGroups": [
"DATACENTER"
]
}
})
// Read the dataset the run produced.
const { items } = await client.dataset(run.defaultDatasetId).listItems()
console.log(items)Tokens live in your account settings. Keep them server-side: a token carries the full permissions of your account.
Connect the Scrape.ly MCP server once and your agent can run this actor as a tool. Pick your tool:
Fetch scrape.ly/agents.md and run echofield/douyin-trending-scraperPaste into Claude Code, Codex, Cursor or any AI agent. It signs you in once in the browser.
{
"mcpServers": {
"scrapely": {
"url": "https://api.scrape.ly/mcp?tools=actors,runs,storage,docs&actors=echofield/douyin-trending-scraper"
}
}
}No key in the file: your client opens the browser to sign you in the first time it connects.
Inputs the developer prepared for common jobs. Open one to see its input, then copy it to your account to run it as-is or adjust it.
Top topics from entertainment, social and more, without duplicates.
Hot search board above a popularity threshold.
Scrape.ly gives you the infrastructure, the tooling, and the team to extract, process, and operationalize web data at any scale. Setup takes minutes. The advantage lasts forever.