Skip to content

RedNote Comments Scraper

Try for free

Extract public Xiaohongshu (RedNote) comments from a note link: text, author, likes, replies, pictures, and the location shown on the comment.

📕 RedNote Comments Scraper

Export the public comments on any Xiaohongshu (RedNote) note. Paste a note link and get the comment text, author, likes, location label, attached pictures, and the replies shown under each comment, as structured rows. No Xiaohongshu login, no cookies, and no browser.

The public note page includes a preview of about five top-level comments with up to three replies each. This actor collects that preview, fast and cheaply, so you can review a note or check a link before planning a bigger job.

✨ Why use RedNote Comments Scraper?

  • 🔓 No login or cookies — it reads the comment preview that the public note page already contains.
  • 💬 Comments and replies — replies are nested on each comment and listed in replies and sub_comments.
  • 🌏 Location labels — the province or city label Xiaohongshu prints on each comment is kept in ip_location.
  • 🖼️ Pictures and mentions — attached pictures (with url, origin_url, width, height) and @ mentions are included.
  • 🔗 Flexible links — discovery or explore links with xsec_token, xhslink.com share links, or the whole message copied from the app.
  • 🧾 No charge for errors — a link that cannot be read saves no row and is not billed; it is listed in failedInputs of the OUTPUT record.

🎯 Use cases

  • 🛍️ Product feedback — save the comments readers left on a product note.
  • ✈️ Travel and food notes — keep reader tips and reactions to a travel note or a recipe.
  • 📊 Reports — pull author names, like counts, and locations into a spreadsheet.
  • 🖼️ Visual replies — keep the pictures people attached to a comment.
  • 🧪 Quick checks — test a note link before spending time on a larger export.

🚀 How to use

  1. Open a note in the Xiaohongshu app or website and copy its share link (it should include xsec_token).
  2. Paste one or more links into Note URLs or share links.
  3. Set Max comments per note and decide whether to Include replies under each comment.
  4. Click Start.
  5. Open the dataset and export the rows as JSON, CSV, or Excel.

📥 Input

FieldTypeWhat it does
noteUrlsarrayOne note per entry. Accepts a discovery or explore link with xsec_token, an xhslink.com share link, or the copied app message. A bare 24-character note id is accepted, but Xiaohongshu often refuses it without a token.
maxCommentsPerNoteintegerTop-level comments to keep per note. Default 10. 0 keeps every comment on the public page.
includeRepliesbooleanKeep the replies already shown under a comment. Default on. Each reply is billed as its own result.
maxRepliesPerCommentintegerReplies to keep per comment. Default 5. 0 keeps every reply on the page.
proxyConfigurationobjectDatacenter proxy by default.
{
  "noteUrls": [
    "https://www.xiaohongshu.com/discovery/item/6a8e608c000000001f0062b9?xsec_token=ABzJO67rEEOTnCrKBqkUgvqj0ejLq-v1wvUDt5FnSZcuU=&xsec_source=pc_feed"
  ],
  "maxCommentsPerNote": 10,
  "includeReplies": true,
  "maxRepliesPerComment": 5
}

📤 Output

Each top-level comment is one dataset row. Replies sit on replies and sub_comments.

FieldDescription
id, content, authorComment id, text, and author nickname.
userPublic nickname, avatar URL, and user id.
like_count, sub_comment_countLikes, and the reply total Xiaohongshu reports (can exceed the replies in the row).
ip_location, timeLocation label and Unix time in seconds.
pictures, at_usersAttached pictures and mentioned users.
replies, sub_commentsReplies shown under the comment.
note_id, note_comment_count, url_to_noteThe note the comment belongs to.

Real item from a test run (trimmed):

{
  "id": "6a8e7aaf000000000a01d176",
  "content": "Great note, thanks for sharing!",
  "author": "Jane Doe",
  "user": {
    "userid": "0000000000000000000000aa",
    "nickname": "Jane Doe",
    "images": "https://sns-avatar-qc.xhscdn.com/avatar/example-avatar.jpg?imageView2/2/w/120/format/jpg"
  },
  "like_count": 7610,
  "sub_comment_count": 82,
  "ip_location": "浙江",
  "time": 1787722416,
  "replies": [
    {
      "id": "6a8e7fd1000000000200fcd9",
      "content": "Same here.",
      "author": "John Roe",
      "like_count": 445,
      "ip_location": "上海",
      "time": 1787723730
    }
  ],
  "pictures": [],
  "at_users": [],
  "note_id": "6a8e608c000000001f0062b9",
  "note_comment_count": 1042,
  "url_to_note": "https://www.xiaohongshu.com/discovery/item/6a8e608c000000001f0062b9?xsec_token=ABzJO67rEEOTnCrKBqkUgvqj0ejLq-v1wvUDt5FnSZcuU=&xsec_source=pc_feed",
  "sort_by": "preview"
}

When a link cannot be read, no row is saved and nothing is billed. The link is listed in failedInputs of the run's OUTPUT record with one of these reasons:

ReasonMeaning
INVALID_URLThe text is not a Xiaohongshu note link.
NOTE_UNAVAILABLEThe note did not open. The usual cause is a link without xsec_token.
FETCH_FAILEDXiaohongshu did not answer after several retries.

💰 Pricing

$3.50 per 1,000 comments, which is $0.0035 per comment. Each reply kept on a comment costs the same $0.0035, and replies are billed only when Include replies is on. Links that cannot be read are not billed. When a comment's replies would go over your maximum charge, the comment keeps only the replies the remaining budget pays for, is charged for exactly those, and is marked truncatedAtChargeLimit: true; the run then stops.

Worked example: the default run returned 5 comments and 15 replies, which is 20 results or $0.07 in result fees. Compute and proxy traffic are billed separately at standard rates; the total for that run was about $0.075.

❓ FAQ

Is it legal to scrape RedNote comments? The actor reads publicly visible note pages only. You are responsible for following Xiaohongshu's terms and the privacy laws that apply to you.

Do I need a Xiaohongshu login or my own proxy? No login and no cookies. Datacenter proxy is built in and is enough for the public note page.

Why are there only about five comments? That is the preview Xiaohongshu puts on the public page. Later pages of the thread need a logged-in session and are not included.

Why was my link rejected? Open the note in the app, copy the share link, and paste that. The link should contain xsec_token. A bare note id, or a link with the token removed, is often blocked.

Are pictures included? Yes, when the comment on the public page has them.

Can I schedule it or use the API? Yes. Start runs and read the dataset through the API, or use schedules in the console.

⚠️ Limits

  • The public page shows about five top-level comments and up to three replies each, even when the note reports hundreds of comments. A larger limit still returns that preview.
  • Order is the preview order on the page.
  • Very large inputs (roughly more than 50 long share links in one run) can be rejected before the run starts. Split big lists across several runs.
  • Fields Xiaohongshu only sends to logged-in sessions, such as red_id or a business label, are null.
  • A note that opens and has no comments adds no row.
  • Short runs have a fixed start-up time of several seconds. We measured about 7 to 9 seconds for a 10-comment note.

Related actors

G2
4.7/5
Excellent
Trustpilot

The internet is full of data.
Start owning yours.

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.

No credit card. No setup calls.