视频归档工作流程
功能概述
视频归档工作流程是一项面向实际任务的技能,主要用于使用此技能将视频 URL 变成工作表和归档系统的规范记录;优先确定 Yt- dlp 的元数据, 解析页面文本中的标签。
核心要点
- 它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
- 使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。
- 该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。
使用与执行
从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
结果检查与注意事项
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
视频归档工作流
概述
使用本技能将视频 URL 转换为适用于表格与归档系统的标准化记录。优先采用 yt-dlp 提供的确定性元数据;在必要时从网页文本中解析标签;除非触发硬性终止规则,否则始终以安全默认值推进工作流。
核心工作流
- 解析输入 URL。
- 识别平台、video_id 和 video_type。
- 仅基于 video_id 进行去重检查。
- 优先从 yt-dlp JSON 中提取元数据。
- 清洗标题、描述和标签。
- 解析上传者(uploader)并确定目标文件夹。
- 仅在明确要求时执行下载或归档操作。
- 按指定顺序填写表格字段。
参考文档
详见 references/field-schema.md,其中包含精确的表格字段顺序、标签规则及各平台特定的标准化规则。
URL 解析规则
- 通过主机名(hostname)识别平台。
- 从该平台原生标识符中提取 video_id。
- 尽可能依据平台惯例设定 video_type。
- 若 video_type 解析失败,则默认设为
normal 并继续执行。
- 不得因遇到未知类型而阻塞工作流。
- 若 URL 不指向视频内容,则立即终止并报告“无法填充视频记录”。
去重规则
- 仅使用
video_id 进行去重判断。
- 若存在匹配记录,需简要展示已有视频摘要,并等待用户确认后方可继续。
- 去重过程不依赖平台信息。
- 对不确定匹配项不得自动跳过。
元数据规则
- 以
yt-dlp -j 或 --dump-single-json 输出为准作为可信来源。
- 将清洗后的元数据字段写入表格。
- 未知或为空的字段留空。
- 禁止填入占位符文本(如
(empty))。
- 禁止将原始 JSON 路径、下载状态或命令历史写入表格。
标签规则
- 优先从标题和描述中提取标签。
- 在写入标题与描述前,先从中剥离标签内容。
- 不进行文本翻译。
- 保持首次出现的顺序。
- 去除重复标签。
- 在表格中以空格分隔的字符串形式输出标签。
- 对于 Bilibili,当标题/描述中缺失或标签不完整时,额外从页面中的
tag-link 文本中解析标签。
- 对于 X/Twitter,如有可用推文正文则使用之;若该条目非视频内容,则立即终止。
上传者与文件夹规则
- 使用上传者显示名称(display name)作为文件夹名。
- 若无法解析上传者信息,则暂停流程并请求用户确认后再继续。
- 禁止静默回退至 uploader_id 用于命名文件夹。
- 对于小红书(Xiaohongshu),若可获取,则将 uploader_id 设为页面上显示的小红书账号编号。
- 多上传者情形下,uploader 与 uploader_id 均以逗号分隔、按序列出。
- 以首个上传者作为文件夹根目录。
- 对文件夹名进行清洗,移除非法文件系统字符。
归档规则
- 保留原始文件名风格。
- 若源容器为 mp4,则以无损转换方式归档为 mkv 格式。
- 将源文件保存为
原名_source.mkv。
- 归档文件在归档容器中使用原始基础文件名(base name)保存。
- 若发生文件名冲突,则暂停并询问用户处理方式。
- 除非用户明确要求更深层级嵌套,否则直接将上传者文件夹置于主归档根目录下。
字幕规则
- 仅当存在字幕时才下载并嵌入字幕。
- 若无字幕则静默跳过。
- 在元数据中记录字幕语言的可用性。
- 不得在备注(remarks)字段中重复说明字幕是否存在。
字段格式化规则
- 隐式使用北京时间,无需标注时区。
- 上传日期格式为
YYYY-MM-DD。
- 容器(container)字段保留源容器格式。
- 分辨率尽可能采用 yt-dlp 返回的格式。
- 字段名中需标明单位处,统一使用中文单位:
秒、MB、fps、kbps。
终止规则
出现以下任一情况时,应立即停止并请求用户确认:
- 无法解析上传者信息
- URL 不指向视频内容
- 文件名冲突需人工决策
- 元数据存在足够歧义,可能影响文件夹归属或去重判断
输出风格
当用户请求表格预览时,仅返回其明确要求的字段。保持输出简洁,除非工作流被阻塞,否则不添加额外叙述性内容。