pull-vids:支持 1000+ 网站的开源命令行视频下载器 #
pull-vids 是什么? #
pull-vids 是一款完全免费、开源的命令行(CLI)视频与音频下载工具,支持从 1000 多个网站抓取视频、音频和字幕文件。
它基于 yt-dlp 的站点解析能力,并使用 Go 语言重新构建了下载体验:用户只需在终端中粘贴链接,即可完成从画质选择、格式转换到字幕转录的全流程操作。pull-vids 的定位是 Downie、PullTube 这类 macOS 付费下载软件的免费替代品——它没有广告、没有付费墙、没有会员限制,源码托管于 GitHub 并采用 MIT 协议。对于需要批量备份课程视频、归档社交媒体素材、提取访谈音频或整理字幕文本的用户来说,pull-vids 提供了一条轻量、可脚本化、跨平台的解决路径。
pull-vids 有哪些亮点特色? #
-
支持 1000+ 网站,一个命令通吃:可解析 YouTube(视频、播放列表、频道)、Vimeo、Twitter/X、TikTok、Instagram(含 Reels、Stories)、Facebook、Twitch(VOD 与切片)、Reddit(v.redd.it)、Dailymotion 等站点,官方称完整列表可覆盖 1000 个以上网站,无需为每个平台单独安装不同的下载器。
-
完全免费开源,无广告无付费墙:项目以 MIT 协议开源,灵感来自 Downie 和 PullTube,但功能完全免费。README 明确写道"没有广告、没有付费墙,只有下载",不存在会员等级、下载次数限制或水印注入。
-
Go 语言构建,单一二进制极速运行:pull-vids 以 Go 编写,编译产物是单个可执行文件,无需安装运行时环境。唯一的运行时依赖是 yt-dlp 与 ffmpeg,而通过 Homebrew 或 Chocolatey 安装时会自动一并装好,降低了新手上手门槛。
-
画质与格式自由选择(360p 至 4K):支持从 360p 到 4K 的多档画质下载,并可进行纯音频提取(MP3、M4A 等格式),适合只需要 BGM、播客或访谈人声的场景,无需先下载完整视频再二次转码。
-
字幕/转录文本独立下载,无需拉取视频:可直接将视频的字幕导出为纯文本、SRT 或 VTT 格式,而不下载视频本体。对做会议纪要、内容二次创作、字幕翻译的用户来说,这一能力显著节省带宽与时间。
-
针对限流与机器人检测做了工程化处理:内置 YouTube Cookie 认证,用于绕过机器人检测;下载失败时采用指数退避(exponential backoff)自动重试;批量下载之间插入睡眠间隔(sleep intervals)以规避站点速率限制,让长任务更稳定。
-
播放列表与频道批量下载 + 实时进度条:支持整张播放列表、整个频道的批量拉取,并在终端中渲染美观的实时进度条,进度、速度、剩余时间一目了然,不必盲等。
-
跨平台覆盖 Windows / macOS / Linux:三大桌面平台均提供预编译包,并支持 Homebrew、Chocolatey、
go install、一键安装脚本与手动解压等多种安装方式,便于在不同工作环境中快速部署。

免费下载 pull-vids #
以下为官方提供的各平台安装包,点击链接即可下载。下载后需解压,并按下方"pull-vids 如何安装?"中的步骤放入系统 PATH。
| 文件名 | 描述 | 大小 | 下载 |
|---|---|---|---|
| pull-vids-darwin-amd64.tar.gz | macOS Intel(x86_64)版 | 1.7 MB | 夸克网盘 |
| pull-vids-darwin-arm64.tar.gz | macOS Apple Silicon(M1/M2/M3)版 | 1.6 MB | 夸克网盘 |
| pull-vids-linux-amd64.tar.gz | Linux x86_64 版 | 1.7 MB | 夸克网盘 |
| pull-vids-linux-arm64.tar.gz | Linux ARM64 版 | 1.6 MB | 夸克网盘 |
| pull-vids-windows-amd64.zip | Windows 64 位版 | 1.8 MB | 夸克网盘 |
提示:官方 Release 页面同样提供上述压缩包的直接下载地址,若网盘链接失效,可前往 GitHub Releases 获取最新版本。
pull-vids 如何使用? #
pull-vids 是命令行工具,没有图形界面窗口。使用流程可以拆解为以下几步:
-
确认环境就绪:先安装 yt-dlp 与 ffmpeg 两个依赖,然后在终端执行
pull-vids --version,能输出版本号说明安装成功。建议同时执行ffmpeg -version与yt-dlp --version做一次自检。 -
粘贴链接直接下载:最基础的用法是把视频地址作为参数传入,例如下载 YouTube 视频:
pull-vids "https://www.youtube.com/watch?v=VIDEO_ID"其他平台同理,只需替换链接:
pull-vids "https://vimeo.com/123456789" pull-vids "https://twitter.com/user/status/123456" pull-vids "https://www.tiktok.com/@user/video/123456" pull-vids "https://www.instagram.com/p/ABC123/" pull-vids "https://www.twitch.tv/videos/123456" -
按需指定画质或格式:README 提供了 Command-Line Options、Quality Options、Format Options 等专门章节,可按需选择 360p 至 4K 的画质档位,或指定输出为纯音频格式(MP3、M4A 等)。具体参数写法建议直接对照仓库 README 的对应小节,避免记忆偏差。
-
只取字幕/转录文本:如果目标是文字而非视频,可走 Transcripts and Captions 相关用法,将字幕导出为纯文本、SRT 或 VTT,此过程不会下载视频本体,速度更快、占用更小。
-
批量抓取列表或频道内容:把播放列表页或频道页的 URL 直接交给 pull-vids,即可批量下载其中条目。若遇到平台的速率限制,工具会自动重试并在条目之间插入等待间隔;对需要登录验证的站点(典型如 YouTube 机器人检测),按 README 的 YouTube Authentication 一节配置 Cookie 支持。
使用建议:长任务建议放在
tmux或screen会话中运行,避免终端断开导致中断;批量任务可配合 Shell 脚本循环读取链接文件,实现自动化归档。
pull-vids 的常见问题? #
Q1:pull-vids 支持哪些网站? 官方说明其覆盖范围取决于 yt-dlp,凡是 yt-dlp 支持的站点均可使用,README 列举了 YouTube、Vimeo、Twitter/X、TikTok、Instagram、Facebook、Twitch、Reddit、Dailymotion 等,并称可覆盖 1000+ 网站。README 中给出了完整支持列表的链接,遇到小众站点可先查阅该列表确认。
Q2:为什么下载 YouTube 视频时提示需要登录或触发机器人检测? 这是 YouTube 对未登录请求的风控策略,并非 pull-vids 自身故障。README 提供了 Cookie 认证(Cookie authentication)方案用于绕过机器人检测,按 "YouTube Authentication (Cookie Support)" 一节的说明导出并配置浏览器 Cookie 即可。
Q3:为什么有时下载速度很慢或中途暂停? 这类现象通常来自目标站点的速率限制。pull-vids 内置了指数退避自动重试与下载间隔(sleep intervals)机制,属于主动限速以换取任务成功率的设计。如果站点限制较严,可适当增加间隔、减少并发,或分批执行批量任务。
Q4:为什么某些视频无法下载? 受 DRM(数字版权管理)保护的内容无法被下载,这是工具的能力边界,README 在 Limitations 章节中明确列出了 "DRM-Protected Content"。除此之外,README 也专门说明了"What You CAN Download"(哪些内容可以下载),可对照判断。遇到失败建议先升级 yt-dlp 到最新版本,因为站点解析逻辑主要由 yt-dlp 承担。
Q5:执行 apt install pull-vids 提示找不到软件包怎么办?
README 明确说明 APT、AUR 和 Snap 目前尚未提供,早期版本文档曾提前列出这些渠道,导致安装命令报 "package was not found"。正确做法是使用 Homebrew、Chocolatey、go install,或官方提供的 install.sh / install.ps1 安装脚本。
Q6:pull-vids 与 yt-dlp 是什么关系,需要两个都装吗? 需要。pull-vids 负责命令行交互、进度展示、依赖管理与下载编排,而站点解析与媒体抓取实际由 yt-dlp 完成,音视频合并则依赖 ffmpeg。因此 yt-dlp 与 ffmpeg 是必装依赖,用 Homebrew 或 Chocolatey 安装 pull-vids 时会自动一并安装。
pull-vids 如何安装? #
官方推荐优先使用包管理器,可自动处理 yt-dlp 与 ffmpeg 依赖。以下按平台分别说明。
macOS(Homebrew,推荐) #
-
添加官方 tap 并安装:
brew tap vib795/tap brew install pull-vids -
若从 0.3.3 之前的版本升级,需执行一次重装(否则
brew upgrade会提示 "pull-vids 64 already installed" 而什么都不做):brew uninstall pull-vids && brew install vib795/tap/pull-vids -
如依赖未自动装好,手动补齐:
brew install ffmpeg yt-dlp
Windows(Chocolatey,推荐) #
-
以管理员身份打开 PowerShell,执行:
choco install pull-vids -
手动补齐依赖(如需要):
winget install ffmpeg pip install yt-dlp
任意平台(已安装 Go 1.24+) #
go install github.com/vib795/pull-vids@latest
一键安装脚本 #
macOS / Linux:
curl -fsSL https://raw.githubusercontent.com/vib795/pull-vids/develop/install.sh | bash
Windows(以管理员身份运行 PowerShell):
irm https://raw.githubusercontent.com/vib795/pull-vids/develop/install.ps1 | iex
手动安装预编译包 #
-
从上方下载表格或 GitHub Releases 获取对应平台的压缩包(注意:Release 以压缩归档形式分发,必须先解压)。
-
macOS(Apple Silicon 用 darwin-arm64,Intel 用 darwin-amd64):
tar -xzf pull-vids-darwin-arm64.tar.gz chmod +x pull-vids-darwin-arm64 sudo mv pull-vids-darwin-arm64 /usr/local/bin/pull-vids -
Linux(AMD64 或 ARM64 按机器架构选择):
tar -xzf pull-vids-linux-amd64.tar.gz chmod +x pull-vids-linux-amd64 sudo mv pull-vids-linux-amd64 /usr/local/bin/pull-vids -
Windows:解压
pull-vids-windows-amd64.zip,将pull-vids-windows-amd64.exe重命名为pull-vids.exe,然后移动到 PATH 中的目录(例如C:\Program Files\pull-vids\)。 -
安装依赖(Linux 示例):
sudo apt update sudo apt install ffmpeg pip install yt-dlp -
验证安装结果:
ffmpeg -version yt-dlp --version pull-vids --version
从源码构建(可选) #
需要 Go 1.24 或更高版本以及 Git:
git clone https://github.com/vib795/pull-vids.git
cd pull-vids
make build # 构建当前平台
make build-all # 构建全部平台
make install # 安装到系统
pull-vids 如何卸载? #
pull-vids 本体只是一个单二进制文件,卸载相对简单,但不会自动删除你已下载的媒体文件,需要自行清理下载目录。
macOS(Homebrew 安装) #
-
执行卸载命令:
brew uninstall pull-vids -
如不再需要,可移除已添加的 tap:
brew untap vib795/tap -
若希望一并清理由 Homebrew 安装的依赖(注意:可能被其他软件共用,请谨慎):
brew uninstall ffmpeg yt-dlp
macOS / Linux(脚本或手动安装) #
-
删除二进制文件:
sudo rm /usr/local/bin/pull-vids -
若通过
go install安装,删除 Go 的 bin 目录下的可执行文件即可(通常为$(go env GOPATH)/bin/pull-vids)。 -
手动删除此前下载的视频、音频、字幕等输出文件。
Windows(Chocolatey 安装) #
-
以管理员身份打开 PowerShell 或 CMD:
choco uninstall pull-vids -
若为手动安装,直接删除存放
pull-vids.exe的目录(如C:\Program Files\pull-vids\),并检查系统环境变量 PATH 中是否残留该路径。 -
检查并清理下载输出目录中的媒体文件。
依赖与残留说明 #
- pull-vids 官网文档未说明其会生成独立的用户配置文件或缓存目录,卸载时可重点检查下载输出目录与包管理器缓存。
- yt-dlp 与 ffmpeg 属于通用依赖,若系统中还有其他工具在使用,不建议一并卸载。
- 使用
pip install yt-dlp安装的依赖,可用pip uninstall yt-dlp移除。
