小红书帖子创作与发布技能。用于:(1) 生成小红书风格的帖子内容(标题+正文+标签)(2) 生成帖子相关的配图 (3) 自动上传到小红书创作者平台(默认自动上传,失败时自动提供手动指引) (4) 生成本地预览HTML文件。触发词:小红书创作、create redbook、小红书、红书、笔记创作、帖子创作
本技能帮助用户创作小红书风格的优质内容,包括标题、正文、标签、配图,并默认自动上传到小红书创作者平台。
重要更新(v3.0):
在开始工作流程前,必须检查并准备以下环境:
python3 --version
要求:Python 3.0 或更高版本
如果未安装或版本过低:
❌ 未检测到 Python 3+ 环境本技能需要 Python 3.0+ 支持。
安装方法:
- macOS: brew install python3
- Windows: 访问 https://www.python.org/ 下载安装
安装完成后请重新运行此技能。
python3 -c "import playwright" 2>/dev/null && echo "Playwright installed" || echo "Playwright not found"
如果未安装:
🔍 检测到 Playwright 未安装,正在自动安装...pip3 install playwright
playwright install chromium
✅ Playwright 安装完成如果已安装:
✅ Playwright 已安装# macOS
test -d "/Applications/Google Chrome.app" && echo "Chrome installed" || echo "Chrome not found"
如果未安装:
⚠️ 未检测到 Chrome 浏览器配图转换需要 Chrome(HTML 转 PNG 功能)。
下载地址: https://www.google.com/chrome/
注意:Playwright 会使用 Chromium 进行自动化上传,不依赖系统 Chrome
重要:无论用户是否提供话题,都必须先进行深度搜索,确保内容的准确性和时效性。
使用 WebSearch 工具对话题进行深度搜索:
搜索要求:
示例搜索关键词:
搜索输出:
🔍 正在深度搜索话题: [话题名称]
搜索关键词 1: [关键词]
- 找到 X 个相关结果
- 关键信息: [摘要]
搜索关键词 2: [关键词]
- 找到 X 个相关结果
- 关键信息: [摘要]
✅ 搜索完成,已获取充足素材
参考 references/style-guide.md 了解小红书内容风格规范。
标题钩子类型:
正文钩子段示例:
姐妹们!这个方法我藏了好久了...
不敢相信,我居然现在才发现这个...
分享一个让我效率翻倍的小技巧...
正文内容展开要求:
内容输出格式:
## 标题
[生成的标题,包含emoji]
## 正文
[开头钩子段 - 引发共鸣,30-50字]
[核心内容 - 详细展开每个要点,200-350字]
- 使用搜索到的数据和案例
- 加入具体使用场景
- 提供对比和体验
[总结段 - 归纳重点,30-50字]
[互动引导 - 引导评论收藏,20-30字]
## 标签
#标签1 #标签2 #标签3 #标签4 #标签5 #标签6 #标签7 #标签8
重要变更:不再使用 HTML 格式,直接生成 PNG/JPG 图片。
只生成 1张主图,不再需要多张裁剪:
| 图片序号 | 文件名 | 图片类型 | 内容说明 |
|---|---|---|---|
| 第1张 | cover.png | 主图 | 9:16 竖版主图,包含标题和核心内容,吸引点击 |
注意:
重要:图片风格不需要统一,可以根据内容各自设计。
可选设计风格:
Newsprint 报纸风格(参考 assets/image-templates.html)
现代简约风格
杂志封面风格
卡片堆叠风格
设计原则(所有风格通用):
Design Tokens(设计变量):
--background: #F9F9F7; /* 报纸米白色 */
--foreground: #111111; /* 墨黑色 */
--muted: #E5E5E0; /* 分隔灰 */
--accent: #CC0000; /* 编辑红(仅用于强调) */
字体系统:
Noto Serif SC(中文衬线,粗体,大字号)Noto Sans SC(中文无衬线)Inter(英文无衬线,大写,字母间距加宽)JetBrains Mono(等宽字体)核心设计规则:
border-radius: 0text-transform: uppercase; letter-spacing: 0.15em步骤 1:创建临时 HTML 文件
# 创建临时目录
mkdir -p ./redbook-article/[主题]-[日期]/temp/
# 使用 Write 工具生成 HTML 文件
# 文件: ./redbook-article/[主题]-[日期]/temp/cover.html
步骤 2:使用 Python 脚本转换为 PNG
python3 /Users/a58/.claude/skills/redbook-creator-publish/scripts/html_to_image.py \
./redbook-article/[主题]-[日期]/temp/ \
--output ./redbook-article/[主题]-[日期]/images/
步骤 3:清理临时文件
rm -rf ./redbook-article/[主题]-[日期]/temp/
输出日志示例:
🎨 生成配图...
📝 创建临时 HTML 模板...
✅ cover.html
✅ content-1.html
✅ content-2.html
✅ summary.html
🖼️ 转换为 PNG 图片...
使用 Chrome: /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
转换: cover.html -> cover.png ... ✅
转换: content-1.html -> content-1.png ... ✅
转换: content-2.html -> content-2.png ... ✅
转换: summary.html -> summary.png ... ✅
完成: 4/4 个文件转换成功
🗑️ 清理临时文件...
✅ 配图生成完成!
在用户当前工作目录下创建完整的文件结构:
redbook-article/
└── [帖子主题]-[YYYY-MM-DD]/
├── [帖子主题]-[YYYY-MM-DD].html # 预览文件(显示图片)
├── [帖子主题]-[YYYY-MM-DD].md # Markdown格式(显示图片+路径)
├── [帖子主题]-[YYYY-MM-DD].txt # 纯文本原始内容
├── images/
│ ├── cover.png # 封面图
│ ├── content-1.png # 内容图1
│ ├── content-2.png # 内容图2
│ ├── summary.png # 总结图
│ └── ...
├── config.json # 帖子配置信息
└── publish_config_temp.json # 发布配置(临时)
1. HTML 预览文件(必须显示图片):
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>[标题]</title>
<style>
/* Newsprint 风格 CSS */
</style>
</head>
<body>
<div class="preview-container">
<h1>[标题]</h1>
<!-- 显示配图 -->
<div class="images-grid">
<img src="images/cover.png" alt="封面图">
<img src="images/content-1.png" alt="内容图1">
<!-- ... 更多图片 -->
</div>
<div class="content">
[正文内容]
</div>
<div class="tags">
[标签]
</div>
</div>
</body>
</html>
2. Markdown 文件(.md)(必须显示图片+路径):
# [标题]
## 配图预览




## 正文
[完整正文内容,保留格式]
## 标签
[所有标签]
---
## 配图路径列表
便于在其他 Markdown 工具中查看:
- 封面图:`images/cover.png`
- 内容图1:`images/content-1.png`
- 内容图2:`images/content-2.png`
- 总结图:`images/summary.png`
---
*生成时间:[YYYY-MM-DD HH:mm:ss]*
*字数统计:[字数] 字*
3. 纯文本文件(.txt):
[标题]
[正文内容,纯文本格式,可直接复制]
[标签,空格分隔]
4. 配置文件(config.json):
{
"title": "帖子标题",
"content": "正文内容",
"tags": ["标签1", "标签2", "标签3"],
"images": [
"images/cover.png",
"images/content-1.png",
"images/content-2.png",
"images/summary.png"
],
"created_at": "2026-01-26T12:00:00",
"word_count": 450,
"search_keywords": ["关键词1", "关键词2"],
"sources": ["来源1", "来源2"]
}
执行命令:
# 创建目录结构
mkdir -p ./redbook-article/[帖子主题]-[日期]/images
# 生成各个文件(使用Write工具)
完成后告知用户:
✅ 文件已生成!
📁 保存位置:./redbook-article/[帖子主题]-[日期]/
包含以下文件:
├── [帖子主题]-[日期].html # 预览文件(可在浏览器中打开查看)
├── [帖子主题]-[日期].md # Markdown文章(显示图片)
├── [帖子主题]-[日期].txt # 纯文本(可直接复制粘贴)
├── images/ # 配图文件夹(PNG格式)
│ ├── cover.png # 封面图 ⭐
│ ├── content-1.png # 内容图1
│ ├── content-2.png # 内容图2
│ └── summary.png # 总结图
└── config.json # 配置信息
💡 提示:
- 在浏览器中打开 .html 文件可预览完整效果
- 在 Markdown 编辑器中打开 .md 文件可查看图文内容
- images/ 文件夹中的图片可以直接上传到小红书
重要:默认执行自动上传,无需询问用户。只有自动上传失败时才提示手动上传。
首先检查 Playwright 是否已安装:
python3 -c "import playwright" 2>/dev/null && echo "Playwright installed" || echo "Playwright not found"
如果未安装:
🔍 检测到 Playwright 未安装,正在自动安装...
Playwright 是现代化的浏览器自动化工具,用于自动上传内容到小红书。
安装过程约需 1-2 分钟...
自动执行安装:
pip3 install playwright
playwright install chromium
显示安装进度和结果:
⏳ 正在安装 Playwright...
⏳ 正在下载 Chromium 浏览器...
✅ Playwright 安装完成!
如果已安装:
✅ Playwright 已安装,跳过安装步骤
必须显示的重要提示:
==========================================================
🚀 准备自动上传到小红书
==========================================================
⚠️ 重要提示:
1. 首次使用需要在浏览器中登录小红书账号
(浏览器会自动打开,请完成登录)
2. 网络连接正常
3. 上传过程中请勿操作浏览器
(预计耗时:30-60秒)
即将开始自动上传...
不需要等待用户确认,直接开始上传流程。
使用 Playwright Python 脚本执行上传:
python3 /Users/a58/.claude/skills/redbook-creator-publish/scripts/auto_upload_playwright.py \
--config ./redbook-article/[主题]-[日期]/config.json
脚本参数说明:
--config 或 -c:配置文件路径(必需)--headless:使用无头模式(可选,默认显示浏览器窗口)Playwright 脚本会自动执行以下步骤,每步都会输出日志:
步骤 1:打开小红书创作者平台
脚本会:
输出日志:
🌐 步骤 1/5: 打开小红书创作者平台
URL: https://creator.xiaohongshu.com/publish/publish?from=menu&target=image
✅ 页面加载成功
或者(如果未登录):
🌐 步骤 1/5: 打开小红书创作者平台
URL: https://creator.xiaohongshu.com/publish/publish?from=menu&target=image
⚠️ 检测到未登录,请先登录...
等待登录完成...
✅ 登录成功
✅ 页面加载成功
步骤 2:上传图片
脚本会:
输出日志:
📸 步骤 2/5: 上传图片
DOM选择器: input[type="file"][accept*="image"]
图片数量: 4 张
封面图: cover.png (第一张)
上传中...
✅ cover.png 上传成功
✅ content-1.png 上传成功
✅ content-2.png 上传成功
✅ summary.png 上传成功
✅ 所有图片上传完成
步骤 3:填写标题
脚本会:
输出日志:
✍️ 步骤 3/5: 填写标题
DOM选择器: .c-input_inner input[type="text"]
标题内容: 🔥 3个AI工具让效率翻倍
✅ 标题填写完成
步骤 4:填写正文
脚本会:
输出日志:
📝 步骤 4/5: 填写正文
DOM选择器: .ql-editor
正文字数: 387 字
✅ 正文填写完成
步骤 5:点击发布
脚本会:
输出日志:
🚀 步骤 5/5: 点击发布
DOM选择器: .css-k405vo
✅ 已点击发布按钮
⏳ 等待发布完成...
✅ 发布成功!
==========================================================
🚀 小红书自动上传
==========================================================
⚠️ 重要提示:
1. 首次使用需要在浏览器中登录小红书账号
2. 上传过程中请勿操作浏览器
3. 预计耗时:30-60秒
即将开始自动上传...
🌐 步骤 1/5: 打开小红书创作者平台
URL: https://creator.xiaohongshu.com/publish/publish?from=menu&target=image
✅ 页面加载成功
📸 步骤 2/5: 上传图片
DOM选择器: input[type="file"][accept*="image"]
图片数量: 4 张
封面图: cover.png (第一张)
上传中...
✅ cover.png 上传成功
✅ content-1.png 上传成功
✅ content-2.png 上传成功
✅ summary.png 上传成功
✅ 所有图片上传完成
✍️ 步骤 3/5: 填写标题
DOM选择器: .c-input_inner input[type="text"]
标题内容: 🔥 3个AI工具让效率翻倍
✅ 标题填写完成
📝 步骤 4/5: 填写正文
DOM选择器: .ql-editor
正文字数: 387 字
✅ 正文填写完成
🚀 步骤 5/5: 点击发布
DOM选择器: .css-k405vo
✅ 已点击发布按钮
⏳ 等待发布完成...
✅ 发布成功!
==========================================================
🎉 上传完成!
==========================================================
帖子已成功发布到小红书创作者平台
🔗 查看帖子:
请在小红书创作者平台查看发布结果
https://creator.xiaohongshu.com/
💡 提示:
- 发布后可能需要平台审核
- 审核通过后会在小红书APP中显示
浏览器将在 5 秒后关闭...
每个步骤都有错误处理,如果失败则输出详细错误信息:
示例 1:DOM 元素未找到
❌ 步骤 2/5 失败: 上传图片
错误: 未找到上传控件
可能原因:
1. 小红书平台更新了页面结构
2. DOM选择器配置不正确
解决方案:
1. 在浏览器中打开 https://creator.xiaohongshu.com/publish/publish
2. 按 F12 打开开发者工具
3. 找到上传控件的新选择器
4. 通过环境变量 UPLOAD_INPUT_SELECTOR 更新选择器
当前选择器: input[type="file"][accept*="image"]
示例 2:上传超时
❌ 步骤 2/5 失败: 上传图片
错误: 上传超时
可能原因:
1. 网络连接不稳定
2. 图片文件过大
3. 小红书服务器响应慢
解决方案:
1. 检查网络连接
2. 稍后重试
3. 或使用手动上传方式
可以通过环境变量自定义 DOM 选择器(当小红书平台更新页面结构时):
# 在运行脚本前设置环境变量
export UPLOAD_INPUT_SELECTOR='input[type="file"][accept*="image"]'
export TITLE_INPUT_SELECTOR='.c-input_inner input[type="text"]'
export CONTENT_CONTAINER_SELECTOR='.ql-editor'
export PUBLISH_BUTTON_SELECTOR='.css-k405vo'
export IMAGE_ITEM_SELECTOR='.upload-list-item'
# 然后运行上传脚本
python3 auto_upload_playwright.py --config config.json
或者在 Python 脚本调用前设置:
import os
os.environ['UPLOAD_INPUT_SELECTOR'] = 'input[type="file"]'
# 然后调用脚本
重要:只有当自动上传失败时,才显示以下手动上传指引。
检测到以下任一错误时,判定为自动上传失败:
失败时的输出格式:
==========================================================
❌ 自动上传失败
==========================================================
失败原因:[具体错误信息]
别担心,内容已经准备好了,请使用手动方式上传:
📋 手动上传步骤:
1️⃣ 打开小红书创作者平台
https://creator.xiaohongshu.com/publish/publish?from=menu&target=image
2️⃣ 上传图片(按顺序)
📂 位置:./redbook-article/[主题]-[日期]/images/
⚠️ 重要:必须按以下顺序上传(第一张是封面图):
1. cover.png ← 封面图(第一张)
2. content-1.png ← 内容图1
3. content-2.png ← 内容图2
4. summary.png ← 总结图(或其他内容图)
3️⃣ 填写标题
📄 打开:[主题]-[日期].txt
复制第一行标题,粘贴到小红书标题输入框
4️⃣ 填写正文
📄 从 .txt 文件复制正文内容
粘贴到小红书正文输入框
5️⃣ 添加标签
📄 从 .txt 文件复制标签行
粘贴到小红书标签输入框
6️⃣ 点击发布
等待平台审核通过
==========================================================
📂 文件位置:
./redbook-article/[主题]-[日期]/
💡 提示:
- 可以在浏览器中打开 .html 文件预览效果
- .txt 文件中包含所有需要复制的内容
- 图片都在 images/ 文件夹中
输出示例:
==========================================================
❌ 自动上传失败
==========================================================
失败原因:未检测到小红书登录状态
别担心,内容已经准备好了,请使用手动方式上传:
📋 手动上传步骤:
1️⃣ 打开小红书创作者平台
https://creator.xiaohongshu.com/publish/publish?from=menu&target=image
2️⃣ 上传图片(按顺序)
📂 位置:./redbook-article/AI工具调研-2026-01-26/images/
⚠️ 重要:必须按以下顺序上传(第一张是封面图):
1. cover.png ← 封面图(第一张)
2. content-1.png ← 内容图1
3. content-2.png ← 内容图2
4. summary.png ← 总结图
3️⃣ 填写标题
📄 打开:AI工具调研-2026-01-26.txt
复制标题:🔥 2026最火AI工具调研!效率暴涨3倍
4️⃣ 填写正文
📄 从 .txt 文件复制正文内容
5️⃣ 添加标签
📄 复制:#AI工具 #效率提升 #人工智能 ...
6️⃣ 点击发布
==========================================================
📂 文件位置:./redbook-article/AI工具调研-2026-01-26/
用户:小红书创作 分享一个提高工作效率的AI工具
AI执行步骤:
✅ 前置检查
- Python: v3.11.0 ✅
- Playwright: 已安装 ✅
- Chrome: 已安装 ✅
🔍 深度搜索话题
- 搜索关键词 1: "2026最新AI工具推荐"
- 搜索关键词 2: "AI工具效率提升案例"
- 搜索关键词 3: "AI工具使用教程"
- ✅ 已获取充足素材
📝 生成帖子内容
- 标题: 🔥 3个AI工具让效率翻倍
- 正文: 450字(基于搜索结果整合)
- 标签: 8个
🎨 生成配图
- 创建 HTML 模板 (4个)
- 转换为 PNG (4个)
- 清理临时文件
- ✅ 配图生成完成
📁 生成本地文件
- .html 预览文件(显示图片)
- .md Markdown文件(显示图片+路径)
- .txt 纯文本文件
- images/ 配图文件夹 (PNG)
- config.json 配置文件
- ✅ 文件生成完成
🚀 自动上传到小红书
- 检查 Playwright: 已安装 ✅
- 显示上传提示(首次需登录)
- 步骤 1/5: 打开创作者平台 ✅
- 步骤 2/5: 上传图片 (4张) ✅
- 步骤 3/5: 填写标题 ✅
- 步骤 4/5: 填写正文 ✅
- 步骤 5/5: 点击发布 ✅
- ✅ 发布成功!
🎉 任务完成!
---
如果自动上传失败,会显示:
❌ 自动上传失败
失败原因: [具体错误]
📋 提供详细的手动上传步骤
📂 文件位置已准备好
基本用法:
from playwright.sync_api import sync_playwright
with sync_playwright() as p:
# 启动浏览器
browser = p.chromium.launch(headless=False)
page = browser.new_page()
# 页面导航
page.goto('https://example.com')
# 元素选择和操作
page.locator('.button').click()
page.locator('input').fill('text')
# 文件上传
page.locator('input[type="file"]').set_input_files(['file.png'])
# 等待元素
page.wait_for_selector('.element')
# 截图
page.screenshot(path='screenshot.png')
browser.close()