dsh-shortvideo-export:抖音与小红书无水印下载、转写与多格式导出

前言

在 DSH 里做短视频内容管线时,常见做法是分散脚本:单独抓链接、单独调 ffmpeg、再换一套 ASR 与导出格式。链接形态多(单条、分享文案、作者主页、sec_uid),平台侧还有登录与分页限制,转写引擎又在本地与云之间切换。下面介绍社区插件 dsh-shortvideo-export(维护者 hangyesite,分类:联网工具),它把抓取、无水印下载、转写、可选术语校对和多格式导出收进一个 DSH 插件,并自带 Web 面板与 Agent 工具。

这是什么

dsh-shortvideo-export 是 DeepSeek Harness(DSH)插件:注册 Agent 工具、Skill、确认动作卡片、定时同步入口和带任务进度的 Web 面板;重计算由内置 Python 引擎完成。package.json 版本为 0.1.4,许可证 MIT。

它面向抖音与小红书:下载无水印 MP4,用本地或云端语音识别生成文稿,可选用聊天模型做术语级校对(不改写全文、不动时间轴),并导出 Markdown(含 YAML front-matter)、TXT、SRT、VTT、JSON、HTML、DOCX;支持每条视频单独文件,或按时间合并合集。

核心功能

抓取与下载

  • Fetch:支持粘贴视频链接、视频 ID、分享文案、主页链接或原始 sec_uid;作者列表支持增量同步,遇到已收录视频即停止。
  • Download:保存无水印 MP4(优先更高码率变体,经 ffprobe 校验),并提取 16 kHz 单声道 WAV 供转写。

转写

提供多种可互换引擎(两个本地、多个云端;小红书还可读平台自带中文字幕轨)。任务可逐条或批量执行,面板与后台任务可查看进度;支持连续失败熔断、无语音检测(静音视频跳过而非整批失败)。

Engine id 运行位置 时间戳粒度 主要依赖
sensevoice 本地 CPU(int8) 句级(ffmpeg 静音检测) 需下载 bundled 模型
faster-whisper 本地 CPU/GPU 词级 faster-whisper 与模型
openai OpenAI 兼容 /audio/transcriptions 依服务商 base URL、key、model
dashscope 阿里云百炼 词级 API key
volc 火山引擎豆包 ASR 句级 API key;公开音频 URL 或 TOS
official 小红书笔记字幕轨 句级 pip install xhshow、小红书登录;仅小红书

official 与平台绑定:输入无小红书链接或混有抖音时,面板会拒绝创建任务,API 返回 engine_platform_mismatch。

校对与导出

  • Proofread(可选):用聊天模型从样本挖掘 wrong → right 术语表,人工确认后做确定性替换;支持 wrong => right || the sentence 处理同音误识别。配置在 polish.*,与 ASR 分离。
  • Export:按任务目录输出;可选合并合集(MD/TXT/HTML/DOCX),默认较新条目在前。

任务、面板与登录

每次运行有独立目录结构(video/、audio/、transcript/、export/<format>/、export/合集/)及阶段表(download / transcribe / export)。

面板侧栏入口含:New task、Tasks、Library、Proofread、Login、Settings。Login 页按平台分卡(当前为抖音、小红书),各自 QR 登录状态;README 注明多数下载可不登录,但抖音作者作品超过约 18 条、需翻页时通常需要已登录会话。

环境与依赖

需求 说明
DSH 较新版本;使用 ctx.tools、ctx.slots、ctx.skills、actionCards、schedule
Python 3.10+,PATH 上为 python(或 SV_PYTHON / 配置项 python)
ffmpeg ffmpeg + ffprobe,或 media.ffmpegPath
浏览器 系统 Chrome 或 Edge;Playwright 驱动抖音元数据抓取
云端密钥 仅在选择云端引擎时需要;本地 SenseVoice 无需账号

首次使用某引擎时,Python 依赖按需安装(未打入插件包):

python -m pip install playwright sherpa-onnx faster-whisper python-docx
python -m playwright install chromium   # 仅在没有 Chrome/Edge 时

安装与启用

README 给出的安装方式为:

dsh plugin add https://github.com/<owner>/shortvideo-export

将 <owner> 换为仓库所属用户后执行;也可在 DSH Plugin Manager → install bundle 指向插件目录。社区目录页:https://www.skillhub.cn/plugins/hangyesite/dsh-shortvideo-export;源码仓库:https://github.com/hangyesite/dsh-shortvideo-export。

插件在 当前 DSH 进程权限 下运行,会驱动本机浏览器、读写配置与输出目录。安装前请自行查看源码与 MIT 许可证,并评估本机路径与密钥存放方式。

首次使用建议

  1. 打开 Settings & Login,如需预热 Cookie 可在 Warm up / Login 扫码;配置持久化,但多数下载不强制登录。
  2. 若用本地 sensevoice:在 Settings → Download model 下载 SenseVoice int8(约 228 MB),或设置 asr.sensevoice.modelDir。
  3. 在 Tasks → New task 粘贴链接,选择仅下载或下载 + 转写 + 导出。

配置默认目录为 ~/.dsh-shortvideo/config.json(可用 SV_HOME 覆盖);默认输出根目录 outputDir 为 ~/DouyinExport。Douyin 相关浏览器项建议保持 browser.headless 为 false(README 说明无头模式下页面签名易失败)。

Agent 工具一览

长任务返回 job id 并在后台继续;面板展示进度,Agent 侧可用 sv_job 查询。

工具 用途
sv_run 一次完成 fetch → download → transcribe → export
sv_sync 同步作者视频列表(默认增量,full 全量)
sv_download 按 ID 或作者下载无水印视频
sv_transcribe 对已下载视频转写
sv_export 导出文稿与可选合集
sv_polish 术语挖掘、确认、应用与重置
sv_failures 按类别说明失败与重试建议
sv_library 库统计与列表
sv_settings 读写设置、列出引擎
sv_login 打开浏览器一次性扫码登录
sv_job 列出 / 查看 / 取消后台任务
sv_subscribe 注册定时增量同步(DSH scheduled task)

也可通过 python -m shortvideo settings 读写配置(与 sv_settings 一致)。

适用场景与注意

适合:需要在 DSH 工作流或 Agent 对话中批量处理抖音 / 小红书链接,并统一产出字幕与 Markdown 归档的开发者;希望本地 SenseVoice 或 faster-whisper 与云端 ASR 按任务切换、且导出格式齐全的场景。

注意:

  • 云引擎需自备密钥与合规使用;volc 等对音频 URL 或 TOS 有额外要求。
  • 小红书 official 引擎仅适用于小红书任务,勿与抖音混批。
  • 作者主页深分页受平台登录策略影响(如抖音匿名仅约 18 条可见),属平台限制而非插件上限。
  • DSH 生态奉行「一切皆插件」;SkillHub 目录为社区站点,与 DeepSeek / 幻方无官方从属关系。

结尾

dsh-shortvideo-export 把短视频抓取、无水印下载、多引擎转写、可选术语校对和多格式导出封装为 DSH 原生能力,适合作为个人或团队的内容入库前置步骤。进一步细节以仓库 README(含中文版 README.zh-CN.md)为准。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye