Skip to main content

xhs-publish

小红书内容发布 — 通过 Playwright 持久化 profile 实现图文/视频发布,支持本地图片和标签,自动复用登录态。

소스 정보

저장소
111pointer111/claude-marketplace
최근 소스 활동
2026년 4월 30일 15:00
감지된 SKILL.md 언어
중국어
스타
4
포크
0

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

파일 탐색기
2 개 파일

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
xhs-publish
description
小红书内容发布 — 通过 Playwright 持久化 profile 实现图文/视频发布,支持本地图片和标签,自动复用登录态。
user-invocable
true
# 小红书发布 Skill 通过 Playwright + 持久化 profile 实现小红书内容发布。**首次扫码登录一次,后续自动复用登录态**,全程 headless 不弹窗。 ## 前置条件 ```bash pip install playwright playwright install chromium ``` ## 目录结构 ``` skills/xhs-publish/ ├── SKILL.md # 本文档 ├── tools/ │ └── publisher.py # 发布工具入口 ├── xhs_profiles/default/ # 持久化登录态(自动生成,不要手动改) └── xhs_drafts.json # 本地草稿缓存 ``` ## 命令 ### 首次登录(后续不需要) ```bash python3 tools/publisher.py login --timeout 300 ``` - 弹出 Chrome 窗口到小红书创作者中心 - 手动在窗口中扫码登录 - **登录态永久保存在 `xhs_profiles/default/` 中** - 后续所有发布都在 headless 模式下自动进行 ### 图文发布 ```bash python3 tools/publisher.py note \ --images /path/img1.jpg [/path/img2 ...] \ --title "标题" \ --body "正文内容" \ [--tags tag1 tag2] \ [--dry-run] ``` ### 视频发布(待实现) ```bash python3 tools/publisher.py video ... # 接口已预留,逻辑待适配 ``` ## 实现架构 ``` 用户输入 → publisher.py CLI → Playwright launch_persistent_context(xhs_profiles/default/) → 非 headless: 登录窗口 → headless: 自动操作 DOM → 1. 切换到"上传图文" tab(JS 精确点击 position:relative 的 tab) → 2. 上传图片(set_input_files) → 3. 填写标题 → 4. 填写正文 + 标签 → 5. 点击底部"发布"按钮(不是顶部 tab 标题) → 输出发布结果 ``` ## 已知问题与边界 | 问题 | 解决方案 | |------|---------| | 小红书检测 headless | 加 `--disable-blink-features=AutomationControlled` 绕过 | | 多层 tab 结构,默认在视频 tab | JS 精确选择 `div.creator-tab` + `position:relative` 的版本 | | 页面顶部和底部都有"发布"文字 | 只能点底部 `<button>发布</button>`,不是顶部 tab 标题 | | 图片上传后需等待处理 | `wait_for_timeout(3000)` + 检查缩略图可见 | | profile 被 lock | 删除 `SingletonLock`/`SingletonSocket` 文件 | ## 发布测试记录 | 时间 | 标题 | 结果 | 原因 | |------|------|------|------| | 04-25 00:30 | 测试发布/测试发布 v2 | ❌ 未发布 | 默认在视频 tab 下发图文,或 tab 切换不对 | | 04-25 00:48 | 测试发布 v3/v4 | ❌ 存草稿 | 点了顶部 tab 标题"发布笔记"而非底部"发布"按钮 | | 04-25 00:55 | 测试发布 v6 | ✅ 成功 | 正确切 tab + 正确点击底部"发布"按钮 | ## 注意事项 - 首次使用一定要先 `login` 一次扫码 - 如果 Chrome profile 被 lock,删除 `xhs_profiles/default/Singleton*` 文件 - 发布默认 headless=True,调试可以临时改成 False
GitHub에서 보기