奔跑中的奶酪

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

APP02_Lux

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

如果说文章《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,一键获取以上所有内容。

一、安装扩展

安装扩展 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,一键获取以上所有内容。

自定义选项视频下载

如果你在步骤 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

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

i58_Bilix

macOS 安装方法:

pip3 install 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,注意不要在微软商店下载 Python,需要下载官方网站的版本。[本地一键下载]
A:同时,在扩展的权限设置里,还需要勾选“Request Permission”,勾选后重启一下浏览器即可。

i57_一键下载


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

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


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

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

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

i57_一键下载

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

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

i57_一键下载

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

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

i58_Bilix

二、已知问题

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

最后

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



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

评论:

49 条评论,访客:49 条,站长:0 条
  1. WXY86
    WXY86发布于: 

    奶酪,为啥我按照您的方法做,为什么是这样呢,能不能解个惑,详情见图片链接,能邮箱发个发个操作视频么?谢谢

  2. 楪祈
    楪祈发布于: 

    安装都完成能用了,怎么更改下载保存的位置?默认是C盘,想换一下

    • 奔跑中的奶酪
      奔跑中的奶酪发布于: 

      参考【自定义选项】篇,在扩展设置里,把里面的相对路径改成绝对路径就行了。

      • 楪祈
        楪祈发布于: 

        好的,改完能用了,谢谢

  3. peakwong
    peakwong发布于: 

    另外,我用lux下载的视频,像素不高,怎么选择下载720p或者更高的像素啊?

    • 奔跑中的奶酪
      奔跑中的奶酪发布于: 

      下载的什么视频?试试 yt-dlp 看看,还有,在右键菜单里可以选择 1080p 4K 分辨率,但前提是视频支持。

  4. peakwong
    peakwong发布于: 

    为什么我按操作完成后,下载视频是不全的啊?

  5. sxsbwl
    sxsbwl发布于: 

    都按照操作后最后一步显示Windows找不到文件’*’.请确定文件名是否正确后,再试一次 ,三个软件都一样

    • Ann
      Ann发布于: 

      我也是,只能等回复了

      • sxsbwl
        sxsbwl发布于: 

        同时右键you-get 和bilix下载选项不显示,设置里是直接导入的最新版

    • 奔跑中的奶酪
      奔跑中的奶酪发布于: 

      应该是 path 没设置正确,删除了,重新添加,请确保是按文章说的做。

      • Ann
        Ann发布于: 

        检查了一遍还是没有发现那里不对,地址也一模一样,有「下载/Video」地址,但是常见问题中2的现象仍就存在

        • 啦啦啦啦啦啦黑
          啦啦啦啦啦啦黑发布于: 

          我也遇到同样问题了,你打开设置后台双击lux(或者你提示找不到文件的那一项),然后在“Command” 将start lux.exe -o “%HOMEPATH%/Downloads/Video” {searchTerms} 中,将lux.exe前面添加“步骤一安装中的安装下载软件文件夹路径”,我的是 “start D:\OnekeyVideoDownload\soft\lux.exe -o “%HOMEPATH%/Downloads/Video” {searchTerms}”

  6. avatar
    dinwdd发布于: 

    linux和macos的方法基本差不多linux自带python可以调用的如果不行安装python网上有教程,如果发现拷贝不了右击”管理员身份打开”输入密码即可 比如安装FFmpeg直接在终端输入sudo apt install ffmpeg 一般情况下都能配置完成如果不行去网上找教程 注意步骤二,第二步不要复制到更目录下不然会无法识别 放到不常动地方比如“文档目录下”
    https://www.123pan.com/s/n1SDVv-t63vd

    • bookmarklet
      bookmarklet发布于: 

      Linux的部分资源失效了,可以重新发一个吗?谢谢!

  7. avatar
    lox4发布于: 

    一键部署后 始终显示Messenger app is not connected.无论重启多少次浏览器

    • avatar
      dinwdd发布于: 

      我也是这样用上面奶酪的方法就解决了

    • G1
      G1发布于: 

      您好,请问您解决了吗?我是在官网下载的Python3.10.5版本和3.9.13版本,试过了都还是显示Messenger app is not connected.想问一下您最后怎么解决的?

    • 奔跑中的奶酪
      奔跑中的奶酪发布于: 

      安装 python 3.10,还有调用脚本,都用奶酪提供的版本。

  8. xfrdxf
    xfrdxf发布于: 

    第三阶段没看懂怎么弄

  9. KKKK
    KKKK发布于: 

    Mac端downie yyds

  10. 寒山水暖
    寒山水暖发布于: 

    在Windows系统中,youtube-dl 默认配置文件路径为 %appdata%\youtube-dl\config.txt ,youtube-dl 目录和 config.txt 文件需要手动创建,yt-dlp 也是类似,这样就不用每次都输入下载参数了。
    如下,Win+R 打开运行,粘贴 %appdata% 后确定,在打开的目录里面新建文件夹 yt-dlp ,再在里面新建文本文档命名为 config ,然后输入下载参数,每条一行。

    –proxy 127.0.0.1:1081
    -o “e:/DLVideos/%(title)s – %(resolution)s.%(ext)s”
    –ignore-errors
    –downloader aria2c
    –downloader-args aria2c:”-x 16 -k 10M”
    -a “D:\DLSoftware\yt-dlp_urls.txt”
    -f bestvideo+bestaudio/best

  11. imbalaomao
    imbalaomao发布于: 

    奶大,Chrome版的Open With插件下架了,有其他地方可以下载么

    • avatar
      dinwdd发布于: 

      firefox并没有chrome现在这么搞没办法

  12. CC
    CC发布于: 

    C52发布的蓝奏云地址已经失效

  13. XX
    XX发布于: 

    我下载完成后音频、视频分开的?ffmpeg安装了的 在CMD中测试也正常

    • XX
      XX发布于: 

      我的问题 环境变量 没弄好

  14. ivkeji
    ivkeji发布于: 

    感谢博主的教程。项目不错,可惜全部是英文。哎!

  15. 张
    发布于: 

    您好,我在看您的文章下载安装OpenWith插件的时候遇到了困难,已经多次安装open_with_windows.py了,但是在监测安装的时候还是告知失败,我已经善用搜索在网上搜了,没搜到解决办法,请问可以帮助一下吗?

  16. 慧慧
    慧慧发布于: 

    可以b站收藏夹批量下载吗?

  17. cqyg
    cqyg发布于: 

    去找度娘

  18. avatar
    翔阳翎发布于: 

    配置好了
    非常好用,点赞👍

  19. CD
    CD发布于: 

    以上软件的下载地址在哪呢?

发表评论