RedNote Scraper
Scrape public RedNote (Xiaohongshu) notes: description, author, likes, collects, comments, shares and images. No login. $0.90 per 1,000 notes.
How it works
- 1Open it on Apify
Hit Run on Apify — it opens the tool in the cloud, no install.
- 2Set the inputs
Adjust
noteUrls,includeExploreFeed,maxItems(sensible defaults are pre-filled). - 3Click Run
The tool runs on Apify’s cloud and collects the data for you.
- 4Export the results
Download as JSON, CSV or Excel, or pipe straight into your app, Google Sheets, or an AI agent.
Pricing
$0.0009 per note = $0.9 per 1,000
| You are charged for | When | Price |
|---|---|---|
| Note returned | Charged once per genuine note row. Blocked pages, expired tokens and empty runs are never charged. | $0.0009 |
Pay-per-event pricing: you are billed per result, not per subscription. Billing is handled by Apify on your own account. These are the live Apify store prices, in effect since 2026-08-06, and they are what you are actually charged.
Inputs
| Field | What it does | Type |
|---|---|---|
noteUrls | RedNote note links. Paste the FULL URL including its ?xsec_token=... query string - RedNote links only resolve with the token they were shared with. Leave empty to read the public explore feed instead. | array |
includeExploreFeed | Pull notes from the public explore feed. This is also how valid note tokens are obtained. | boolean |
maxItems | Maximum notes to return (1-200). | integer |
What you get
A structured dataset — each result includes fields like:
noteIdtitleauthorNamelikedCountcollectedCountcommentCountpublishedAturlExport every run as JSON, CSV or Excel, or send it to your app, a database, Google Sheets, or an AI agent.
Related tools in Social Media Scrapers
Other ready-to-run tools in the same category — all pay-per-use on the Apify cloud.
RedNote (Xiaohongshu) Profile Scraper
Scrape RedNote (Xiaohongshu) profiles: nickname, RedNote ID, followers, likes, verified badge, IP location and recent notes. $2.90 per 1,000.
Douyin Hot Search Scraper
Get Douyin trending topics: rank, hot value, views, video count, badge and cover image. Hot, entertainment and society boards. No login. $0.40/1,000.
Facebook Comments Scraper
Scrape comments from any public Facebook post or reel: author, text, date, likes and replies. No login needed from you. $0.25 per 1,000 comments.
Facebook Groups Scraper
Scrape public Facebook group posts: author, text, time, permalink, photos, videos and engagement counts. No login needed. $0.70 per 1,000 posts.
Facebook Reels Scraper
Scrape public Facebook Page Reels: views, reactions, comments, shares, captions, hashtags, duration and MP4 links. No login needed. $0.35/1k.
Instagram Post Scraper
Scrape Instagram posts and reels by link or shortcode. Rows carry caption, likes, comments, publish time, carousel media, hashtags. No login. $0.18 per 1,000.
Where this tool sits
- Categories
- Social Media Scrapers Chinese Social & Trends
- Platforms
- RedNote (Xiaohongshu)
RedNote Scraper: public Xiaohongshu notes with real like and collect counts
Paste RedNote note links and get one row per note: title, full description with its hashtags, the author, likes, collects, comments, shares, publish time and the image URLs. Leave the links empty and it reads the public explore feed instead.
The catch is the link itself. A RedNote URL only resolves with the xsec_token it was shared with, so paste the whole thing, query string and all. Those tokens go stale, which is why a list saved last month comes back empty.
| Input | Note URLs with their share token, or nothing at all |
| Output | One row per note |
| Ceiling | 200 notes per run |
| Account needed | None, no login and no cookies |
| Price | $0.90 per 1,000 notes, flat on every plan |
📕 What RedNote Scraper does
Two ways in.
Note URLs. Paste the full link, including ?xsec_token=.... Copy it from the share sheet or straight out of the address bar; a link stripped back to the note id will not open.
The explore feed. Leave Note URLs empty and it reads RedNote's public explore feed and returns what is on it. This is switched on by default, and it is also where fresh, working note tokens come from. The feed is different every time you look at it, so two runs an hour apart will not agree.
Counts come back as numbers. RedNote writes 13,000 as 1.3万, because 万 means ten thousand, and 250 million as 2.5亿. Rows here carry 13000 and 250000000. Where RedNote only publishes a bucket like 1千+, you get the floor of that bucket, 1000.
📥 What you give it
{
"noteUrls": [
"https://www.xiaohongshu.com/explore/6a72ba26000000003302db55?xsec_token=ABgKYGq72MJJJWO8OVQh3Mtv79Mx-v2eHs6IaBJtUp2Ow=&xsec_source=pc_feed"
],
"maxItems": 50
}
| Field | Default | What it is |
|---|---|---|
noteUrls | empty | Full note links, one per line, each with its own xsec_token. |
includeExploreFeed | true | Read the public explore feed. Leave it on when you have no links; it is also how working tokens are found. |
maxItems | 20 | How many notes to return, 1 to 200. You are charged per note returned, so this is your spend cap. |
proxyConfiguration | leave it alone | Optional. Only fill this in if you want the run to go out through your own servers. |
Run it with the URL box empty and Include explore feed left on, and it reads the feed and returns notes from it. Switch that off with no URLs and you get one labelled sample row instead.
📤 What you get back
A real note row from a recent run. The image URL is trimmed here.
{
"ok": true,
"noteId": "6a72ba26000000003302db55",
"url": "https://www.xiaohongshu.com/explore/6a72ba26000000003302db55?xsec_token=ABgKYGq72MJ...&xsec_source=pc_feed",
"title": "儿子吃过一次后…每天点名要吃它!",
"description": "#好视频扶持计划[话题]# #大人小孩都爱吃[话题]# #今天早餐长这样[话题]# #营养早餐[话题]# #美食教程[话题]# ...",
"authorName": "暖暖每日早餐",
"likedCount": 4274,
"collectedCount": 6529,
"commentCount": 47,
"shareCount": 1529,
"publishedAt": "2026-08-05T04:20:54.000Z",
"images": ["http://sns-webpic-qc.xhscdn.com/202609201505/3a69f8b522b8f7c8.../1040g008323fnaa4g...webp_3"],
"source": "xiaohongshu.com",
"scrapedAt": "2026-09-20T07:05:30.448Z"
}
The description on that row is a hashtag block, cut short here. Many RedNote notes are written that way, with the whole caption living in the tags.
| Field | What it is |
|---|---|
noteId | RedNote's own id. It is the key to join on between runs. |
title, description | The headline and the caption, exactly as posted, hashtags included. |
likedCount, collectedCount | Likes and saves as real integers. A collect is RedNote's save-for-later, and on this platform it often runs ahead of likes. |
commentCount, shareCount | The counters on the note. null when RedNote does not publish one. |
publishedAt | ISO timestamp. null when the note does not carry a usable one. |
images | Up to 20 image URLs. The files themselves stay on RedNote's servers. |
url | The exact link that was fetched, token included, so you can reopen it. |
🧾 Reading the output
Three kinds of row can land in your dataset.
| Row | How to spot it |
|---|---|
| A note | ok is true and it has a noteId |
| The sample row | It carries _sample |
| A diagnostic | It carries _diagnostic and an errorCode |
Diagnostic rows and the sample row are never charged.
| Code | What it means |
|---|---|
NOT_FOUND | That note is gone, private, or the link arrived without a working token. The row carries a hint saying which. |
NO_RESULTS | The explore feed came back with nothing to read. |
BLOCKED | RedNote would not serve that page. Worth one re-run, since the feed changes constantly. |
NETWORK | RedNote was unreachable. |
▶️ How to run it
1. Open RedNote Scraper and click Try for free. 2. Paste your note links into Note URLs, each one complete with its ?xsec_token= part. 3. Set Maximum notes to what you actually want. 4. Click Start. 5. Download the dataset as JSON, CSV or Excel, or read it from the Apify API.
To see what the feed is showing right now, skip step 2 and leave Include explore feed on.
💰 How much does it cost?
$0.90 per 1,000 notes. Flat on every Apify plan, no volume tiers.
One row is one note. The sample row and every diagnostic row are not charged, so a link that will not open produces no note row to pay for.
Worth knowing: with Include explore feed left on, a run with no URLs is not an idle run. It reads the feed and returns real notes, and those are charged like any other.
💡 What people use it for
- Tracking how a product or a brand is being talked about on RedNote, with real numbers instead of
1.3万.
- Watching what the explore feed pushes over a week, on a schedule.
- Pulling the hashtag block out of
descriptionto see which tags a niche actually uses. - Comparing collects against likes, which on RedNote says more about saving intent than a like does.
- Grabbing image URLs from a set of notes for a mood board or a competitor sweep.
🚧 What it does not do
- No keyword search. You give it links, or you take what the explore feed offers. There is no
search box to query.
- No comment text. You get
commentCount, not what anyone wrote underneath. - Links go stale. The
xsec_tokenon a shared URL expires, and an expired link comes back as
NOT_FOUND. Re-copy the link rather than re-running the old one.
- Public notes only. A private or deleted note returns a diagnostic row.
- An entry that is not a note link is skipped quietly. A profile link or a shortened link
produces no row and no warning, so check the count if you get fewer rows than you pasted.
- The explore feed is not a search result. It is whatever RedNote is showing, and it changes
between runs. Do not expect two runs to overlap.
- 200 notes per run. Split a bigger job across runs.
- Bucket counts lose precision.
1千+becomes1000, which is the floor of the bucket, not the
real figure.
🧭 Which Chinese platform scraper do you need?
| If you want | Use |
|---|---|
| Notes and their engagement on RedNote | This one |
| The account behind a note, with followers and recent posts | RedNote Profile Scraper |
| What is trending on Douyin right now | Douyin Hot Search Scraper |
| Videos, creators and stats on Bilibili | Bilibili Scraper |
❓ Questions people ask
Do I need a RedNote account or a cookie? No. Nothing to log into and nothing to paste.
Why did my saved links return nothing? The token in the URL expired. Copy the links again from RedNote and re-run.
Where do I get links if I have none? Leave the URL box empty. The explore feed returns notes with working links attached, and you can feed those back in.
What is a collect? RedNote's save-for-later. It is a stronger signal than a like on this platform, and collectedCount often runs higher than likedCount.
Can I run it on a schedule? Yes. noteId is stable, so a daily run plus a join on that field gives you an engagement history per note.
Is scraping RedNote legal? These are public notes. Apify's write-up on scraping and the law is a good place to start, and we are not lawyers.
🆘 If something breaks
Open the Issues tab on the actor page. Send one of the note links and the run ID. The errorCode and its hint on the diagnostic row usually name the problem on their own.