软件介绍
本软件已经以 Dotnet Tool 形式发布。如果你本地有dotnet环境,使用如下命令即可安装使用:
如果需要更新bbdown,使用如下命令:
使用方法
基本用法
BBDown是一个命令行工具,使用方法如下:
其中:
- <url>: 视频地址或av|bv|BV|ep|ss
- [command]: 可选命令(如login、logintv、serve)
- [options]: 可选参数,用于自定义下载行为
常用命令示例
下载普通视频:
使用TV接口下载(无水印片源):
显示所有分P信息:
选择下载单个分P(如第10个):
选择下载多个分P(如第1、2、10个):
选择下载分P范围(如第1-10个):
下载番剧全集:
WEB/TV鉴权
扫码登录网页账号:
扫码登录云视听小电视账号:
手动加载网页cookie:
手动加载云视听小电视token:
APP鉴权
根据 #123,可以填写TV登录产生的access_token来给APP接口使用。可复制BBDownTV.data到BBDownApp.data使程序自动读取。
目前程序无法自动获取鉴权信息,推荐通过抓包来获取。
authorization的项,其值形为identify_v1 5227************1,其中的5227************1就是token(access_key)
获取后手动通过-token命令加载,或写入BBDownApp.data使程序自动读取。
参数详解
基本参数
参数 | 描述 |
---|---|
-tv, –use-tv-api | 使用TV端解析模式 |
-app, –use-app-api | 使用APP端解析模式 |
-intl, –use-intl-api | 使用国际版(东南亚视频)解析模式 |
–use-mp4box | 使用MP4Box来混流 |
-e, –encoding-priority | 视频编码的选择优先级, 用逗号分割 例: “hevc,av1,avc” |
-q, –dfn-priority | 画质优先级,用逗号分隔 例: “8K 超高清, 1080P 高码率, HDR 真彩, 杜比视界” |
-info, –only-show-info | 仅解析而不进行下载 |
–show-all | 展示所有分P标题 |
-aria2, –use-aria2c | 调用aria2c进行下载(你需要自行准备好二进制可执行文件) |
-ia, –interactive | 交互式选择清晰度 |
-hs, –hide-streams | 不要显示所有可用音视频流 |
-mt, –multi-thread | 使用多线程下载(默认开启) |
高级参数
参数 | 描述 |
---|---|
–video-only | 仅下载视频 |
–audio-only | 仅下载音频 |
–danmaku-only | 仅下载弹幕 |
–sub-only | 仅下载字幕 |
–cover-only | 仅下载封面 |
–debug | 输出调试日志 |
–skip-mux | 跳过混流步骤 |
–skip-subtitle | 跳过字幕下载 |
–skip-cover | 跳过封面下载 |
–force-http | 下载音视频时强制使用HTTP协议替换HTTPS(默认开启) |
-dd, –download-danmaku | 下载弹幕 |
–skip-ai | 跳过AI字幕下载(默认开启) |
–video-ascending | 视频升序(最小体积优先) |
–audio-ascending | 音频升序(最小体积优先) |
–allow-pcdn | 不替换PCDN域名, 仅在正常情况与–upos-host均无法下载时使用 |
文件命名参数
参数 | 描述 |
---|---|
-F, –file-pattern | 使用内置变量自定义单P存储文件名 |
-M, –multi-file-pattern | 使用内置变量自定义多P存储文件名 |
默认文件名格式:
- -F, –file-pattern:
<videoTitle>
- -M, –multi-file-pattern:
<videoTitle>/[P<pageNumberWithZero>]<pageTitle>
其他参数
参数 | 描述 |
---|---|
-p, –select-page | 选择指定分p或分p范围: (-p 8 或 -p 1,2 或 -p 3-5 或 -p ALL 或 -p LAST 或 -p 3,5,LATEST) |
–language | 设置混流的音频语言(代码), 如chi, jpn等 |
-ua, –user-agent | 指定user-agent, 否则使用随机user-agent |
-c, –cookie | 设置字符串cookie用以下载网页接口的会员内容 |
-token, –access-token | 设置access_token用以下载TV/APP接口的会员内容 |
–aria2c-args | 调用aria2c的附加参数(默认参数包含”-x16 -s16 -j16 -k 5M”, 使用时注意字符串转义) |
–work-dir | 设置程序的工作目录 |
–ffmpeg-path | 设置ffmpeg的路径 |
–mp4box-path | 设置mp4box的路径 |
–aria2c-path | 设置aria2c的路径 |
–upos-host | 自定义upos服务器 |
–force-replace-host | 强制替换下载服务器host(默认开启) |
–save-archives-to-file | 将下载过的视频记录到本地文件中, 用于后续跳过下载同个视频 |
–delay-per-page | 设置下载合集分P之间的下载间隔时间(单位: 秒, 默认无间隔) |
–host | 指定BiliPlus host(使用BiliPlus需要access_token, 不需要cookie, 解析服务器能够获取你账号的大部分权限!) |
–ep-host | 指定BiliPlus EP host(用于代理api.bilibili.com/pgc/view/web/season, 大部分解析服务器不支持代理该接口) |
–area | (hk|tw|th) 使用BiliPlus时必选, 指定BiliPlus area |
–config-file | 读取指定的BBDown本地配置文件(默认为:BBDown.config) |
–version | Show version information |
-?, -h, –help | Show help and usage information |
配置文件
在1.4.9或更高版本中,BBDown支持读取本地配置文件以简化命令行的手动输入。
如果用户没有指定–config-file,则默认读取程序同目录下的BBDown.config文件;若用户指定,则读取特定文件。
一个典型的配置文件:
配置文件中的每一行都代表一个命令行参数,参数和值需要分两行指定。例如:
- –file-pattern <videoTitle>[&Ldfn>]
- (下一行)<videoTitle>[&Ldfn>]
这样设置后,你就可以直接运行BBDown
命令而无需每次都输入相同的参数。
自定义输出文件名格式
在1.4.9或更高版本中,BBDown支持用户自定义合并时的文件名组成。
代码 | 含义 |
---|---|
<videoTitle> | 视频主标题 |
<pageNumber> | 视频分P序号 |
<pageNumberWithZero> | 视频分P序号(前缀补零) |
<pageTitle> | 视频分P标题 |
<bvid> | 视频BV号 |
<aid> | 视频aid |
<cid> | 视频cid |
&Ldfn> | 视频清晰度 |
&Lres> | 视频分辨率 |
&Lfps> | 视频帧率 |
&LvideoCodecs> | 视频编码 |
&LvideoBandwidth> | 视频码率 |
&LaudioCodecs> | 音频编码 |
&LaudioBandwidth> | 音频码率 |
&LownerName> | 上传者名称(下载番剧时,该值为””) |
&LownerMid> | 上传者mid(下载番剧时,该值为””) |
&LpublishDate> | 发布时间(yyyy-MM-dd_HH-mm-ss) |
&LapiType> | API类型(TV/APP/INTL/WEB) |
例如,你可以设置文件名格式为:
这样下载的文件将命名为类似”视频主标题 – 清晰度 – 分辨率 – 帧率.mp4″的格式。
API服务器
启动服务器(自定义监听地址和端口):
API服务器不支持HTTPS配置,如果有需要请自行使用nginx等反向代理进行配置
API详细请参考json-api-doc.md
暂无评论内容