Agent skill
xiaohongshu-session-reader
Use this skill to read Xiaohongshu (小红书) via HTTP/API first with local logged-in Chrome cookies, and only use Playwright as fallback. Supports profile card extraction, note detail extraction, and conditional comment fallback when API is blocked.
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/other/other/xiaohongshu-session-reader
SKILL.md
Xiaohongshu Session Reader
Scope
- Reuse local Chrome logged-in session only.
- Prefer HTTP/API extraction for stability and speed.
- Use Playwright only when HTTP/API path is blocked (captcha / risk control).
- Support:
- profile card titles (for 谁是卧底词组 collection)
- note detail (title/desc/author)
- comments when API permits; otherwise explicit fallback signal
- Do not forge identity, bypass captcha, or brute-force anti-bot checks.
Prerequisite Check
Before extraction:
python3 --version
Fallback-only prerequisite:
codex mcp get playwright-ext
Workflow
- Run HTTP-first reader:
python3 <skill_dir>/scripts/xhs_http_reader.py \
--url "<xhslink_or_xiaohongshu_url>" \
--mode auto \
--max-items 40 \
--max-comments 20 \
--pretty
- If response has
fallback.required=false, use returned data directly. - If response has
fallback.required=true, switch to Playwright fallback:- profile: open profile page and read visible card titles.
- note comments: open note detail and read comments from DOM snapshot.
- Normalize four-word groups with
scripts/undercover_parser.py. - Persist progress in
.cache/xhs_undercover_progress.jsonfor batch tasks.
Block Handling Rules
- If HTTP returns captcha or risk code (for example
300011), do not keep retrying aggressively. - Degrade once to Playwright fallback and continue extraction.
- If Playwright also lands on captcha/login gate, request user to refresh local login session.
- Never claim detail/comments were obtained via HTTP when response marks fallback required.
Output Contract
Use this structure:
{
"source": "<xhs link>",
"captured_at": "YYYY-MM-DD",
"groups": [
{ "id": 1, "words": ["词A", "词B", "词B", "词B"], "odd": "词A" }
]
}
If confidence is low, add note for manual verification.
Resources
- HTTP-first reader:
scripts/xhs_http_reader.py - Cookie exporter (fallback tooling):
scripts/export_xhs_cookies.py - DOM fallback reference:
references/extraction-checklist.md - Group parser:
scripts/undercover_parser.py
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?