← 返回博客

开源中国自动发布怎么弄:不加 --draft 默认就是正式发布,分类还得精确匹配

·开源中国自动发布OSChina博客发布技术博客一稿多发内容分发

开源中国自动发布怎么弄:不加 --draft 默认就是正式发布,分类还得精确匹配

一句话回答:开源中国发博客默认就是直接正式发布,不加额外参数不会先进草稿箱;分类必须和账号后台已有的分类名精确匹配,填错或编一个不存在的名字会直接报错;正文里的外链图片会被自动下载、重新上传到开源中国自己的图床。

写完一篇带代码示例的技术长文,CSDN 发完、掘金也发完,轮到开源中国的时候,很多人是抱着“顺手再发一份”的心态打开后台的。结果分类下拉框里的名字跟自己想填的对不上,点发布之后文章却已经是公开状态,不是想象中“先进草稿箱,确认没问题再点一次发布”的流程。开源中国这一步看着眼熟,实际的几个细节跟其他技术社区不完全一样。

开源中国这一步,容易被想当然踩的坑

开源中国的博客发布接口跟 CSDN、掘金长得像,但有三处行为跟直觉不一样:

分类要精确匹配,不能自己编。 开源中国的个人博客分类是账号自己创建的一套体系,不是平台给的固定分类池。发布时传的分类名,必须跟后台已经存在的分类名一字不差,编一个“技术”或“随笔”这种听着合理但账号里没建过的名字,会直接报错说找不到这个分类。稳妥的做法是先查一遍账号真实有的分类列表,再从里面选。

默认直接正式发布,不是先存草稿。 这是最容易踩的一处:很多技术社区的发布接口默认先存草稿,要再点一次才算真正公开;开源中国反过来,不额外声明的话,调用一次就是正式发布,文章立刻能被搜到。想先看排版效果的话,得显式加一个“只存草稿”的参数,这一步不是可选的美化功能,是避免误发的唯一开关。

图片不会留着别人的外链。 正文里如果贴着 CSDN 或本地图床的图片地址,开源中国的发布逻辑会先把图片下载下来,重新传到它自己的图床域名下,再把正文里的链接换成新地址。好处是不会因为原图床失效导致文章里的图全部裂掉,代价是发布这一步比纯文字发布慢一些,图片越多越明显。

为什么这一步值得单独说,不是随手丢进“技术博客一稿多发”就完了

技术文章一稿多发到 CSDN、掘金、SegmentFault、博客园这几个平台的坑,之前这篇讲过,核心是代码块高亮、图床转存、标签体系这三件事在平台之间互不兼容。开源中国单独拎出来讲,是因为它的定位跟纯内容平台不完全一样:开源中国旗下的代码托管产品 Gitee(码云)是 2013 年就推出的老牌服务,不少在开源中国写博客的人,本身就在 Gitee 上托管着自己的项目,写博客的动机常常是给某个仓库配一篇说明或者更新日志,跟纯粹为了流量去发一篇泛内容文章不是一回事。

这个需求不新鲜。2019 年就有人写过用 Python + Selenium 自动发博客到开源中国的教程,靠模拟浏览器点击一步步填标题、正文、分类;开源的浏览器插件 Wechatsync 现在也把开源中国纳入了支持列表,跟 CSDN、掘金、简书放在同一份平台清单里同步发布。这些方案解决的都是同一层问题:手动登录、手动填表这件事能不能交给程序做一遍。

让 AI 用你自己的账号接管这一步

PublishPort 的做法是让 AI 用你自己电脑上已经登录的开源中国账号操作,登录会话始终留在本地,不会把账号密码或 Cookie 上传到某个云端服务器代管。装好客户端、在开源中国后台登录一次,AI 就能按你给的稿子自动核对分类名、判断先存草稿还是直接发布、处理图片转存,省下的是你自己一步步核对参数、盯着报错排查的时间。

下载 PublishPort 之后,接管的也不只是发布这一步。文章发出去之后同样会有评论,把互动接住、把哪篇文章数据好用来定下一篇的选题,可以参考私信评论运营怎么做,账号体系是打通的,不是发完就撒手。

具体怎么做:先查真实分类名,再决定要不要先存草稿

开源中国发布背后调用的是它自己账号体系下的写接口,按这个顺序走最稳:

  1. 先列出账号已有的分类。 ppcli oschina catalogs,返回的是这个账号后台真实建过的分类名,不能凭印象或者想当然填一个。没有合适分类的话,留空就是“不分类”,不算漏填。
  2. 准备正文文件。 正文默认按 Markdown 处理,如果稿子本身是 HTML 格式,需要额外声明一下,不然代码块和排版大概率会被当成纯文本。
  3. 决定这次是先看效果还是直接发。 不确定排版是否正常,先只存草稿看一眼;确认没问题再去掉这个参数正式发布。
  4. 命令示例ppcli oschina article "标题" --file draft.md --category "后端开发" --execute,这一条默认就是正式发布;只想先存草稿,加一个 --draftppcli oschina article "标题" --file draft.md --category "后端开发" --draft --execute。不带 --execute 命令会直接拒绝执行,这是防误触发布的保护,不是校验参数用的预览模式。

发布报错但看不出原因的话,先把分类这个参数去掉,只留标题和正文重试一次,很多失败其实是分类名没精确匹配上,不是账号或内容本身出了问题。具体参数和命令细节以 ppcli oschina --help 为准,命令行版本会持续迭代。

边界与注意:内容本身是不是原创,判定权始终在平台手里

开源中国和大多数技术社区一样,欢迎作者在多个平台同时发布自己的原创内容,这跟未经授权转载别人的文章是两码事,后者才涉及侵权问题。但没有工具能保证账号绝对不受限,自动化只是把你自己会做的操作交给 AI 做一遍,内容质量、是否原创、是否符合社区规范,判定权始终在平台手里,具体规则以开源中国官方博客频道公布的为准。按真人节奏发、别把同一段营销文案反复搬运到多个账号刷屏,比赌“工具不会被发现”靠谱。

发布前检查清单

常见问题 / FAQ

开源中国发文章需要审核吗?

发布接口本身是即时生效的,不像有的平台要等人工审核通过才能被搜到。但这不代表内容没有边界,明显违规或涉及侵权的内容后续仍可能被平台下架处理,具体规则以官方帮助中心为准。

开源中国和 Gitee(码云)是同一家吗?

是的,Gitee(码云)是开源中国旗下 2013 年推出的代码托管产品,跟博客频道同属一个账号体系下的不同功能模块,不是两家独立的公司。

开源中国自动发布默认是不是直接正式发布,能不能先看草稿?

默认就是正式发布,调用一次文章立刻公开,不会自动先进草稿箱。想先确认排版效果,需要显式加上只存草稿的参数,这一步不加就是真发,是最容易踩的一个坑。

技术文章都发过 CSDN、掘金了,还有必要单独发开源中国吗?

看你的目标读者是谁。开源中国的用户里有不少同时在用 Gitee 托管代码的开发者,如果文章本身是给某个开源项目配的说明或更新日志,发在这里比发在泛内容平台更容易被目标读者看到;纯粹为了流量铺量的话,跟发 CSDN、掘金的收益差别不大,可以按技术博客一稿多发里的思路一起处理。

AI 自动发开源中国安全吗,会不会被限流?

AI 在本机用你自己已经登录的账号操作,跟你自己手动点鼠标发布走的是同一套账号和登录会话,不涉及把账号交给第三方云端代管。但没有任何工具能承诺账号绝对不受平台规则影响,内容本身是否合规、发布频率是否异常,始终是平台自己判断的事。


多平台一稿多发的选型思路可参考内容分发工具怎么选,开源中国发布用到的浏览器自动化机制来自开源项目 OpenCLI。本文若有出入或过时,以文档为准。