字节笔记本

2026年2月22日

Lux - 快速简单的视频下载工具

Lux 是一款使用 Go 语言开发的快速、简单的视频下载工具,支持国内外众多视频平台。截至目前,该项目在 GitHub 上已获得超过 30.9k stars,是视频下载领域的优秀开源项目。

项目简介

Lux 是一个命令行视频下载工具,具有以下特点:

  • 快速高效:使用 Go 语言编写,性能优异
  • 简单易用:一行命令即可完成视频下载
  • 支持广泛:支持 40+ 国内外主流视频平台
  • 功能丰富:支持多线程下载、断点续传、播放列表下载等

核心特性

  • 多平台支持:支持 YouTube、Bilibili、抖音、优酷、爱奇艺等国内外主流视频平台
  • 多线程下载:支持多线程加速下载,提升下载速度
  • 断点续传:支持下载中断后恢复,无需重新下载
  • 播放列表下载:支持批量下载整个播放列表
  • 字幕下载:支持 YouTube 字幕下载和嵌入
  • Cookie 支持:支持使用 Cookie 下载需要登录的视频
  • 代理支持:支持 HTTP/SOCKS5 代理
  • 格式选择:可选择不同清晰度和格式进行下载

安装指南

前置要求

  • FFmpeg:用于合并视频文件(仅影响最终文件合并,不影响下载)

安装方式

方式一:通过 Go 安装

bash
go install github.com/iawia002/lux@latest

方式二:macOS Homebrew

bash
brew install lux

方式三:Arch Linux (AUR)

bash
yay -S lux-dl

方式四:Windows Scoop

bash
scoop install lux

方式五:Windows Chocolatey

bash
choco install lux

方式六:直接下载二进制文件

Releases 页面下载对应系统的二进制文件。

快速开始

基本用法

bash
lux [选项] URL [URL...]

下载单个视频

bash
lux "https://www.youtube.com/watch?v=dQw4w9WgXcQ"

输出示例:

text
Site:      YouTube youtube.com
Title:     Rick Astley - Never Gonna Give You Up (Video)
Type:      video
Stream:
    [248]  -------------------
    Quality:         1080p video/webm; codecs="vp9"
    Size:            63.93 MiB (67038963 Bytes)
    # download with: lux -f 248 ...

41.88 MiB / 63.93 MiB [=================>-------------]  65.51% 4.22 MiB/s 00m05s

查看可用清晰度

bash
lux -i "https://www.youtube.com/watch?v=dQw4w9WgXcQ"

下载指定清晰度

bash
lux -f 248 "https://www.youtube.com/watch?v=dQw4w9WgXcQ"

下载播放列表

bash
lux -p "https://www.bilibili.com/bangumi/play/ep198061"

多线程下载

bash
lux -m -n 20 "https://www.youtube.com/watch?v=dQw4w9WgXcQ"

使用 Cookie 下载

bash
lux -c "name=value; name2=value2" "https://www.bilibili.com/video/av20203945"

或使用 Cookie 文件:

bash
lux -c cookies.txt "https://www.bilibili.com/video/av20203945"

使用代理

bash
HTTP_PROXY="http://127.0.0.1:1087/" lux -i "https://www.youtube.com/watch?v=Gnbch2osEeo"

支持的站点

Lux 支持 40+ 国内外视频平台:

平台类型支持功能
YouTube国际视频视频、播放列表、字幕
Bilibili国内视频视频、播放列表、VIP
抖音短视频视频、图片
优酷国内视频视频、VIP
爱奇艺国内视频视频
腾讯视频国内视频视频
西瓜视频短视频视频
TikTok国际短视频视频
Instagram社交平台视频、图片
Twitter/X社交平台视频
Facebook社交平台视频
Vimeo国际视频视频
Pinterest图片社交视频
Reddit社区平台视频、图片
网易云音乐音乐平台视频
喜马拉雅音频平台音频
知乎问答社区视频
小红书生活方式视频
快手短视频视频
AcFun国内视频视频、播放列表
芒果 TV国内视频视频
斗鱼视频直播平台视频
虎牙视频直播平台视频
微博社交平台视频

常用选项

下载选项

选项说明
-i仅显示信息,不下载
-f选择特定流进行下载
-p下载播放列表
-n设置下载线程数(默认 10)
-c设置 Cookie
-r设置 Referrer
-m启用多线程下载
--multi-thread同上

网络选项

选项说明
-retry下载失败重试次数(默认 10)
-csHTTP 分块大小(MB,默认 1)

文件系统选项

选项说明
-o指定输出路径
-O指定输出文件名
-F从文件读取 URL 列表

播放列表选项

选项说明
-start播放列表开始位置(默认 1)
-end播放列表结束位置
-items指定播放列表项目,如 1,5,6,8-10

字幕选项

选项说明
-C下载字幕
-C -items en,zh下载指定语言字幕(仅 YouTube)
-C -items en,zh -embed嵌入字幕到视频(仅 YouTube)

高级用法

批量下载

将多个 URL 写入文件,然后使用 -F 选项:

bash
lux -F urls.txt

下载指定范围

bash
lux -p -start 5 -end 10 "https://www.bilibili.com/bangumi/play/ep198061"

指定下载项目

bash
lux -p -items "1,3,5,8-10" "https://www.bilibili.com/bangumi/play/ep198061"

Bilibili 快捷下载

支持直接使用 av 或 ep 号:

bash
lux -i ep198381 av21877586

调试模式

bash
lux -d "https://www.bilibili.com/video/av20088587"

输出 JSON 数据

bash
lux -j "https://www.bilibili.com/video/av20203945"

注意事项

  1. 优酷ccode 经常变化,如遇问题可尝试使用 -ccode 参数指定新的 ccode,或使用登录后的 Cookie

  2. 西瓜/头条视频:必须携带 Cookie 才能下载成功,Cookie 有效期可能较短

  3. 芒果 TV:使用过多线程可能导致 HTTP 403 错误,建议设置线程数为 1

  4. FFmpeg:如果未安装 FFmpeg,视频仍可下载,但多片段视频无法自动合并

项目链接

许可证

MIT License

Copyright (c) 2018-present, iawia002

分享: