关于 juejin
这是一款 Python 命令行技能,可读取掘金账号与文章数据,并以 Markdown 创建草稿或发布文章。它使用用户捕获的登录 Cookie,通过掘金网站 API 操作账号。
主要功能
- 01查看当前登录账号
- 02列出已发布文章及数据
- 03读取单篇文章数据
- 04预演 Markdown 发布
- 05创建草稿或发布文章
适用场景
- 01检查账号和文章表现
- 02准备掘金 Markdown 文章
- 03将文章保存为私密草稿
- 04确认后发布文章
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ acedatacloud/ skills --skill juejin安装后在 Claude Code 中输入/juejin确认已加载。
附带文件scripts/juejin.py
详细介绍
juejin — 使用你自己的 Cookie 在掘金上阅读和发布
通过网站使用的相同 api.juejin.cn Web
端点,使用用户的真实掘金账号进行操作,并通过用户使用 ACE 扩展捕获的登录 Cookie 进行身份验证。不需要浏览器或第三方依赖——只使用 urllib。
连接器会将 Cookie jar 注入为环境变量:
JUEJIN_COOKIES— Cookie 的 JSON 数组。机密信息——绝不要回显或打印。
CLI
此技能包含 scripts/juejin.py——自包含,仅使用标准库。
# $SKILL_DIR can point at another skill loaded this turn — anchor on our own
# script, and re-run this at the top of every Bash block (fresh shell each time).
JJ="$SKILL_DIR/scripts/juejin.py"; [ -f "$JJ" ] || JJ=$(find /tmp -maxdepth 8 -path '*/skills/*/scripts/juejin.py' 2>/dev/null | head -1)
[ -f "$JJ" ] || { echo "juejin script not found (SKILL_DIR=$SKILL_DIR)" >&2; exit 1; }
python3 "$JJ" whoami # who is logged in (+ totals)
python3 "$JJ" articles --limit 20 # my published articles + stats
python3 "$JJ" article <article-id> # one article's stats
统计数据直接来自掘金:view_count(阅读)、digg_count(点赞)、
comment_count(评论)、collect_count(收藏)。audit_status 为 2 表示已上线。
先验证连接
JJ="$SKILL_DIR/scripts/juejin.py"; [ -f "$JJ" ] || JJ=$(find /tmp -maxdepth 8 -path '*/skills/*/scripts/juejin.py' 2>/dev/null | head -1)
python3 "$JJ" whoami
# → {"user_id": "...", "name": "...", "post_article_count": 0}
如果出现身份验证错误(err_no 为 401 / “请登录”),说明 Cookie 已过期——请让用户前往 https://studio.acedata.cloud/console/connectors 重新连接。不要循环重试。
发布——需确认(除非末尾带有 --confirm,否则为试运行)
publish 会写入用户的真实账号。内容为 Markdown。末尾不带 --confirm 时会进行试运行。仅当 --confirm 是最后一个参数时才会生效。始终先展示试运行结果,取得明确的“是”后再重新运行。
JJ="$SKILL_DIR/scripts/juejin.py"; [ -f "$JJ" ] || JJ=$(find /tmp -maxdepth 8 -path '*/skills/*/scripts/juejin.py' 2>/dev/null | head -1)
python3 "$JJ" publish --title "标题" --content-file a.md # dry-run
python3 "$JJ" publish --title "标题" --content-file a.md --draft-only --confirm # private draft
python3 "$JJ" publish --title "标题" --content-file a.md \
--category-id 6809637769959178254 --tag-ids 6809640407484334093 --confirm # PUBLIC
--draft-only会创建私人草稿(掘金article_draft)——安全。- 要实际发布(进入审核),掘金要求提供有效的
--category-id和至少一个--tag-id。如果没有这些参数,请使用--draft-only,让用户在掘金编辑器中选择分类和标签。默认使用--draft-only。
注意事项
- 这是用户的真实掘金账号。 执行任何发布操作前都要确认。
- 未提供分类和标签的发布会在审核中被拒绝;请优先使用
--draft-only。 - 绝不要打印
JUEJIN_COOKIES——它拥有完整的账号访问权限。 - 服务条款:仅使用用户自己捕获的 Cookie 操作用户自己的账号。
记录输出
成功发布并获得正式结果 URL 后,调用内置的
publish_artifact 工具一次,让用户可以在我的输出中跟踪此交付内容:
publish_artifact(kind="article", channel="juejin", title="<title>", url="<the REAL returned URL>", status="delivered")
使用实际返回的 URL——绝不要伪造。每个已发布内容仅调用一次,并且只在确认交付后调用;如果发布失败,则跳过该调用(或使用 status="failed")。
参见 _shared/artifacts.md。