OpenClaw优质Skill:自动发布小红书

OpenClaw优质Skill:自动发布小红书

注意本Skill目前只支持Windows。

github.com/white0dew/Xi

  • 自动化发布

    :自动填写标题、正文、上传图片

  • 话题标签自动写入

    :识别正文最后一行#标签,然后逐渐写入

  • 多账号支持

    :支持管理多个小红书账号,各账号 Cookie 隔离

  • 无头模式

    :支持后台运行,无需显示浏览器窗口

  • 远程 CDP 支持

    :可通过--host/--port连接远程 Chrome 调试端口

  • 图片下载

    :支持从 URL 自动下载图片,自动添加 Referer 绕过防盗链

  • 登录检测

    :自动检测登录状态,未登录时自动切换到有窗口模式扫码

  • 登录状态缓存

    check_login/check_home_login默认本地缓存 12 小时,减少重复跳转校验

  • 内容检索与详情读取

    :支持搜索笔记并获取指定笔记详情(含评论数据)

  • 笔记评论

    :支持按feed_id + xsec_token对指定笔记发表一级评论

  • 通知评论抓取

    :支持在/notification页面抓取you/mentions接口返回

  • 内容数据看板抓取

    :支持抓取“笔记基础信息”表(曝光/观看/点赞等)并导出 CSV

  • Python 3.10+
  • Google Chrome 浏览器
  • Windows 操作系统(目前仅测试 Windows)
pip install -r requirements.txt
python scripts/cdp_publish.py login

在弹出的 Chrome 窗口中扫码登录小红书。

#启动测试浏览器(有窗口,推荐)python scripts/chrome_launcher.py#无头启动测试浏览器python scripts/chrome_launcher.py --headless#检查当前登录状态python scripts/cdp_publish.py openclaw skills 教程 check-login#可选:优先复用已有标签页(减少有窗口模式下切到前台)python scripts/cdp_publish.py check-login --reuse-existing-tab#连接远程 CDP(Chrome 在另一台机器)python scripts/cdp_publish.py --host 10.0.0.12 --port 9222 check-login#重启测试浏览器python scripts/chrome_launcher.py --restart#关闭测试浏览器python scripts/chrome_launcher.py --kill
#无头模式(推荐,默认自动发布)python scripts/publish_pipeline.py --headless \ --title"文章标题"\ --content"文章正文"\ --image-urls"https://example.com/image.jpg"#有窗口预览模式(仅填充,不自动点发布)python scripts/publish_pipeline.py \ --preview \ --title"文章标题"\ --content"文章正文"\ --image-urls"https://example.com/image.jpg"#可选:优先复用已有标签页(减少有窗口模式下切到前台)python scripts/publish_pipeline.py --reuse-existing-tab \ --title"文章标题"\ --content"文章正文"\ --image-urls"https://example.com/image.jpg"#连接远程 CDP 并发布(远程 Chrome 需已开启调试端口)python scripts/publish_pipeline.py --host 10.0.0.12 --port 9222 \ --title"文章标题"\ --content"文章正文"\ --image-urls"https://example.com/image.jpg"#从文件读取内容python scripts/publish_pipeline.py --headless \ --title-file title.txt \ --content-file content.txt \ --image-urls"https://example.com/image.jpg"#正文最后一行可放话题标签(最多 10 个)#例如 content.txt 最后一行:春招#26届#校招#求职#找工作#使用本地图片python scripts/publish_pipeline.py --headless \ --title"文章标题"\ --content"文章正文"\ --images"C:\path\to\image.jpg"#WSL/远程 CDP + Windows/UNC 路径可跳过本地文件预校验python scripts/publish_pipeline.py --headless \ --title"文章标题"\ --content"文章正文"\ --images"\\wsl.localhost\Ubuntu\home\user\image.jpg"\ --skip-file-check
#列出所有账号python scripts/cdp_publish.py list-accounts#添加新账号python scripts/cdp_publish.py add-account myaccount --alias"我的账号"#登录指定账号python scripts/cdp_publish.py --account myaccount login#使用指定账号发布python scripts/publish_pipeline.py --account myaccount --headless \ --title"标题"--content"正文"--image-urls"URL"#设置默认账号python scripts/cdp_publish.py set-default-account myaccount#切换账号(清除当前登录,重新扫码)python scripts/cdp_publish.py switch-account
#搜索笔记(可选筛选)python scripts/cdp_publish.py search-feeds --keyword"春招"python scripts/cdp_publish.py search-feeds --keyword"春招"--sort-by 最新 --note-type 图文#获取笔记详情(feed_id 与 xsec_token 可从搜索结果中获取)python scripts/cdp_publish.py get-feed-detail \ --feed-id 67abc1234def6 \ --xsec-token YOUR_XSEC_TOKEN#给笔记发表评论(一级评论)python scripts/cdp_publish.py post-comment-to-feed \ --feed-id 67abc1234def6 \ --xsec-token YOUR_XSEC_TOKEN \ --content"写得很实用,感谢分享!"#抓取“评论和@”通知接口(you/mentions)python scripts/cdp_publish.py get-notification-mentions

说明:search-feeds会先在搜索框输入关键词,抓取下拉推荐词(recommended_keywords),再回车拉取 feed 列表。

#抓取“笔记基础信息”数据表python scripts/cdp_publish.py content-data#下划线别名python scripts/cdp_publish.py content_data#导出 CSVpython scripts/cdp_publish.py content-data --csv-file"/abs/path/content_data.csv"
  • 从正文中提取规则:若“最后一个非空行”全部由#标签组成,则提取为话题标签并从正文移除。
  • 标签输入策略:逐个输入#标签,等待3秒,再发送Enter进行确认。
  • 建议数量:1-10个标签;超过平台限制时请手动精简。
  • 示例(正文最后一行):#春招#26届#校招#春招规划#面试

统一发布入口,一条命令完成全部流程。

底层发布控制,支持分步操作。

#检查登录状态python scripts/cdp_publish.py check-login python scripts/cdp_publish.py check-login --reuse-existing-tab python scripts/cdp_publish.py --host 10.0.0.12 --port 9222 check-login#填写表单(不发布)python scripts/cdp_publish.py fill --title"标题"--content"正文"--images img.jpg python scripts/cdp_publish.py fill --title"标题"--content"正文"--images img.jpg --reuse-existing-tab python scripts/cdp_publish.py --host 10.0.0.12 --port 9222 fill --title"标题"--content"正文"--images img.jpg#点击发布按钮python scripts/cdp_publish.py click-publish#搜索笔记(支持下划线别名:search_feeds)python scripts/cdp_publish.py search-feeds --keyword"春招"python scripts/cdp_publish.py search-feeds --keyword"春招"--sort-by 最新 --note-type 图文#获取笔记详情(支持下划线别名:get_feed_detail)python scripts/cdp_publish.py get-feed-detail --feed-id FEED_ID --xsec-token XSEC_TOKEN#发表评论(支持下划线别名:post_comment_to_feed)python scripts/cdp_publish.py post-comment-to-feed --feed-id FEED_ID --xsec-token XSEC_TOKEN --content"评论内容"#抓取通知评论接口(支持下划线别名:get_notification_mentions)python scripts/cdp_publish.py get-notification-mentions#获取内容数据表(支持下划线别名:content_data)python scripts/cdp_publish.py content-data python scripts/cdp_publish.py content-data --csv-file"/abs/path/content_data.csv"#账号管理python scripts/cdp_publish.py login python scripts/cdp_publish.py list-accounts python scripts/cdp_publish.py add-account NAME [--alias ALIAS] python scripts/cdp_publish.py remove-account NAME [--delete-profile] python scripts/cdp_publish.py set-default-account NAME python scripts/cdp_publish.py switch-account

说明:search-feedsget-feed-detailpost-comment-to-feedget-notification-mentions会校验xiaohongshu.com主页登录态(非创作者中心登录态)。 说明:登录态检查默认启用本地缓存(12 小时,仅缓存“已登录”结果),到期后自动重新走网页校验。 说明:search-feeds输出新增recommended_keywords_countrecommended_keywords字段,表示输入关键词后回车前的下拉推荐词。 说明:content-data会校验创作者中心登录态,并抓取statistics/data-analysis页面中的笔记基础信息表。

Chrome 浏览器管理。

#启动 Chromepython scripts/chrome_launcher.py python scripts/chrome_launcher.py --headless#重启 Chromepython scripts/chrome_launcher.py --restart#关闭 Chromepython scripts/chrome_launcher.py --kill

本项目可作为 Claude Code、OpenCode 等支持 Skill 的工具使用,只需将项目复制到.claude/skills/post-to-xhs/目录,并添加SKILL.md文件即可。

详见 docs/claude-code-integration.md

  1. 仅供学习研究

    :请遵守小红书平台规则,不要用于违规内容发布

  2. 登录安全

    :Cookie 存储在本地 Chrome Profile 中,请勿泄露

  3. 选择器更新

    :如果小红书页面结构变化导致发布失败,需要更新cdp_publish.py中的选择器

  4. feed 的图片类型
  • WB_PRV:预览图(preview),通常更轻、更快,适合列表卡片。
    • WB_DFT:默认图(default),通常用于详情展示,质量/尺寸更完整。
  • 支持更多账号管理功能
  • 支持发布功能
  • 增加后台笔记获取功能
  • 支持自动评论
  • 支持素材检索功能
  • 增加更多错误处理机制
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/251456.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月13日 下午5:51
下一篇 2026年3月13日 下午5:51


相关推荐

关注全栈程序员社区公众号