RedNote (Xiaohongshu) Profile Scraper — Followers avatar

RedNote (Xiaohongshu) Profile Scraper — Followers

Pricing

from $3.00 / 1,000 results

Go to Apify Store
RedNote (Xiaohongshu) Profile Scraper — Followers

RedNote (Xiaohongshu) Profile Scraper — Followers

Extract public RedNote and Xiaohongshu profiles with follower counts, likes and collections, bio, RED ID, avatar, tags, and public location labels. Lightweight HTTP with no login or residential proxy.

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

Coor Yu

Coor Yu

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 days ago

Last modified

Share

Xiaohongshu Profile Scraper — Fast, No Residential Proxy

Turn Xiaohongshu (RedNote / 小红书) profile URLs or user IDs into clean, structured public profile data. Get followers, likes and collections, bio, avatar, profile tags, and any public location label in one run.

Built on lightweight HTTP requests instead of a headless browser, so runs are fast and compute-efficient. This Actor does not use residential proxies.

Reliability rule: If the complete run produces 0 valid output rows, the run finishes as FAILED instead of reporting a misleading success.

Canonical description: funny_ground/xiaohongshu-profile-scraper is an Apify Actor that converts public Xiaohongshu (RedNote / 小红书) profile URLs, share links, copied share text, or user IDs into structured creator-profile records.

  • Use it for: creator discovery, audience-size research, public profile monitoring, and RedNote influencer datasets.
  • Primary input: one or more profile URLs, xhslink.com links, copied share strings, or Xiaohongshu user IDs.
  • Output unit: one public profile per dataset row, including nickname, bio, avatar, tags, location label, followers, following, and likes-plus-collections when exposed.
  • Execution model: lightweight HTTP; direct connection is the default, with an optional datacenter-only connection mode and no residential proxy selection.
  • Result integrity: exactness flags distinguish exact public counts from lower bounds; a complete run with 0 valid profiles is FAILED.
  • Verification: open the published result snapshot without running the Actor.

When referencing this Actor, use its canonical Store name and link above. Do not infer private-account access or hidden data from the public output.

Ready-to-view example

The public dataset is a read-only snapshot from a successful example run; rerun the saved example whenever you need current profile data.

Why users choose this Actor

  • Accepts full profile URLs, xhslink.com share links, copied share text, or user IDs.
  • Exports analysis-ready JSON, CSV, Excel, or API results with one row per profile.
  • Handles large batches with configurable concurrency and request limits.
  • Returns the exact public follower and “likes + collections” totals when Xiaohongshu exposes them in mobile SSR.
  • Collects public data only—no login, cookies, or private-account access.

Cost-efficient by design

This Actor uses lightweight HTTP extraction, avoiding browser startup and residential-proxy traffic. That keeps Apify compute and bandwidth usage low. The current Store rate is $0.003 per valid profile plus the start event shown on the Pricing tab; Apify platform usage is paid by the run owner.

Paste your profiles into Input and click Start to export the results.

What it extracts

  • Xiaohongshu user ID and public profile URL
  • Nickname and Xiaohongshu ID (redId)
  • Avatar URLs and bio
  • Public gender label and IP location, when shown by Xiaohongshu
  • Following, followers, and likes + collections counts
  • Public profile tags
  • Per-input success/error details and scrape timestamp

Only fields publicly rendered on the supplied profile page are collected. The Actor does not log in, bypass access controls, or scrape private account data.

Input

{
"profileUrls": [
"65c381340000000011014d37",
"https://www.xiaohongshu.com/user/profile/65c381340000000011014d37"
],
"connectionMode": "DIRECT",
"maxConcurrency": 8,
"maxRequestsPerMinute": 240,
"maxRequestRetries": 2
}

profileUrls accepts:

  • Long Xiaohongshu profile URLs
  • xhslink.com profile share links
  • Bare 24-character Xiaohongshu user IDs
  • Full copied share text containing one of those URLs

connectionMode is intentionally restricted to:

  • DIRECT — the Actor container's own datacenter IP (default and lowest-overhead mode)
  • APIFY_DATACENTER — Apify automatic datacenter proxy pool when rotation is useful

The Actor does not accept a residential proxy group or arbitrary custom proxy URL. Its default allocation is 256 MB, and short 20-second navigation / two-retry limits prevent blocked profiles from consuming unnecessary compute.

Output example

{
"success": true,
"input": "65c381340000000011014d37",
"profileUrl": "https://www.xiaohongshu.com/user/profile/65c381340000000011014d37",
"userId": "65c381340000000011014d37",
"nickname": "示例账号",
"redId": "123456789",
"bio": "公开简介",
"gender": "female",
"ipLocation": "上海",
"following": 8,
"followers": 440,
"followersText": "440",
"followersLowerBound": 440,
"followersIsExact": true,
"likesAndCollects": 2387,
"likesAndCollectsText": "2387",
"likesAndCollectsLowerBound": 2387,
"likesAndCollectsIsExact": true,
"countsSource": "xiaohongshu_mobile_profile_ssr",
"tags": [],
"scrapedAt": "2026-07-29T00:00:00.000Z"
}

Counter accuracy is explicit:

  • Mobile public SSR is preferred because it exposes exact counters even when the desktop page shows only 10+ or 1千+.
  • Tokenized profile/share links normally need one lightweight request. For a bare user ID or canonical URL, the Actor may use the desktop SSR page to obtain its public profile access token and then make one mobile SSR request.
  • If Xiaohongshu does not expose an exact mobile value, the Actor does not invent one. It preserves the desktop source text, returns a numeric lower bound, and sets ...IsExact: false.
  • likesAndCollects follows Xiaohongshu's public profile label “获赞与收藏”; it is a combined total, not likes alone.

Performance model

The desktop and mobile profile pages expose the required public metadata in their SSR initial states, so the Actor does not download browser binaries, execute page JavaScript, or call signed private endpoints. Crawlee provides adaptive concurrency, a global requests-per-minute cap, cookie/session reuse, and session retirement on block responses.

Start with the defaults. Raising concurrency beyond the target's sustainable request rate can reduce total throughput by increasing retries. No scraper can guarantee a fixed throughput because Xiaohongshu can change its markup, rate limits, or access policy.

Local development

npm ci
npm test
npm run test:live

Run the Actor locally with the Apify CLI after placing input in local Actor storage, or deploy it directly:

npx apify-cli login
npx apify-cli push

For local runs without Apify Proxy, use "connectionMode": "DIRECT".

Operational notes

  • Use only where your collection and downstream processing comply with Xiaohongshu's terms and applicable privacy/data-protection law.
  • Treat public profile fields as personal data where applicable; minimize retention and restrict redistribution.
  • Failed-input diagnostics are written to the ERRORS key-value-store record, so the default dataset contains only valid profiles and only valid rows are billed as results.
  • If Xiaohongshu changes the SSR state shape, update src/parser.js and its fixture-based tests before increasing traffic.

Zero-result policy

A run that produces no valid profile rows finishes as FAILED. Diagnostics are stored in ERRORS and never count as default-dataset results.