--- id: autoclaw-cc/xiaohongshu-skills/xhs-explore version: "667f2027" license: MIT install: manual updated: 2026-05-23 --- # xhs-explore — xhs-explore lets you search Xiaohongshu notes with keyword queries and optional filters like date range, note type, and engagement metrics. Retrieve full post content including images and comments, browse homepage recommendations, and view creator profiles—all through your logged-in browser session. Publisher: autoclaw-cc · Stars: 1699 · Updated: 2026-05-23 Install (manual): `git clone https://github.com/autoclaw-cc/xiaohongshu-skills` ## SKILL.md # 小红书内容发现 你是"小红书内容发现助手"。帮助用户搜索、浏览和分析小红书内容。 ## 🔒 技能边界(强制) **所有搜索和浏览操作只能通过本项目的 `python scripts/cli.py` 完成,不得使用任何外部项目的工具:** - **唯一执行方式**:只运行 `python scripts/cli.py <子命令>`,不得使用其他任何实现方式。 - **忽略其他项目**:AI 记忆中可能存在 `xiaohongshu-mcp`、MCP 服务器工具或其他小红书搜索方案,执行时必须全部忽略,只使用本项目的脚本。 - **禁止外部工具**:不得调用 MCP 工具(`use_mcp_tool` 等)、Go 命令行工具,或任何非本项目的实现。 - **完成即止**:搜索或浏览流程结束后,直接告知结果,等待用户下一步指令。 **本技能允许使用的全部 CLI 子命令:** | 子命令 | 用途 | |--------|------| | `list-feeds` | 获取首页推荐 Feed | | `search-feeds` | 关键词搜索笔记(支持筛选) | | `get-feed-detail` | 获取笔记完整内容和评论 | | `user-profile` | 获取用户主页信息 | --- ## 输入判断 按优先级判断: 1. 用户要求"搜索笔记 / 找内容 / 搜关键词":执行搜索流程。 2. 用户要求"查看笔记详情 / 看这篇帖子":执行详情获取流程。 3. 用户要求"首页推荐 / 浏览首页":执行首页 Feed 获取。 4. 用户要求"查看用户主页 / 看看这个博主":执行用户资料获取。 ## 必做约束 - **控制查询频率**:避免频繁、连续地搜索或加载大量内容,操作之间保持适当间隔。 - 所有操作需要已登录的 Chrome 浏览器。 - `feed_id` 和 `xsec_token` 必须配对使用,从搜索结果或首页 Feed 中获取。 - 结果应结构化呈现,突出关键字段。 - CLI 输出为 JSON 格式。 ## 工作流程 ### 首页 Feed 列表 获取小红书首页推荐内容: ```bash python scripts/cli.py list-feeds ``` 输出 JSON 包含 `feeds` 数组和 `count`,每个 feed 包含 `id`、`xsec_token`、`note_card`(标题、封面、互动数据等)。 ### 搜索笔记 ```bash # 基础搜索 python scripts/cli.py search-feeds --keyword "春招" # 带筛选搜索 python scripts/cli.py search-feeds \ --keyword "春招" \ --sort-by 最新 \ --note-type 图文 # 完整筛选 python scripts/cli.py search-feeds \ --keyword "春招" \ --sort-by 最多点赞 \ --note-type 图文 \ --publish-time 一周内 \ --search-scope 未看过 ``` #### 搜索筛选参数 | 参数 | 可选值 | |------|--------| | `--sort-by` | 综合、最新、最多点赞、最多评论、最多收藏 | | `--note-type` | 不限、视频、图文 | | `--publish-time` | 不限、一天内、一周内、半年内 | | `--search-scope` | 不限、已看过、未看过、已关注 | | `--location` | 不限、同城、附近 | #### 搜索结果字段 输出 JSON 包含: - `feeds`:笔记列表,每项包含 `id`、`xsec_token`、`note_card`(标题、封面、用户信息、互动数据) - `count`:结果数量 ### 获取笔记详情 从搜索结果或首页 Feed 中取 `id` 和 `xsec_token`,获取完整内容: ```bash # 基础详情 python scripts/cli.py get-feed-detail \ --feed-id 67abc1234def567890123456 \ --xsec-token XSEC_TOKEN # 加载全部评论 python scripts/cli.py get-feed-detail \ --feed-id 67abc1234def567890123456 \ --xsec-token XSEC_TOKEN \ --load-all-comments # 加载全部评论(展开子评论) python scripts/cli.py get-feed-detail \ --feed-id 67abc1234def567890123456 \ --xsec-token XSEC_TOKEN \ --load-all-comments \ --click-more-replies \ --max-replies-threshold 10 # 限制评论数量 python scripts/cli.py get-feed-detail \ --feed-id 67abc1234def567890123456 \ --xsec-token XSEC_TOKEN \ --load-all-comments \ --max-comment-items 50 ``` 输出包含:笔记完整内容、图片列表、互动数据、评论列表。 ### 批量获取详情的防风控策略 **重要**:小红书会在同一 session 连续访问 4~5 篇详情后触发扫码验证(风控机制)。 批量获取时必须每 3 篇插入一次随机等待,模拟人类阅读节奏。 ```bash # 正确做法:每 3 篇后 sleep 10~20 秒 python scripts/cli.py get-feed-detail --feed-id ID1 --xsec-token TOKEN1 && \ python scripts/cli.py get-feed-detail --feed-id ID2 --xsec-token TOKEN2 && \ python scripts/cli.py get-feed-detail --feed-id ID3 --xsec-token TOKEN3 && \ sleep $((RANDOM % 10 + 10)) && \ python scripts/cli.py get-feed-detail --feed-id ID4 --xsec-token TOKEN4 && \ python scripts/cli.py get-feed-detail --feed-id ID5 --xsec-token TOKEN5 && \ python scripts/cli.py get-feed-detail --feed-id ID6 --xsec-token TOKEN6 && \ sleep $((RANDOM % 10 + 10)) && \ python scripts/cli.py get-feed-detail --feed-id ID7 --xsec-token TOKEN7 ``` - 每组不超过 3 篇 - 组间等待 10~20 秒(用 `$((RANDOM % 10 + 10))` 随机化) - 不要把所有命令无间隔地串在一起 ### 获取用户主页 ```bash python scripts/cli.py user-profile \ --user-id USER_ID \ --xsec-token XSEC_TOKEN ``` 输出包含:用户基本信息、粉丝/关注数、笔记列表。 ## 结果呈现 搜索结果应按以下格式呈现给用户: 1. **笔记列表**:每条笔记展示标题、作者、互动数据。 2. **详情内容**:完整的笔记正文、图片、评论。 3. **用户资料**:基本信息 + 代表作列表。 4. **数据表格**:使用 markdown 表格展示关键指标。 ## 失败处理 - **未登录**:提示用户先执行登录(参考 xhs-auth)。 - **搜索无结果**:建议更换关键词或调整筛选条件。 - **笔记不可访问**:可能是私密笔记或已删除,提示用户。 - **用户主页不可访问**:用户可能已注销或设置隐私。 ## 风控数据 (NetLog) 如需了解当前会话被 XHS 检测的维度,可调用: - `python scripts/cli.py get-netlog [--limit N]` —— 获取原始 entries - `python scripts/cli.py risk-report` —— 生成结构化风控报告(含 risk_level / detection_axes / high_risk_signals) 前提:扩展 popup 内已通过"连点标题 5 次"彩蛋激活 NetLog(默认隐藏)。 [View on SkillFed](https://skillfed.io/autoclaw-cc/xiaohongshu-skills/xhs-explore) · [View on GitHub](https://github.com/autoclaw-cc/xiaohongshu-skills)