tangc/tangzhan-skills

zsxq-homework-likes-export

知识星球作业点赞统计导出。Use when the user wants to export CSV statistics for a 知识星球 task/homework hashtag or course, including all task topics, all student solution submissions under each task, total likes per student, and per-assignment likes.

First seen Jun 11, 2026

Installation

$ npx skills add tangc/tangzhan-skills --skill zsxq-homework-likes-export

Summary

  • 知识星球作业点赞统计导出。Use when the user wants to export CSV statistics for a 知识星球 task/homework hashtag or course, including all task topics, all student solution submissions under each task, total likes per student, and per-assignment likes.
  • Especially for “作业点赞统计”, “学员提交作业”, “按作业题统计点赞”, or “导出 CSV”.

Also in this package

Other skills from tangc/tangzhan-skills.

npx skills add tangc/tangzhan-skills

Browse all from tangc/tangzhan-skills

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 5
Default branch main
Open issues 0
Status Active

Skill metadata

Parsed from SKILL.md frontmatter.

Declared agents codex

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 3,854 B
  • docs SUMMARY.md 421 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 1 installs

SKILL.md

知识星球作业点赞导出

核心原则

  • 优先使用网页端真实接口 https://api.zsxq.com/v2/topics/{taskid}/solutions,因为返回的每条 solution 带有父作业 taskuid
  • 不要用关键词或时间窗口推断作业归属,除非用户明确接受粗略统计。
  • 不要要求用户粘贴 Cookie。打开本地可见浏览器,让用户在浏览器里登录;再用 agent-browser cookies --json 导出到 /tmp 临时文件。
  • 临时 Cookie、XAduid 只用于本地抓取,完成后立即删除。不要在终端或最终回答里打印凭证。

快速流程

  1. 准备任务配置 JSON。

- 可以复制 references/tasks.example.json,填入自己的 groupid、作业题 topicid 和标题。 - 如果用户要换星球、换标签或刷新任务列表,先用 zsxq-cli group +listzsxq-cli group +hashtagszsxq-cli api call gethashtagtopics 获取 task 列表,再写成同样结构。

  1. 打开网页登录态:

``bash agent-browser --headed --session zsxq-homework open 'https://wx.zsxq.com/'; `` 让用户登录并确认能看到目标星球内容。

  1. 导出临时登录态:

``bash agent-browser --session zsxq-homework cookies --json > /tmp/zsxqhomeworkcookies.json agent-browser --session zsxq-homework eval "localStorage.getItem('XAduid') || ''" > /tmp/zsxqhomeworkxaduid.txt ``

  1. 抓取每个作业题的真实提交列表:

``bash SKILLDIR="$HOME/.codex/skills/zsxq-homework-likes-export" node "$SKILLDIR/scripts/fetchzsxqtasksolutionssigned.mjs" \ "$SKILLDIR/references/tasks.example.json" \ /tmp/zsxqhomeworkcookies.json \ /tmp/zsxqhomeworkxaduid.txt \ outputs/coursehomeworktasksolutionsrawsigned.json ``

  1. 生成 CSV:

``bash SKILLDIR="$HOME/.codex/skills/zsxq-homework-likes-export" python3 "$SKILLDIR/scripts/buildhomeworklikescsv.py" \ outputs/coursehomeworktasksolutionsrawsigned.json \ outputs ``

  1. 校验并清理:

``bash python3 - <<'PY' import csv detail=list(csv.DictReader(open('outputs/coursehomeworksubmissionlikesdetail.csv', encoding='utf-8-sig'))) summary=list(csv.DictReader(open('outputs/coursehomeworklikesbystudent.csv', encoding='utf-8-sig'))) print(len(detail), len(summary)) print(sum(int(r['likes']) for r in detail), sum(int(r['totallikes']) for r in summary)) PY rm -f /tmp/zsxqhomeworkcookies.json /tmp/zsxqhomework_xaduid.txt ``

输出文件

默认生成:

  • <prefix>likesby_student.csv:学员汇总表,含总点赞数、提交数、每个作业题下点赞数。
  • <prefix>submissionlikes_detail.csv:提交明细表,含作业题、学员、提交主题、点赞数、评论数、浏览数、链接、摘要。

任务配置格式

{
  "group_id": "123456789012",
  "output_prefix": "course_homework",
  "tasks": [
    {"id": "11111111111111111", "title": "示例作业 01:第一次作业"}
  ]
}

常见问题

  • code=1059:通常是缺少网页端 X-Signature 等请求头。必须用本 skill 的签名抓取脚本,不要直接 fetch
  • 401 Unauthorized:网页登录态失效,让用户在可见浏览器里重新登录。
  • CSV 准确度不足:确认使用的是 *rawsigned.json 生成的精确 CSV,而不是旧的关键词匹配脚本输出。