Xiaohongshu (RedNote) Scraper — Notes, Users & Search
Pricing
from $3.40 / 1,000 results
Xiaohongshu (RedNote) Scraper — Notes, Users & Search
Scrape Xiaohongshu and RedNote notes, creators and keyword discovery results. Export titles, images, videos, likes, saves, comments, creator IDs, avatars and public profile links for KOL discovery, social listening, competitor tracking, content research and China market intelligence.
Pricing
from $3.40 / 1,000 results
Rating
0.0
(0)
Developer
Haketa
Maintained by CommunityActor stats
0
Bookmarked
15
Total users
4
Monthly active users
5 days ago
Last modified
Categories
Security
Limited permissionsShare
📕 Xiaohongshu (RedNote) Scraper — Notes, Creators, Engagement & Search
Extract public Xiaohongshu / RedNote (小红书, XHS, Little Red Book) data into clean, structured datasets — no login, no coding. This Xiaohongshu scraper turns a keyword, hashtag, brand, or public note/profile link into rows of note titles, descriptions, images, video URLs, likes, saves, comments, hashtags, creator IDs, follower counts, and profile links. Use it to scrape Xiaohongshu notes and creators for KOL discovery, social listening, and China market research.
Export every result to JSON, CSV, Excel, or API and plug it straight into your analytics, CRM, or data warehouse.
Built for KOL/influencer marketers, brand & competitor analysts, China market researchers, e-commerce and DTC teams, social-listening agencies, trend forecasters, and AI/NLP dataset builders who need reliable, publicly available Xiaohongshu data without touching a browser automation stack themselves.
🔎 Why scrape Xiaohongshu (RedNote)?
Xiaohongshu — known internationally as RedNote and natively as 小红书 (Little Red Book / XHS) — is one of China's most influential lifestyle and social-commerce platforms, with hundreds of millions of active users. It is where purchase decisions, product reviews, travel plans, beauty routines, and brand reputation are shaped. For any company targeting Chinese consumers, Xiaohongshu data is a direct signal of what audiences actually search for, save, and talk about.
The problem is access. RedNote's public pages are JavaScript-heavy, protected by request signing and risk-control, and never meant for bulk collection. Copying note titles, engagement numbers, and creator handles by hand is slow, error-prone, and impossible to keep fresh. A purpose-built RedNote scraper collects the same publicly visible information automatically, deduplicates it, and hands you a tidy table.
Common reasons people scrape Xiaohongshu:
- 🔥 Find and vet KOLs and influencers by niche, follower count, verification, and engagement before outreach.
- 🛍️ Track how a product, category, or international brand is discussed in the Chinese market.
- 📊 Benchmark likes, saves, comments, and shares to learn which content formats and topics resonate.
- 🧭 Monitor competitors' campaigns, rising posts, and creator participation over time.
- 🌏 Build China market-research snapshots for launches, localization, and positioning.
- 🧠 Assemble structured public-text corpora for sentiment analysis, topic clustering, and AI/NLP projects.
- 📈 Feed dashboards and alerts with scheduled Xiaohongshu search exports.
✨ What this Xiaohongshu scraper does
- ✅ Four collection modes in one actor: Search notes (content & trends), Search users (creator leads), Note details (public note links), and User profiles & notes (public profile links).
- ✅ Keyword, hashtag & topic search — pass one or many terms. Chinese keywords surface the deepest native coverage; English and mixed queries are fully supported.
- ✅ Automatic pagination that pages through discovery feeds and search results and returns hundreds to thousands of de-duplicated records per run, capped by your
maxItems. - ✅ Core note fields on every row (100% coverage in the latest run):
noteId,title,noteUrl,coverUrl,likedCount, plus author identity (authorId,authorName,authorAvatarUrl,authorProfileUrl),source, andscrapedAt. - ✅ Enriched note fields when the source exposes them:
description,noteType,imageUrls,videoUrl,collectedCount,commentsCount,sharedCount,authorRedId,authorVerified,hashtags,postedAt,ipLocation,xsecToken. - ✅ Rich creator fields:
userId,userName,redId,bio,avatarUrl,profileUrl,verified,verificationType,followersCount,followingCount,likesAndCollectsCount,notesCount,ipLocation. - ✅ De-duplication by note ID or user ID across every keyword and link, so merged multi-keyword runs stay clean.
- ✅ Media URLs without heavy downloads — public cover, gallery image, and video stream URLs are captured, but large binaries, fonts, and trackers are blocked to keep runs fast and cheap.
- ✅ Resilient collection — lightweight server-rendered pages are tried first, with a browser-driven fallback and session retries when a network session is challenged.
- ✅ Export anywhere — JSON, CSV, Excel, XML, HTML, or the Xiaohongshu API via Apify, plus webhooks, schedules, and 100+ integrations.
Only the fields a given result publicly exposes are included; unavailable values are omitted rather than filled with misleading placeholders.
🎯 Use cases
- KOL & influencer discovery — search beauty, fashion, travel, food, fitness, parenting, tech, and lifestyle niches; compare creator identity, verification, follower signals, and content engagement before partnering.
- Brand & competitor monitoring — schedule keyword runs to snapshot campaign visibility, audience response, and which creators are participating.
- China market research — quantify consumer conversation volume and sentiment around a product, category, or foreign brand entering the market.
- E-commerce & DTC intelligence — see which products, routines, and "种草" (recommendation) posts are driving saves and comments.
- Content & trend strategy — identify high-performing formats, hashtags, and posting patterns on RedNote.
- Social listening & PR — track mentions, engagement spikes, and emerging topics for reporting.
- Agency reporting — deliver clients repeatable, exportable RedNote data for influencer and campaign dashboards.
- AI / NLP datasets — build public-text corpora for translation, classification, retrieval, and responsible research.
📥 Input
No field is required. For the simplest run, keep Search notes, type a keyword, and click Start. Configure the following parameters on the Input tab or via the API:
| Field | Type | Description |
|---|---|---|
operation | string (enum) | What to collect: searchNotes (content & trends), searchUsers (creator leads), noteDetails (public note links), or userProfiles (public profile links). Default searchNotes. |
keywords | array of strings | Products, brands, niches, hashtags, or creator topics. Chinese terms give the deepest coverage; English and mixed queries are supported. Add several terms for a broader, de-duplicated dataset. |
urls | array | Public Xiaohongshu/RedNote note, explore, discovery, profile, or xhslink share URLs. Used only by noteDetails and userProfiles. |
maxItems | integer | Maximum unique rows across all keywords or links (1–5000). Use 50 for a quick test, 500–1,000 for broad coverage. Default 500. |
includeDescription | boolean | Keep public note text for keyword analysis and AI/NLP workflows. Default true. |
includeMedia | boolean | Keep public cover, gallery image, and video stream URLs. Media files are not downloaded. Default true. |
includeUserNotes | boolean | In profile mode, also save publicly visible notes as separate rows for a richer creator dataset. Default true. |
proxyConfiguration | object | Connection settings. The cost-efficient Apify proxy is pre-selected; residential routing can be enabled in Advanced settings. |
Example input
{"operation": "searchNotes","keywords": ["skincare", "city walk", "护肤"],"maxItems": 500,"includeDescription": true,"includeMedia": true,"proxyConfiguration": { "useApifyProxy": true }}
To collect creator leads instead, set "operation": "searchUsers" and pass niche or brand keywords.
📤 Output
Every result is saved as a structured dataset row. A recordType field (note-search, user-search, note-detail, user-profile, user-note) tells you what each row represents. Here is a real note record from a recent verification run (discovery-feed path, every field shown below was populated for 100% of 300 rows):
{"recordType": "note-search","noteId": "642418be0000000027029297","title": "放弃网妆感❌ 3招教你妆变脸,速成原生感美女","noteUrl": "https://www.xiaohongshu.com/explore/642418be0000000027029297","coverUrl": "https://sns-webpic-qc.xhscdn.com/.../1000g00828rp1pvofo00g49ogvlvr5bmel7mahvo!nc_n_nwebp_prv_1","likedCount": 66000,"authorId": "599bffb25e87e739ff08aece","authorName": "全国知名小雪糕","authorAvatarUrl": "https://sns-avatar-qc.xhscdn.com/avatar/5fad5f8ffc3db500016ead27.jpg","authorProfileUrl": "https://www.xiaohongshu.com/user/profile/599bffb25e87e739ff08aece","source": "discovery:护肤","scrapedAt": "2026-11-02T00:22:37.269Z"}
When the signed keyword-search and profile paths return extended data, the same note record is enriched with additional fields. A fully enriched note looks like this (fields beyond the core set are present when the source exposes them):
{"recordType": "note-search","noteId": "69ec85eb000000001e00cd6c","title": "Daily skincare routine","description": "Morning and evening routine for glass skin...","noteType": "normal","noteUrl": "https://www.xiaohongshu.com/explore/69ec85eb000000001e00cd6c?xsec_token=ABC123&xsec_source=pc_search","coverUrl": "https://sns-webpic-qc.xhscdn.com/....webp","imageUrls": ["https://sns-webpic-qc.xhscdn.com/....webp"],"videoUrl": null,"likedCount": 4231,"collectedCount": 892,"commentsCount": 167,"sharedCount": 23,"authorId": "5ee58a2e000000000100057e","authorName": "Beauty Journal","authorRedId": "257152115","authorAvatarUrl": "https://sns-avatar-qc.xhscdn.com/....jpg","authorVerified": false,"authorProfileUrl": "https://www.xiaohongshu.com/user/profile/5ee58a2e000000000100057e","hashtags": ["skincare", "护肤"],"postedAt": "2024-11-03T08:15:00.000Z","ipLocation": "Shanghai","xsecToken": "ABC123","source": "search:skincare","scrapedAt": "2026-11-02T00:22:41.812Z"}
A representative creator record from searchUsers / userProfiles:
{"recordType": "user-search","userId": "5ee58a2e000000000100057e","userName": "Beauty Journal","redId": "257152115","bio": "Skincare reviews and routines","avatarUrl": "https://sns-avatar-qc.xhscdn.com/....jpg","profileUrl": "https://www.xiaohongshu.com/user/profile/5ee58a2e000000000100057e","verified": false,"verificationType": null,"followersCount": 128400,"followingCount": 315,"likesAndCollectsCount": 982000,"notesCount": 246,"ipLocation": "Shanghai","source": "search:skincare","scrapedAt": "2026-01-15T10:22:41.812Z"}
Note field reference
The core fields below are populated on every note (they reached 100% coverage in the latest 300-record verification run). The enriched fields appear when the signed keyword-search or note-detail path exposes them for that note.
| Field | Core? | Description |
|---|---|---|
recordType | ✅ core | Row type: note-search, note-detail, or user-note. |
noteId | ✅ core | Unique RedNote note ID. |
title | ✅ core | Public note title. |
noteUrl | ✅ core | Canonical note URL, including xsec_token when available. |
coverUrl | ✅ core | Cover image URL (https). |
likedCount | ✅ core | Like count (万/w/k suffixes normalized to integers). |
authorId | ✅ core | Author user ID. |
authorName | ✅ core | Author display name. |
authorAvatarUrl | ✅ core | Author avatar image URL (https). |
authorProfileUrl | ✅ core | Canonical author profile link. |
source | ✅ core | Which keyword or link produced the row (e.g. discovery:护肤, search:skincare). |
scrapedAt | ✅ core | Collection timestamp (ISO 8601). |
description | present when available | Public note body text (when includeDescription is on and the source exposes it). |
noteType | present when available | Content type signal (e.g. normal, video). |
imageUrls | present when available | Array of public gallery image URLs (when includeMedia is on). |
videoUrl | present when available | Public video stream URL for video notes. |
collectedCount / commentsCount / sharedCount | present when available | Saves, comments, and shares (integers; returned by the signed search/detail path). |
authorRedId | present when available | Author's public RedNote ID (red_id). |
authorVerified | present when available | Author verification flag. |
hashtags | present when available | Array of hashtag/topic names attached to the note. |
postedAt | present when available | Publish time as ISO 8601. |
ipLocation | present when available | Public IP-location label. |
xsecToken | present when available | Access token tied to the note URL. |
Creator field reference
| Field | Description |
|---|---|
recordType | user-search or user-profile. |
userId / userName / redId | Creator user ID, display name, and RedNote ID. |
bio | Public profile description. |
avatarUrl / profileUrl | Avatar image and canonical profile URL. |
verified / verificationType | Verification flag and verification category (present when available). |
followersCount / followingCount | Follower and following counts (integers). |
likesAndCollectsCount | Total likes + saves the creator has received (present when available). |
notesCount | Number of published notes (present when available). |
ipLocation | Public IP-location label (present when available). |
source / scrapedAt | Origin keyword/link and collection timestamp. |
Fields that RedNote does not publicly expose for a particular result are omitted rather than filled with placeholders. You can download the dataset as JSON, CSV, Excel, XML, or HTML, or read it from the Apify dataset API.
🔁 Pagination & scale
The Xiaohongshu scraper paginates automatically and returns large, de-duplicated result sets controlled entirely by your maxItems input (1–5000). It layers several strategies and uses whichever reaches your target fastest:
- Lightweight discovery (primary) fans out parallel server-rendered requests for the keyword's matched category and advances a refresh counter each round; in the latest run it filled 300 records in roughly five rounds (~60–80 new notes per round).
- Keyword search (browser fallback) advances a numeric
pageparameter (20 results per page) using the site's own request signer, and stops when the API reports no more results ormaxItemsis reached. - Homefeed fallbacks iterate in refresh rounds (40 records per round) for the matched category and stop on empty rounds.
- Server-rendered and infinite-scroll fallbacks keep fetching cards until several consecutive rounds return nothing new.
- Every mode is gated on
saved < maxItems, and results are deduplicated by note ID or user ID across all keywords and links, so combining multiple keywords never produces duplicate rows.
Increase maxItems for wider trend and KOL coverage, or lower it for a fast sample. Actual counts depend on keyword breadth, public availability, and source-side limits.
⚙️ How to use
- Open the actor on the Apify Console and go to the Input tab.
- Pick an operation (
searchNotes,searchUsers,noteDetails, oruserProfiles). - Enter one or more keywords (or paste public note/profile URLs for the link modes).
- Set maxItems and toggle description/media options, then click Start.
- Watch rows appear in the Dataset tab; download as JSON, CSV, Excel, XML, or HTML.
- Automate it: call the actor via the Apify API or JavaScript/Python clients, run it on a schedule, or pipe results into Make, Zapier, n8n, Airbyte, Google Sheets, or a webhook.
API example
curl -X POST "https://api.apify.com/v2/acts/haketa~xiaohongshu-rednote-scraper/runs?token=YOUR_APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"operation":"searchUsers","keywords":["beauty creator"],"maxItems":100}'
💡 Tips
- Use Chinese keywords (e.g.
护肤,穿搭,美食) for the richest native coverage; English and mixed queries also work. - Combine related keywords in one run — results are merged and de-duplicated into a single dataset.
- Start with
searchUsersto gather creator profile URLs, then feed those links intouserProfilesfor a deeper creator export. - Keep
includeMediaon to capture cover, gallery, and video URLs, but save them promptly — platform CDN links can rotate. - For large jobs, raise
maxItemsgradually and schedule recurring runs to build time-series snapshots. - If a run is challenged by risk-control, enable residential proxy in Advanced settings for a fresh network session.
❓ FAQ
Is scraping Xiaohongshu / RedNote legal?
This actor collects only publicly accessible information and does not access private profiles or private content. You are responsible for using the data lawfully and respecting applicable privacy, intellectual-property, platform, and data-protection rules. Avoid profiling, spam, harassment, or decisions that materially affect individuals.
Do I need a RedNote account or login?
No. The RedNote scraper is built around publicly accessible pages and anonymous public web requests. It never asks for your RedNote password.
How many results can I get and how fast?
You control the volume with maxItems (up to 5,000 per run). In the latest cloud verification run the actor returned 300 unique, de-duplicated notes in about 19 seconds on the default Apify (datacenter) proxy — every core field (note ID, title, URL, cover image, like count, author ID/name/avatar/profile link) was populated for 100% of rows, with 0 duplicates. The lightweight server-rendered discovery path handles typical runs quickly and cheaply; the browser-driven keyword-search path is used as a fallback. Real duration and counts depend on keyword breadth and public availability.
Do I need proxies?
A cost-efficient Apify proxy is pre-selected and works for most runs. Residential proxy is available in Advanced settings for sessions that need a fresh network identity on this anti-bot-heavy site.
Can I search English keywords?
Yes. Chinese, English, hashtags, brand names, and mixed queries are all accepted. Chinese terms typically surface the deepest local coverage.
What export formats are supported? Is there an API?
Results export to JSON, CSV, Excel, XML, and HTML, and the dataset is available through the Xiaohongshu API on Apify, plus webhooks, schedules, and 100+ integrations (Make, Zapier, n8n, Airbyte, Google Drive, and more).
How fresh is the data?
Every run fetches live public data at request time and stamps each row with scrapedAt. Schedule the actor to keep datasets current for monitoring.
Can I filter by niche, creator, or content type?
Yes — use keywords to target a niche or brand, pick searchUsers for creators vs searchNotes for content, and filter the output by fields like noteType, likedCount, followersCount, or verified after export.
Are media files downloaded?
No. Public CDN URLs for covers, images, and videos are included, but heavy media binaries are not downloaded, which keeps runs fast and inexpensive.
Why are some fields missing from a row?
RedNote exposes different fields by content type and surface. The actor omits unavailable values to keep the dataset honest and analysis-friendly.
What happens if a note or profile is deleted or private?
Unavailable or private content is simply not extracted — successful public records remain in the dataset without fabricated error rows.
🔗 Related scrapers
- YouTube Contact Scraper
- WeChat Official Account Scraper
- Patreon Scraper
- YouTube Comments Scraper
- Bilibili Scraper
- Linktree Scraper
Responsible use
Xiaohongshu, RedNote, Little Red Book, XHS, and 小红书 are trademarks of their respective owners. This is an independent actor and is not affiliated with, endorsed by, or sponsored by Xiaohongshu. Use datasets lawfully and respect applicable privacy, intellectual-property, platform, and data-protection requirements.
Ready to collect Xiaohongshu data? Enter a keyword, choose an operation, and click Start to run the Xiaohongshu (RedNote) scraper now.