explaingit

joeanamier/xhs-downloader

11,150PythonAudience · generalComplexity · 2/5Setup · moderate

TLDR

A Python tool for downloading photos, videos, and post data from XiaoHongShu (Little Red Book / RedNote), with clipboard monitoring, bulk profile downloads, and an API server mode.

Mindmap

mindmap
  root((xhs-downloader))
    What it does
      Download posts
      Bulk profile archive
      Clipboard monitoring
    Tech stack
      Python
      FastAPI
      Docker
    Use cases
      Content archiving
      Media downloading
      API automation
    Audience
      Content creators
      General users
      Developers
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Download all photos and videos from a XiaoHongShu post by pasting its link into the tool.

USE CASE 2

Bulk-download a creator's full post archive, liked posts, or saved collections from their profile.

USE CASE 3

Run the tool as an API server so your app can trigger XiaoHongShu downloads programmatically.

USE CASE 4

Monitor your clipboard and auto-download any XiaoHongShu link you copy, skipping files already saved.

Tech stack

PythonFastAPIDocker

Getting it running

Difficulty · moderate Time to first run · 30min

Requires Python 3.12 or higher, Docker images are available for server and MCP modes.

In plain English

XHS-Downloader is a Python tool for downloading content from XiaoHongShu, a Chinese social media platform known in English as RedNote or Little Red Book. The platform is popular for lifestyle posts, product reviews, and short-form content that mixes images, video, and text. The tool accepts a link to a post on XiaoHongShu and downloads the media attached to it: photos, videos, and live photos. It can also pull lists of post links from a user's profile, covering their published posts, saved favorites, liked posts, and collections. Extracting links from search results is also supported. Beyond individual downloads, the tool can monitor your clipboard in the background and start a download automatically when it detects a valid XiaoHongShu link. It tracks which files it has already downloaded to skip repeats, and supports resuming interrupted downloads rather than starting from scratch. Files can be saved into per-post folders with customizable naming formats, and post metadata can be saved alongside the downloaded media. The tool runs in several modes: an interactive terminal interface, a command-line mode where you pass links as arguments, an API server mode using FastAPI with auto-generated documentation, and an MCP mode for connecting the tool to AI systems. A browser user script is also included for downloading directly from the web page without running a local program. Docker is supported for all server modes. The README is primarily in Chinese with an English version linked at the top. Python 3.12 or higher is required to run the project from source.

Copy-paste prompts

Prompt 1
Using xhs-downloader, help me write a script to download all posts from a specific XiaoHongShu user profile and save them in per-post folders with metadata.
Prompt 2
Show me how to run xhs-downloader in FastAPI server mode so I can trigger downloads from my own application via HTTP requests.
Prompt 3
Help me set up xhs-downloader using Docker so I can run it without installing Python locally.
Prompt 4
Walk me through connecting xhs-downloader's MCP mode to Claude so I can download XiaoHongShu content through a chat interface.
Prompt 5
Help me configure xhs-downloader to resume interrupted downloads and skip files I have already saved in a previous session.
Open on GitHub → Explain another repo

← joeanamier on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.