奔跑中的奶酪

全网首发,没有比这更快的视频下载方法!

全网首发,没有比这更快的视频下载方法!

关于「视频下载」可以讲的内容很多,也很有意思。

如果说文章《i14 - 视频下载》讲的是下载思路,文章《i37 - 浏览器协作》讲的是下载技巧

那么本文讲的就是下载工具

视频下载的工具那么多,为什么奶酪还要搞个这样的项目呢?

一、全网视频下载

首先,是因为用 IDM 下载视频,IDM 并不总是有效,一些网站特意屏蔽了 IDM

而如果用 DownKyi 这样的下载软件,往往只能下载 B 站或者 U2B 的视频,对其它网站无能为力。

有没有全网视频都支持的下载工具?

有!用命令行下载工具就可以实现,youtube-dlyt-dlpyou-getluxBBDownBilix 都是很好的选择。

i57_下载工具

大多数情况下,luxyt-dlpBBDown 就已经够用。

一个用于国内、一个用于国外一个B 站专用,完美配合。

选择 lux 的原因,是因为它有单独的 exe 编译程序,对普通用户来说更简单。

youtube-dl 支持的网站最多,数量超过 1300 多个网站,但由于谷歌的限制,youtube-dl 的下载速度很慢。

所以可以选择它的分叉版本 yt-dlp

二、视频一键下载

其次,无论是图形化下载工具,还是命令行下载工具,在下载时都需要各种繁复的操作。

没有一键下载视频的方法?

有!这也正是奶酪开启这个项目的重要原因,它可以与浏览器配合,实现视频一键下载,下面是效果演示。

i57_一键下载

很多视频下载软件都“二创”,而奶酪的这个“二创”,目的是让 Windows 用户也能拥有 Downie 般的下载体验。

安装必备软件

而要实现这一目的,我们需要先安装一些必备软件

别担心,这些软件都只是让你的电脑拥有某个功能,使用时不需要打开,而且,只需要一次配置就可以永久使用


一、安装 Python

首先是安装 Python,可以说 Python 是整个项目的“发动机”。[本地一键下载]

Windows 安装方法:

安装方法很简单,选择默认安装 ,并一路“确认”到底就可以了。(记得勾选 Add Python 3.XX to PATH)

i57_Python安装

PS:Windows 7 只能安装 Python 3.7 以下的版本。

二、安装下载软件

在你觉得合适的位置,新建一个文件夹,比如「OnekeyVideoDownload」。

下载 FFmpeg、lux、you-get、yt-dlp、BBDown 等命令行软件,然后将它们复制到这里来。[本地一键下载]

i58_BBDown22

PS:FFmpeg 的作用,并不是下载视频,而是将分离的音频和视频文件,自动合并成一个文件。

三、配置环境变量

配置环境变量的目的。

是为了在 CMD 窗口操作时,可以省去输入软件的路径,几乎所有的命令行工具都可以这样配置。

i58_BBDown33

首先,按 Windows 键,输入「高级系统设置」,回车。

然后,点击「环境变量」,选择「Path」,点击「新建」,输入 步骤 2 文件夹的路径,然后点击「确定」。

比如我的是 D:\Videos\OnekeyVideoDownload

i58_BBDown33

最后,在 CMD 窗口分别输入 lux、yt-dlp、BBdown 等内容 ,如果有返回内容,则证明安装成功。

i57_安装必备软件

一、安装 Python

Mac 自带就有 Python,但版本太旧,需要更新一下这个“发动机”。

安装方法很简单,下载 Python,安装到默认路径 ,并一路“确认”到底就可以了。[本地一键下载]

APP02_Python安装2

二、安装下载软件

打开 /usr/local/bin 文件夹。

下载 FFmpeg、lux、yt-dlp、BBDown 等命令行软件,然后将它们复制到这个文件夹里来。[本地一键下载]

i57_Mac_安装下载软件

PS1:

如果下载的 lux、yt-dlp、BBDown 没有使用权限,则需要在“终端”分别输入以下代码来开启文件权限。

chmod +x /usr/local/bin/lux
chmod +x /usr/local/bin/yt-dlp
chmod +x /usr/local/bin/BBDown

PS2:

如果你想安装 you-get,由于 you-get 没有二进制编译版本,你需要通过 Python 来安装,可以在“终端”输入:

pip3 install you-get

i57_Mac_安装下载软件2

最后,在“终端”窗口分别输入 lux、yt-dlp、BBdown 等内容 ,如果有返回内容,则证明安装成功。

安装浏览器扩展

扩展 ContextSearch web-ext 原本是一个右键搜索工具,但它也可以应用于调用第三方软件。[本地一键下载]

我们借此可以实现视频的一键下载。


一、安装扩展

安装扩展 ContextSearch web-ext。地址:FirefoxChrome代理下载

二、下载调用脚本

下载调用脚本 ContextSearch-Native-App.zip。地址:本地一键下载源地址

三、解压调用脚本

Windows 键,输入 cmd 回车,在弹出的窗口里查看当前目录,比如我的是 C:\Users\RunningCheese

然后将步骤 2 的脚本,解压到这里来。

i57_当前路径

四、安装调用脚本

cmd 命令提示符里输入 install.py,又或者直接双击运行该文件。

i58_当前路径

注意:.py 文件的默认打开方式需要是 python,如果已经是了,则略过。

20220712143115

五、导入扩展配置

打开扩展 ContextSearch web-ext 的设置页面,导入奶酪的配置 ContextSearchOptions.json。(注意选择版本)

i57_当前路径3

奶酪配置下载:Firefox 版本Chrome 版本本地一键下载

PS:你可以在奶酪公众号后台回复关键字 i57,一键获取以上所有内容。

六、注意事项

导入配置后,点击下载视频时,可能会出现“Messenger app is not connected”的提示。

这时需要在扩展的权限设置里,勾选“Request Permission”,然后重启一下浏览器即可。

注意要完全关闭才算是重启,如果浏览器在后台还在运行的话,就不能算是重启。

i57_一键下载

一、安装扩展

安装扩展 ContextSearch web-ext。地址:FirefoxChrome代理下载

二、下载调用脚本

下载调用脚本 ContextSearch-Native-App.zip。地址:本地一键下载源地址

三、解压调用脚本

打开文件夹 /Users/runningcheese(runningcheese 修改为你的用户名),然后将步骤 2 的脚本解压到这里来。

i57_Mac_安装下载软件3

四、安装调用脚本

在“终端”窗口输入 python3 install.py,安装该调用脚本。

i57_Mac_安装下载软件4

五、导入扩展配置

打开扩展 ContextSearch web-ext 的设置页面,导入奶酪的配置 ContextSearchOptions.json。(注意选择版本)

i57_Mac_安装下载软件5

奶酪配置下载:Firefox 版本Chrome 版本本地一键下载

PS:你可以在奶酪公众号后台回复关键字 i57,一键获取以上所有内容。

六、注意事项

导入配置后,点击下载视频时,可能会出现“Messenger app is not connected”的提示。

这时需要在扩展的权限设置里,勾选“Request Permission”,然后重启一下浏览器即可。

注意要完全关闭才算是重启,如果浏览器在后台还在运行的话,就不能算是重启。

i57_一键下载

自定义选项视频下载

如果你在步骤 2 中,已经导入了奶酪配置,那就无需要再做操作,本章节内容,是为了让你了解具体的实现方法。

注意:Windows 和 macOS 的配置不一样。


一、lux 下载参数

lux 常用参数

保存位置 -o
相对路径:-o "%HOMEPATH%/Downloads/Video"
绝对路径:-o "E:/Download/Video"
分辨率 1080P -f 80-7
分辨率 4K -f 120-7
分辨率 720P -f 64-7
信息查询 -i
弹幕下载 -C
列表下载 -p
具体某几集,可以用 -items 选择,然后输入 1,5,6,8-10,数字之间用逗号隔开。
比如:lux -p items 5,6 https://www.bilibili.com/video/BV1fK411A7u3
批量下载 lux url1 url2
又或者将 url 链接保存到一个文件里,比如 lux -F C:/Users/RunningCheese/url.txt
如果 url.txt 文件刚好就在“CMD 窗口的默认位置”,那么可以用 lux -F url.txt
Cookie 下载 -c
比如 lux -c "复制的 cookie" 网址
又或者将 cookie 保存到一个文件里,比如 lux -c C:/Users/RunningCheese/cookie.txt
如果 cookie.txt 文件刚好就在“CMD 窗口的默认位置”,那么可以用 lux -c cookie.txt
网站 cookie 获取方法:FirefoxChrome。[示意图]
代理设置 lux 也支持 U2B 视频,但下需要先设置一下端口,在 CMD 窗口输入。[示意图]
set http_proxy=http://127.0.0.1:1080 & set https_proxy=http://127.0.0.1:1080
lux 下载国外视频较麻烦,建议还是用 yt-dlp 来下载。

二、lux 下载选项(Windows)

由于前面已经将 yt-dlpyou-getluxBBDown 等软件加入系统环境变量。

所以,在用浏览器调用这些软件时,在“Command”一栏,可以只输入“start lux.exe”即可,无需输入完整路径。

而如果是调用一般的软件,则需要输入软件的完整路径

i57_一键视频下载2

如果还需要设置“保存位置、分辨率选择、弹幕下载、列表下载”等等,则还需要添加相应参数。

注意:以下命令,需要在系统默认的「下载」文件夹里,手动新建一个 Video 的文件夹,否则 lux 会下载失败。

i57_一键下载

下面是奶酪 Windows 浏览器里自带的 lux 配置。

lux:

start lux.exe -o "%HOMEPATH%/Downloads/Video" {searchTerms}

lux 1080P:

start lux.exe -o "%HOMEPATH%/Downloads/Video" -f 80-7 {searchTerms}

lux 4K:

start lux.exe -o "%HOMEPATH%/Downloads/Video" -f 120-7 {searchTerms}

lux 720P:

start lux.exe -o "%HOMEPATH%/Downloads/Video" -f 64-7 {searchTerms}

lux 字幕弹幕:

start lux.exe -o "%HOMEPATH%/Downloads/Video" -C {searchTerms}

lux 列表下载:

start lux.exe -o "%HOMEPATH%/Downloads/Video" -p {searchTerms}

lux 信息查询:

start cmd /K lux.exe -i {searchTerms}

三、lux 下载选项(macOS)

由于 yt-dlpyou-getluxBBDown 等软件已经安装在 /usr/local/bin 文件夹下。

在用“终端”调用这些软件时,可以只输入软件名字,无需输入完整路径。

而如果是调用一般的软件,则需要输入软件的完整路径。

i57_Mac_自定义下载

如果还需要设置“保存位置、分辨率选择、弹幕下载、列表下载”等等,则还需要添加相应参数。

注意:以下命令,需要在系统默认的「下载」文件夹里,手动新建一个 Video 的文件夹,否则 lux 会下载失败。

i57_Mac_自定义下载

下面是奶酪 macOS 浏览器里自带的 lux 配置。

lux:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "lux -o ~/Downloads/Video \"{searchTerms}\""'

lux 1080P:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "lux -o ~/Downloads/Video -f 80-7 \"{searchTerms}\""'

lux 4K:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "lux -o ~/Downloads/Video -f 120-7 \"{searchTerms}\""'

lux 720P:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "lux -o ~/Downloads/Video -f 64-7 \"{searchTerms}\""'

lux 字幕弹幕:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "lux -C -o ~/Downloads/Video \"{searchTerms}\""'

lux 列表下载:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "lux -o ~/Downloads/Video -p \"{searchTerms}\""'

lux 信息查询:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "lux -i \"{searchTerms}\""'

一、yt-dlp 下载参数

yt-dlp 常用参数

代理设置 --proxy 127.0.0.1:1080(这里要改成你的端口)
保存位置 --output
相对路径:--output "../../../Downloads/Video/%(title)s.%(ext)s"
绝对路径:--output "E:/Downloads/Video/%(title)s.%(ext)s"
格式转换 --merge-output-format mp4
信息查询 -F
分辨率1080P -f "bestvideo[height<=1080]+bestaudio/best"
分辨率 4K -f "bestvideo[height<=2160]+bestaudio/best"
音频下载 -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0
字幕下载 --skip-download --write-sub --write-auto-sub --sub-lang en,en-US,zh-CN,zh-TW --convert-subs srt
如果有英文、简中、繁中字幕,则全部下载,没有则下载“自动生成字幕”,并转化为 srt 格式。
列表下载 ---yes-playlist
具体某几集,使用 -I 来选择,比如1,5,6,8-10,数字之间用逗号隔开。
比如:yt-dlp -I 5,6 https://www.bilibili.com/video/BV1fK411A7u3
批量下载 yt-dlp url1 url2
又或者将 url 链接保存到文件里,比如 yt-dlp -a C:/Users/RunningCheese/url.txt
如果 url.txt 文件刚好就在“CMD 窗口的默认位置”,那么可以用 yt-dlp -a url.txt
Cookie 下载 --cookies
比如 yt-dlp --cookies "复制的 cookie" 网址
又或者将 cookie 保存到文件里,比如 yt-dlp --cookies C:/Users/RunningCheese/cookie.txt
如果 cookie.txt 文件就在“CMD 窗口的默认位置”里,那么可以用 yt-dlp --cookies cookie.txt
网站 cookie 获取方法:FirefoxChrome。[示意图]

二、yt-dlp 下载选项(Windows)

下面是奶酪 Windows 浏览器里自带的 yt-dlp 配置。

注意:如下载 U2B 视频失败,则需要添加代理端口 --proxy 127.0.0.1:1080(修改 1080 为你的端口)

yt-dlp:

start yt-dlp.exe --output "../../../Downloads/Video/%(title)s.%(ext)s" --merge-output-format mp4 {searchTerms}

yt-dlp 1080P:

start yt-dlp.exe --output "../../../Downloads/Video/%(title)s.%(ext)s" --merge-output-format mp4 -f "bestvideo[height=1080]+bestaudio/best" {searchTerms}

yt-dlp 4K:

start yt-dlp.exe --output "../../../Downloads/Video/%(title)s.%(ext)s" --merge-output-format mp4 -f "bestvideo[height=2160]+bestaudio/best" {searchTerms}

yt-dlp 音频:

start yt-dlp.exe --output "../../../Downloads/Video/%(title)s.%(ext)s" -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --embed-thumbnail {searchTerms}

yt-dlp 弹幕:

start yt-dlp.exe --output "../../../Downloads/Video/%(title)s.%(ext)s" --skip-download --write-sub --write-auto-sub --compat-option no-live-chat {searchTerms}

yt-dlp 字幕:

start yt-dlp.exe --output "../../../Downloads/Video/%(title)s.%(ext)s" --skip-download --write-sub --write-auto-sub --sub-lang en,en-US,zh-CN,zh-TW --convert-subs srt {searchTerms}

yt-dlp 嵌入字幕:

start yt-dlp.exe --output "../../../Downloads/Video/%(title)s.%(ext)s" --merge-output-format mp4 -f \"bestvideo[height>=1080]+bestaudio/best\" -S codec:h264:m4a --write-sub --write-auto-sub --sub-lang zh-Hans,en --embed-sub --compat-options no-keep-subs -i {searchTerms}

yt-dlp 完整下载:

start yt-dlp.exe --output "../../../Downloads/Video/%(title)s.%(ext)s" --merge-output-format mp4 --no-playlist --merge-output-format mp4 -S codec:h264:m4a --write-description --write-info-json --write-annotations --write-thumbnail --write-subs --write-auto-subs --sub-langs zh-Hans,en --convert-subs srt {searchTerms}

yt-dlp 列表下载:

start yt-dlp.exe --output "../../../Downloads/Video/%(title)s.%(ext)s" --merge-output-format mp4 --yes-playlist {searchTerms}

yt-dlp 频道下载:(默认前30)

start yt-dlp.exe --output "../../../Downloads/Video/"%(uploader)s/%(title)s.%(ext)s" --merge-output-format mp4 --max-downloads=30 {searchTerms}

yt-dlp 信息查询:

start cmd /K yt-dlp.exe -F {searchTerms}

三、yt-dlp 下载选项(macOS)

下面是奶酪 macOS 浏览器里自带的 yt-dlp 配置。

注意:如下载 U2B 视频失败,则需要添加代理端口 --proxy 127.0.0.1:1080(修改 1080 为你的端口)

yt-dlp:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "yt-dlp -P ~/Downloads/Video -o \"%(title)s.%(ext)s\" --no-playlist --merge-output-format mp4 -S codec:h264:m4a \"{searchTerms}\""'

yt-dlp 1080P:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "yt-dlp -P ~/Downloads/Video -o \"%(title)s.%(ext)s\" --no-playlist --merge-output-format mp4 -f \"bestvideo[height=1080]+bestaudio/best\" -S codec:h264:m4a \"{searchTerms}\""'

yt-dlp 4K:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "yt-dlp -P ~/Downloads/Video -o \"%(title)s_4K.%(ext)s\" --no-playlist --merge-output-format mp4 -f \"bestvideo[height=2160]+bestaudio/best\" -S codec:h264:m4a \"{searchTerms}\""'

yt-dlp 音频:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "yt-dlp -P ~/Downloads/Video -o \"%(title)s.%(ext)s\" no-playlist -f bestaudio --extract-audio --audio-format mp3 --audio-quality 0 --embed-thumbnail \"{searchTerms}\""'

yt-dlp 弹幕:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "yt-dlp -P ~/Downloads/Video -o \"%(title)s.%(ext)s\" --skip-download --write-subs --compat-option no-live-chat \"{searchTerms}\""'

yt-dlp 字幕:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "yt-dlp -P ~/Downloads/Video -o \"%(title)s.%(ext)s\" --skip-download --write-sub --write-auto-sub --sub-lang en,en-US,zh-CN,zh-TW --convert-subs srt \"{searchTerms}\""'

yt-dlp 嵌入字幕:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "yt-dlp -P ~/Downloads/Video -o \"%(title)s.%(ext)s\" --merge-output-format mp4 -f \"bestvideo[height>=1080]+bestaudio/best\" -S codec:h264:m4a --write-sub --write-auto-sub --sub-lang zh-Hans,en --embed-sub --compat-options no-keep-subs -i \"{searchTerms}\""'

yt-dlp 完整下载:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "yt-dlp -P ~/Downloads/Video -o \"%(title)s/%(title)s.%(ext)s\" --no-playlist --merge-output-format mp4 -S codec:h264:m4a --write-description --write-info-json --write-annotations --write-thumbnail --write-subs --write-auto-subs --sub-langs zh-Hans,en --convert-subs srt \"{searchTerms}\""'

yt-dlp 列表下载:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "yt-dlp -P ~/Downloads/Video -o \"%(playlist)s/%(playlist_index)s - %(title)s.%(ext)s\" --yes-playlist --merge-output-format mp4 -S codec:h264:m4a \"{searchTerms}\""'

yt-dlp 频道下载:(默认前30)

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "yt-dlp -P ~/Downloads/Video -o \"%(uploader)s/%(title)s.%(ext)s\" --merge-output-format mp4 -S codec:h264:m4a --max-downloads=30 \"{searchTerms}\""'

yt-dlp 信息查询:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "yt-dlp -F \"{searchTerms}\""'

一、BBDown 下载参数

BBDown 常用参数

无水印 -tv
保存位置 --work-dir
相对路径:--work-dir "%HOMEPATH%/Downloads/Video"
绝对路径:--work-dir "E:/Downloads/Video"
信息查询 -ia
分辨率 1080P --dfn-priority "1080P 高帧率, 1080P 高清"
分辨率 4K --dfn-priority "4K 超清, 1080P 高清"
音频下载 --audio-only
弹幕下载 --dd
字幕下载 --sub-only
专辑下载 -p
选择指定分p或分p范围:(-p 8 或 -p 1,2 或 -p 3-5 或 -p ALL)
帐号登陆 login

二、BBDown 下载选项(Windows)

下面是奶酪 Windows 浏览器里自带的 BBDown 配置。

BBDown:

start BBDown.exe --work-dir "%HOMEPATH%/Downloads/Video" {searchTerms}

BBDown 无水印:

start BBDown.exe -tv --work-dir "%HOMEPATH%/Downloads/Video" {searchTerms}

BBDown 1080P:

start BBDown.exe -tv --dfn-priority "1080P 高帧率, 1080P 高清" --work-dir "%HOMEPATH%/Downloads/Video" {searchTerms}

BBDown 4K:

start BBDown.exe -tv --dfn-priority "4K 超清, 1080P 高清" --work-dir "%HOMEPATH%/Downloads/Video" {searchTerms}

BBDown 音频:

start BBDown.exe --audio-only --work-dir "%HOMEPATH%/Downloads/Video" {searchTerms}

BBDown 弹幕:

start BBDown.exe -dd --work-dir "%HOMEPATH%/Downloads/Video" {searchTerms}

BBDown 字幕:

start BBDown.exe --sub-only --work-dir "%HOMEPATH%/Downloads/Video" {searchTerms}

BBDown 列表下载:

start BBDown.exe -tv -p ALL " --work-dir "%HOMEPATH%/Downloads/Video" {searchTerms}

BBDown 频道下载:

start BBDown.exe -tv -p ALL --work-dir "%HOMEPATH%/Downloads/Video" {searchTerms}

BBDown 信息查询:

start cmd /K BBDown.exe -ia {searchTerms}

BBDown 帐号登陆:

start /max BBDown.exe login

三、BBDown 下载选项(macOS)

下面是奶酪 macOS 浏览器里自带的 BBDown 配置。

BBDown:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "BBDown --work-dir ~/Downloads/Video \"{searchTerms}\""'

BBDown 无水印:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "BBDown -tv --work-dir ~/Downloads/Video \"{searchTerms}\""'

BBDown 1080P:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "BBDown -tv --dfn-priority \"1080P 高帧率, 1080P 高清\" --work-dir ~/Downloads/Video \"{searchTerms}\""'

BBDown 4K:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "BBDown -tv --dfn-priority \"4K 超清, 1080P 高清\" --work-dir ~/Downloads/Video \"{searchTerms}\""'

BBDown 音频:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "BBDown --audio-only --work-dir ~/Downloads/Video \"{searchTerms}\""'

BBDown 弹幕:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "BBDown -dd --work-dir ~/Downloads/Video \"{searchTerms}\""'

BBDown 字幕:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "BBDown --sub-only --work-dir ~/Downloads/Video \"{searchTerms}\""'

BBDown 列表下载:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "BBDown -tv -p ALL --work-dir ~/Downloads/Video \"{searchTerms}\""'

BBDown 频道下载:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "BBDown -tv -p ALL -M \"\" --work-dir ~/Downloads/Video \"{searchTerms}\""'

BBDown 信息查询:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "BBDown -ia \"{searchTerms}\""'

BBDown 帐号登陆:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "BBDown login"'

0、Bilix 安装

在默认情况下,Bilix 的选项是隐藏的,你需要手动开启

i58_Bilix

之所以将 Bilix 的选项默认隐藏,是因为它的安装方式异于寻常

Bilix 没有现成的 exe 编译版本,需要通过 Python 的 pip 包安装程序来安装,方法是在 cmd 或者终端输入:

Windows 安装方法:

安装:pip install bilix
升级:pip install bilix --upgrade
卸载:pip uninstall bilix

安装完成后,在 cmd 窗口输入 bilix -h,如果有返回结果,则证明安装成功。

i58_Bilix

macOS 安装方法:

安装:pip3 install bilix
升级:pip3 install bilix --upgrade
卸载:pip3 uninstall bilix

i58_Bilix

原理说明:

pip 的意思是 Package Installer for Python

它可以提供 Python 包的安装、升级和卸载等功能,我们可以通过 pip 下载 GitHub 上的大部分 Python 项目。

一旦你学会了这个技能,你就可能会打开一扇新的大门,踏入新的世界。

一、Bilix 下载参数

Bilix 常用参数

命令 参数
视频下载 get_video
视频质量 -q 0(0 为最高质量,1 为次高质量,2为第三质量)
保存位置 --dir
相对路径:--dir "%HOMEPATH%/Downloads/Video"
绝对路径:--dir "E:/Downloads/Video"
音频下载 --only-audio
弹幕下载 --dm
字幕下载 --subtitle
列表下载 get_series(选择指定分p或分p范围:-p 8 或 -p 1,2 或 -p 3-5 或 -p ALL)
频道下载 get_up(如果只下载前面 30 个视频,可加上 -n 30 ,默认前 30。)
收藏下载 get_favour
合集下载 get_collect

二、Bilix 下载选项(Windows)

下面是奶酪 Windows 浏览器里自带的 Bilix 配置。

Bilix:

start bilix.exe get_video --dir "%HOMEPATH%/Downloads/Video" {searchTerms}

Bilix 最高质量:

start bilix.exe get_video -q 0 --dir "%HOMEPATH%/Downloads/Video" {searchTerms}

Bilix 次高质量:

start bilix.exe get_video -q 1 --dir "%HOMEPATH%/Downloads/Video" {searchTerms}

Bilix 音频:

start bilix.exe get_video --only-audio --dir "%HOMEPATH%/Downloads/Video" {searchTerms}

Bilix 弹幕字幕:[测试链接]

start bilix.exe get_video --image --subtitle --dm --dir "%HOMEPATH%/Downloads/Video" {searchTerms}

Bilix 列表下载:[测试链接]

start bilix.exe get_series --dir "%HOMEPATH%/Downloads/Video" {searchTerms}

Bilix 频道下载:[测试链接]

start bilix.exe get_up -n 30 --dir "%HOMEPATH%/Downloads/Video" {searchTerms}

Bilix 收藏下载:[测试链接]

start bilix.exe get_favour --dir "%HOMEPATH%/Downloads/Video" {searchTerms}

Bilix 合集下载:[测试链接]

start bilix.exe get_collect --dir "%HOMEPATH%/Downloads/Video" {searchTerms}

三、Bilix 下载选项(macOS)

下面是奶酪 macOS 浏览器里自带的 Bilix 配置。

Bilix:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "bilix get_video --dir ~/Downloads/Video \"{searchTerms}\""'

Bilix 最高质量:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "bilix get_video -q 0 --dir ~/Downloads/Video \"{searchTerms}\""'

Bilix 次高质量:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "bilix get_video -q 1 --dir ~/Downloads/Video \"{searchTerms}\""'

Bilix 音频:

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "bilix get_series --only-audio --dir ~/Downloads/Video \"{searchTerms}\""'

Bilix 弹幕字幕:[测试链接]

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "bilix get_video --image --subtitle --dm --dir ~/Downloads/Video --no-hierarchy \"{searchTerms}\""'

Bilix 列表下载:[测试链接]

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "bilix get_series --dir ~/Downloads/Video \"{searchTerms}\""'

Bilix 频道下载:[测试链接]

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "bilix get_up -n 30 --dir ~/Downloads/Video \"{searchTerms}\""'

Bilix 收藏下载:[测试链接]

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "bilix get_favour --dir ~/Downloads/Video \"{searchTerms}\""'

Bilix 合集下载:[测试链接]

osascript -e 'tell application "Terminal" to activate' -e 'tell app "Terminal" to do script "bilix get_collect --dir ~/Downloads/Video \"{searchTerms}\""'

一、速度对比

为了验证各下载工具的快慢,我分别用 lux、yt-dlp、BBDown、Bilix 做了一组速度对比:

下载速度对比 - 详细

速度对比 lux yt-dlp BBDown Bilix
220mb 8K 视频 56秒 25秒 22秒 21秒
2.2gb 电影 5分21秒 无法下载 3分30秒 3分17秒
688mb 7P 视频列表 3分13秒 2分03秒 1分21秒 59秒
305mb 27P 视频列表 2分16秒 1分08秒 56秒 33秒

得到的结论是:

luxyt-dlp 默认没有多线程下载,下载速度一般。

BBDown 默认自带了 Aria2 多线程下载,所以下载速度非常快。

Bilix 利用了 Python 的 Async 异步特性,高性能,高并发,在批量下载多个视频时,优势十分明显。

二、特对对比

不同下载工具,对视频的支持不同,下面是我对各工具的特性对比,其中“收藏下载”和“合辑下载”是 B 站特有的。

下载特性对比 - 详细

特性对比 lux yt-dlp BBdown Bilix
测试版本 0.15 2022-07-18 1.5.3 0.6.13
支持网站 国内网站 国内外网站 B站专用 B站专用
下载速度 很快 非常快
分辨率选择 可以指定 可以指定 可以指定 相对选择
信息查询 支持 支持 支持 不支持
音频 不支持 有缩略图 有缩略图 无缩略图
弹幕 无法单独下载 可单独下载 无法单独下载 无法单独下载
字幕 无法单独下载 可单独下载 可单独下载 无法单独下载
列表下载 支持 支持 缩略图异常 支持
频道下载 不支持 支持 导出视频链接 支持
收藏下载 不支持 不支持 支持 支持
合集下载 不支持 不支持· 支持 支持

常见问题解答

一、常见问题

0、为什么在我的浏览器上无法调用下载?

A:你可以先试试奶酪的定制版浏览器,扩展、菜单、选项设置什么的,都是现成的,成功率更高。
A:下载地址:RC FirefoxRC ChromeRC Edge

1、为什么显示 Messenger app is not connected?

A:首先要确保已经安装 Python,需要下载官方的版本,安装后记得重启一下浏览器[本地一键下载]


2、为什么会显示“Windows找不到文件“lux.exe”,请确定文件名是否正确后,再试一次这个问题”?

A:在 CDM 窗口输入 lux,如果出现“Run lux failed: too few arguments”,则说明安装成功了,重启电脑即可。


3、为什么使用 lux 一键下载时,cmd 黑色窗口一闪而过就没有了?

A:lux 的下载文件,默认是保存在系统自带的「下载」文件夹,你需要在这里手动新建一个「 Video 」的文件夹。

注意:如果你修改了「下载」文件夹路径,下载的视频依旧是在 C 盘下,你需要自行修改保存位置。

i57_一键下载


4、我想修改视频的默认保存位置,要怎么办?

A:视频的默认保存位置,是在系统自带的 [下载] 文件夹里,也就是在 C:/User/你的用户名/Downloads/Video

修改默认位置,需要在扩展的设置页面里修改路径,比如改成 E:/Downloads/Video

i57_一键下载

如果想一键修改,那么可以用文字编辑软件,打开奶酪的 .json 配置文件,批量替换下面两个路径。

搜索 %HOMEPATH%/Downloads/Video 全部替换为 E:/Downloads/Video
搜索 ../../../Downloads/Video 全部替换为 E:/Downloads/Video

i57_一键下载

5、为什么使用 ytd-lp 无法下载 Youtube 的视频?

A:需要设置代理端口,已知某 S 开头软件,需要添加端口 --proxy 127.0.0.1:1080,某 C 开头软件,无需添加。

i57_一键下载

6、为什么在工具栏里点击下载无反应?

A:不要在工具栏里点击下载,会无法传递网页地址,需要在网页右键菜单里点击下载。

i57_一键下载

7、为什么没有 Bilix 的菜单选项?

A:默认情况下,Bilix隐藏的,需要你手动开启,如未安装 Bilix,可查看本文的【自定义选项 - Bilix 选项】。

i58_Bilix

二、已知问题

PS:如果还有什么其它问题,可以直接在评论区反馈!

最后

  1. 欢迎关注奶酪 公众号 获取奶酪所有的原创资源,回复文章编号,比如 i57 就可获取对应的资源。
  2. 欢迎订阅我的 “奶酪书签专业版”,15年沉淀,超过 5000 个分类井条有序的好用实用 html 网站书签。
  3. 本文由「奔跑中的奶酪」原创创作,欢迎订阅、留言和 打赏,也欢迎引用和转载,但要注明出处。



注:本文由 奔跑中的奶酪 作者:奔跑中的奶酪 发表,其版权均为作者所有,如需转载,请注明作者名字以及文章来源。
350
avataravatar

评论:

147 条评论,访客:147 条,站长:0 条
  1. 车到山前必有路
    车到山前必有路发布于: 

    关于 Lux ,我这边无法下载油管的视频,原因是无法使用代理。我按照说明已经将 http_proxy 的环境变量设置完了,但 Lux 却还是不使用代理。

  2. 雲茂球
    雲茂球发布于: 

    求教~我都按这个设置弄完了,也是用的你的设置,重启好多次了,一直显示“Messenger app is not connected”,怎么办呀?

  3. smartbeter
    smartbeter发布于: 

    安装bilix碰到两个问题,已解决:
    1、问题一描述及解决办法:本来用奶大的“本地一键下载文件”配置试了半天不能用bilix,已找到解决办法,卸载旧版本Python,下最新的python-3.11.3-amd64

    2、问题二描述及解决办法:bilix安装太慢,可以在后面加上-i https://pypi.tuna.tsinghua.edu.cn/simple(前有空格)

  4. 浅墨
    浅墨发布于: 

    奶大大,按照您的方法安装后,lux,bbdown均无法下载B站视频(已在下载文件夹中新建Video文件夹),并且重启了系统,在CMD里输入lux也会返回Run lux failed: too few arguments,这是为什么呢?

    • 浅墨
      浅墨发布于: 

      注:lux在按下载后会出现一个cmd黑框,里面是空的,bbdown会显示“未登录”然后“获取aid”然后也会闪退

      • du Barry
        du Barry发布于: 

        今天我也出现了同样的问题,前一阵还好用着,请问解决了吗?

        • du Barry
          du Barry发布于: 

          已解决:重新覆盖并安装了调用脚本

    • 浅墨
      浅墨发布于: 

      在安装bilix是,在按照您里面说的安装方法后,依然无法使用,显示“bilix : 无法将“bilix”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正
      确,然后再试一次。”,这又是为什么呢?

发表评论