← 返回 Skill 列表
extension
分类: 数据与分析无需 API Key

视频号作品数据统计

一键拉取微信视频号助手的经营数据并生成 CSV 统计表,比平台后台手动导出多两个独有能力:①批量下载全部作品封面 ②发布日期精确到时分秒。输出月度/周度数据统计(各来源播放量、朋友量、点赞量、评论量、分享量、关注者量、关注者总数)与单篇作品明细(标题、封面、发布日期、完播率、平均播放时长等)。当用户要视频号数据统计、月度/周度数据、单篇数据、来源分布、作品封面下载、发布日期查询时使用。触发词:视频号数据、视频号统计、月度数据、周度数据、单篇数据、来源分布、视频号封面。

person作者: user_3f399cbfhubcommunity

视频号数据统计(channels-video-data)

通过 Playwright 登录视频号助手,拉取指定周期的经营数据,产出两份 CSV 与单篇封面到工作区根 dist/。

行为约束(必须遵守)

  1. 只收集数据:按下方流程跑脚本、产出 CSV 与封面即完成。不做数据解读/分析/总结、不给运营建议、不画图表、不写报告、不对比历史数据、不产生"下一步建议"。
  2. 周期询问:需确认周期时只提供「上一个月」「上一周」两个选项,禁止出现其他选项;用户自述其他周期(如"6月")时按自定义范围直跑。

前置条件

  1. Node.js ≥ 18 + npm
  2. Playwright npm 包:无 node_modules 时 npm init -y && npm install playwright(中文/非英文目录 npm init -y 报 Invalid name 时改手写 package.json 再装,国内必须加 --registry=https://registry.npmmirror.com)
  3. 浏览器:只执行这一条命令安装——node scripts/install-browser.js
    • 该脚本在同一条命令内一次性做完三件事:PLAYWRIGHT_BROWSERS_PATH 设为本工作区根 .pw-browsers(与 scripts/fetch.js 启动时的强制值完全一致)、PLAYWRIGHT_DOWNLOAD_HOST 设为国内镜像、再调用 playwright CLI 装 chromium
    • 为什么必须走脚本,不能手写命令:每次命令执行都是一个新的 shell。把 set X=... 与 npx playwright install chromium 拆成两次执行,变量会丢失,浏览器就落到共享缓存 %LOCALAPPDATA%\ms-playwright,与其他工作区互相牵连——install 按 .links 绝对路径做引用计数回收、引用为 0 即删(日志 Removing unused browser at ...),工作区被清理后旧浏览器会被下一个装的人收走、重下 311MB
    • 禁止搬目录:不要复制 / 移动 / 链接任何浏览器目录——既包括其他工作区的 .pw-browsers/,也包括"装错位置后再搬回正位"这种补救。搬动会把 .links 里存着对方绝对路径的引用记录一起带走,隔离立即失效,还会触发多余的文件操作确认弹窗。装错就删掉重装,不要搬
    • 排查:node scripts/install-browser.js --dry-run 只打印落盘路径与下载源,不下载
    • 镜像实测:chromium + headless-shell + ffmpeg + winldd 共 311MB 全程走镜像、22 秒完成;真实路径 builds/cft/<Chrome版本>/win64/chrome-win64.zip。仅当镜像返回错误才回退官方(清空 PLAYWRIGHT_DOWNLOAD_HOST 后重跑)
    • 隔离效果:playwright 包与浏览器都在工作区根内,删工作区文件夹即彻底清除,无外部残留(浏览器落盘约 700MB)
  4. 登录态:首次运行自动开浏览器,本机微信客户端在线则自动免扫码(最长等待 90s);登录态持久化在工作区根 .sph_profile/,后续秒登
  5. 浏览器一律用 playwright 自带 chromium,禁用 channel: 'chrome'/'msedge'

执行流程

  1. 复制 scripts/ 整个目录到工作区,保持子目录结构(fetch.js 依赖 lib/ 子模块,勿平铺)
  2. 按「前置条件」装依赖:先 npm install playwright(走镜像),再跑 node scripts/install-browser.js 装浏览器(不要手写 set + npx,原因见「前置条件」第 3 条)
  3. 运行 node scripts/fetch.js:
    • --range=last-week(上一周)/ --range=last-month(上一个月)/ --range="6月"(自定义范围)
    • 写盘策略(默认):同一周期只保留最新一次——每次写入前先删除本次周期的 2 个 CSV 与封面目录再重建,无孤儿封面;其他周期产物保留不动(周度与月度可并存)
    • 可选 --clean:清空整个 dist/(含其他周期)后重拉;仅当需要“只留最新一套”时加
  4. 产物生成在工作区根 dist/,命名 视频号_{周期标签}_{月度|周度}{产物}.csv(周期标签如 2026年08月/2026年34周,自定义范围无 _周期类型 段)

产物

  • 视频号_2026年08月_月度汇总数据统计.csv — 周期聚合(各来源播放/互动/关注者量及总数)
  • 视频号_2026年08月_月度作品数据统计.csv — 单篇明细(作品标题、发布日期精确到时分秒)
  • 视频号_2026年08月_月度作品封面/ — 每作品 1 张封面 jpg(按发布日期命名,与 CSV「封面」列一致)