一个 Chrome Manifest V3 扩展,用来在知了/云大学堂资源管理页面中批量筛选视频资源,并按规则发起智能分析任务。
非官方项目。请只在你有权限管理的知了项目中使用,并先用“接口探针”和“预览匹配”确认筛选结果。
- 支持“个人资源”和“录播资源”两类来源。
- 自动读取当前知了页面的项目地址、登录状态和资源目录。
- 自动读取页面筛选项,录播资源支持学期、机位等动态选项。
- 关键词会下发到搜索接口,用于按课程、老师等服务端字段过滤。
- “名称包含”用于素材名模糊条件。
- 支持可配置扫描每页数,默认
200,最高1000,用于绕开页面最多显示 100 页的限制。 - 先完整分页扫描并完成二次筛选,再按批次提交智能分析。
- 支持多条规则,每条规则可以配置“已有/缺失”条件和要发起的识别流程。
- 同一视频命中多条规则时,会自动合并要发起的流程。
- 支持只补做缺失结果,避免重复发起已有流程。
- 支持暂停、继续、取消和失败重试。
- 内置接口探针:真实调用无副作用接口,完整扫描命中数,并只构建提交 body 预览,不实际提交。
- 内置诊断日志:记录请求摘要、分页状态、HTTP 状态和错误信息。
- 复用 Chrome 当前登录会话,不保存账号、密码、Cookie 或 Token。
- 批量补做语音文本、知识点、知识要点、摘要、关键词等智能分析。
- 对录播资源按日期、教师画面、课程或老师关键词做批量处理。
- 先找出“已有语音文本但缺知识要点”的视频,再发起知识要点识别。
- 在不同部署环境中快速验证搜索接口字段和提交 payload。
- 个人资源搜索:
POST /rman/v1/search/folder - 录播资源搜索:
POST /rman/v1/search/all - 资源目录树:
GET /rman/v1/folder/all/tree?level=2 - 学期选项:
GET /unifiedplatform/v1/base/data/database/get/semester/by/name - 录播机位:
GET /rman/v1/review/video/seats - 智能分析提交:
POST /rman/v1/intelligent/smart/flow
- 下载或克隆本仓库。
- 打开 Chrome 的
chrome://extensions/。 - 开启右上角“开发者模式”。
- 点击“加载已解压的扩展程序”。
- 选择本仓库根目录,也就是包含
manifest.json的目录。 - 打开知了资源管理页面,确认已经登录。
- 点击扩展图标,或点击“完整页面”打开控制台。
- 在知了网页确认登录正常。
- 打开扩展,选择“个人资源”或“录播资源”。
- 设置日期、关键词、名称包含、使用状态等基础条件。
- 录播资源可选择学期、录播机位,例如“教师画面”。
- 设置“扫描每页数”。如果网页最多显示 100 页,可尝试
500或1000。 - 配置一条或多条二次筛选规则。
- 先点“接口探针”,确认分页总数、命中数和提交 body 预览。
- 再点“预览匹配”,核对样例。
- 确认无误后点“创建后台任务”。
- 后台会先扫描全部分页,再按批次提交。
补知识要点:
- 条件:语音文本
已有 - 条件:知识要点
缺失 - 动作:勾选
知识要点 - 建议:开启“已有对应结果时不重复发起”
补语音文本:
- 条件:语音文本
缺失 - 动作:勾选
语音文本 - 建议:开启“已有对应结果时不重复发起”
扩展不依赖网页当前页,也不模拟网页翻页。它会直接调用搜索接口:
{
"pageIndex": 1,
"pageSize": 200,
"conditions": []
}正式任务的执行顺序是:
- 按
pageIndex完整分页扫描。 - 对每页结果做视频类型过滤和二次规则筛选。
- 累计所有待提交 payload。
- 扫描完成后进入提交阶段。
- 按“每批资源数”滚动调用智能分析提交接口。
任务不会边扫描边提交。
接口探针用于正式提交前的安全验证。它会:
- 读取目录树。
- 读取页面筛选项和兜底接口。
- 构建搜索请求。
- 完整分页扫描当前规则命中数。
- 构建
/rman/v1/intelligent/smart/flow的提交 body 预览。
接口探针不会实际调用智能分析提交接口。
仓库包含一个本地探针脚本:
node tools/zhiliao-api-probe.mjs --fixture --source recording --from 2026-06-16 --to 2026-06-16 --pageSize 500 --actions knowledgeSummary如果你有项目 Cookie,也可以真实调用搜索接口。脚本不会提交智能分析任务:
ZHILIAO_COOKIE='你的 Cookie' node tools/zhiliao-api-probe.mjs \
--origin https://your-project.example.com \
--source recording \
--keyword 王鹏程 \
--from 2026-06-16 \
--to 2026-06-16 \
--seats 教师画面 \
--pageSize 500 \
--actions knowledgeSummary扩展请求的 Chrome 权限包括:
activeTabalarmsscriptingstoragetabs- 可选站点权限:
http://*/*、https://*/*
说明:
- 扩展不会保存账号、密码、Cookie 或 Token。
- 请求通过
credentials: include复用 Chrome 当前登录态。 - 项目地址、表单配置、任务状态和诊断日志保存在
chrome.storage.local。 - 诊断日志会裁剪长字符串,用于排查接口路径、分页和错误原因。
如果结果数量不符合预期:
- 先点“接口探针”。
- 查看“搜索请求”里的
keyword、pageSize、conditions、folderPath。 - 查看“完整规则扫描”的
total、pageCount、matched。 - 点击“复制日志”,把日志发给维护者。
常见现象:
- 关键词没过滤:检查搜索请求里是否有
keyword: ["..."]。 - 最多只扫到部分数据:尝试把“扫描每页数”调到
500或1000。 - 提交前数量不对:先用“接口探针”确认命中数,不要直接创建任务。
- 登录失效:重新打开知了网页登录,后台会定时检测并继续任务。
- 当前规则编排只处理视频资源。
- “已有/缺失”依赖搜索接口返回字段,不同部署版本可能需要补充字段映射。
- Chrome Manifest V3 后台会休眠,扩展通过
chrome.alarms定时唤醒,最坏可能延迟约一分钟。 - 后端是否接受较大的
pageSize取决于具体部署,建议先用接口探针验证。 - 智能分析提交接口会真实创建任务,使用前请确认筛选条件。
本项目没有构建步骤,源码即扩展。
语法检查:
node --check background.js
node --check popup.js
node --check tools/zhiliao-api-probe.mjs打包为 zip:
zip -r zhiliao-batch-extension.zip . -x '*.git*' '*.DS_Store*' '*.zip'MIT License