Install
openclaw skills install baijiahao-publish使用 auth 登录态打开百家号发布页,可填入标题与正文(支持 .md 转富文本)、选封面、存草稿或发布。当用户需要发布百家号、用 cookie 打开编辑页、或配合 OpenClaw 自动发布/存草稿时使用。
openclaw skills install baijiahao-publish本 Skill 提供:用已有登录态打开百家号发布页,自动关闭常见弹窗,可选填入标题与正文(支持 Markdown 文件转富文本 HTML),可选选封面后点击「存草稿」或「发布」。
发布页地址:https://baijiahao.baidu.com/builder/rc/edit?type=news&is_from_cms=1
需要 Python 3.8+,建议 3.10+。
在项目根或任意可运行脚本的目录执行:
# 安装 Python 包(Playwright + Markdown)
pip install -r skills/baijiahao-publish/requirements.txt
# 安装浏览器(必须执行一次)
playwright install chromium
或手动安装:
pip install playwright>=1.40.0
pip install markdown>=3.5.0
playwright install chromium
说明:
playwright install chromium 会下载 Chromium,只需执行一次。--content-file xxx.md 时,将 Markdown 转为富文本 HTML 填入正文,必装。context.storage_state(path="auth.json") 保存状态。name1=value1; name2=value2; ... 或 账号----账号----cookie字符串,脚本会自动解析并注入。--auth 支持相对路径和绝对路径;路径若从别处粘贴,会自动去掉常见不可见字符。
入口脚本:skills/baijiahao-publish/scripts/open_baijiahao_edit.py
在项目根或能访问到该路径的目录下执行下面的命令(或将 skills/baijiahao-publish/scripts/open_baijiahao_edit.py 换成绝对路径)。
| 参数 | 说明 |
|---|---|
--auth | 登录态文件路径,默认 auth.json。支持相对路径与绝对路径。 |
--headless | 无头模式(不显示浏览器窗口)。 |
--title | 文章标题,填入页面标题框。 |
--content | 正文纯文本,直接填入编辑区。 |
--content-file | 正文来源文件。若为 .md 会转为富文本 HTML 填入(依赖 markdown 库);否则按纯文本读取。与 --content 二选一,优先本参数。支持绝对路径。 |
--strip-title-from-content | 当同时提供 --title 和 --content-file 时,在文件中用标题做第一次匹配并截断,只把该行之后的内容当正文,避免标题重复。 |
--publish | 填完正文后:等 2 秒 → 选择封面 → 确定 → 等 2 秒 → 按文字完全匹配点击「发布」。 |
--draft | 与 --publish 流程相同,但最后按文字完全匹配点击「存草稿」。 |
--keep-open | 执行完成后不立即关闭浏览器,等待用户按回车确认后再关闭;未指定则执行完直接关闭并返回结果。 |
执行结果:脚本结束前会输出一行 [RESULT] success 或 [RESULT] failed,进程退出码分别为 0 / 1,便于 OpenClaw 或其它调用方解析。默认执行完即关闭浏览器并返回,无需人工确认。
# 仅打开发布页(使用默认或指定 auth)
python skills/baijiahao-publish/scripts/open_baijiahao_edit.py
python skills/baijiahao-publish/scripts/open_baijiahao_edit.py --auth test/baijiahao.txt
python skills/baijiahao-publish/scripts/open_baijiahao_edit.py --auth "C:/path/to/baijiahao.txt"
# 填入标题 + 正文(MD 转富文本)
python skills/baijiahao-publish/scripts/open_baijiahao_edit.py --auth test/baijiahao.txt --title "文章标题" --content-file article.md
# MD 里自带标题,用 --title 截断后只把后面当正文
python skills/baijiahao-publish/scripts/open_baijiahao_edit.py --auth test/baijiahao.txt --title "文章标题" --content-file article.md --strip-title-from-content
# 填完后选封面并发布
python skills/baijiahao-publish/scripts/open_baijiahao_edit.py --auth test/baijiahao.txt --title "标题" --content-file article.md --strip-title-from-content --publish
# 填完后选封面并存草稿
python skills/baijiahao-publish/scripts/open_baijiahao_edit.py --auth test/baijiahao.txt --title "标题" --content-file article.md --draft
# 无头模式(不弹浏览器)
python skills/baijiahao-publish/scripts/open_baijiahao_edit.py --auth test/baijiahao.txt --headless
# 执行完后不关浏览器,等用户按回车再关闭(便于人工确认)
python skills/baijiahao-publish/scripts/open_baijiahao_edit.py --auth test/baijiahao.txt --title "标题" --content-file article.md --keep-open
放置 Skill
将本 Skill 目录放在 OpenClaw 会加载的位置,例如:
<workspace>/skills/baijiahao-publish/~/.openclaw/skills/baijiahao-publish/调用方式
--auth、--title、--content-file、--strip-title-from-content、--publish 或 --draft)。python skills/baijiahao-publish/scripts/open_baijiahao_edit.py ...,不依赖 OpenClaw。传参约定
--auth <路径>(支持绝对路径)。--draft;说明「发布」时传 --publish。--content-file <路径>;若 md 里含标题且希望截断,同时传 --title <标题> 与 --strip-title-from-content。--keep-open;未传则执行完直接关闭并输出 [RESULT] success / [RESULT] failed 与退出码,便于 OpenClaw 正确处理返回。skills/baijiahao-publish/scripts/open_baijiahao_edit.pyskills/baijiahao-publish/requirements.txt(playwright、markdown)baijiahao-publish 整体复制到 ~/.openclaw/skills/ 或工作区 ./skills/,重启 OpenClaw 后即可使用。npx clawhub@latest install baijiahao-publish。clawhub publish . --slug baijiahao-publish --name "百家号发布器" --version 1.0.0(需先配置 ClawHub 账号)。发布前请确保目录内包含 SKILL.md、package.json、_meta.json、scripts/open_baijiahao_edit.py、requirements.txt。