当前位置: 首页 > 软件库 > 应用工具 > 下载工具 >

BBDown

命令行式哔哩哔哩下载器
授权协议 MIT
开发语言 C#
所属分类 应用工具、 下载工具
软件类型 开源软件
地区 国产
投 递 者 尉迟清野
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

BBDown 是一款命令行式哔哩哔哩下载器。

功能

  • 番剧下载(Web|TV|App)
  • 课程下载(Web)
  • 普通内容下载(Web|TV|App)(TV接口可以下载部分UP主的无水印内容)
  • 合集/列表/收藏夹/个人空间解析
  • 多分P自动下载
  • 选择指定分P进行下载
  • 选择指定清晰度进行下载
  • 下载外挂字幕并转换为srt格式
  • 自动合并音频+视频流+字幕流+章节信息(使用ffmpeg或mp4box)
  • 单独下载视频/音频/字幕
  • 二维码登录账号
  • 多线程下载
  • 支持调用aria2c下载
  • 支持AVC/HEVC/AV1编码
  • 支持8K/HDR/杜比视界/杜比全景声下载
  • 自定义存储文件名

TODO

  • 自动刷新cookie
  • 支持更多自定义选项

开始使用

目前命令行参数支持情况

BBDown
  BBDown是一个免费且便捷高效的哔哩哔哩下载/解析软件.

Usage:
  BBDown [options] <url> [command]

Arguments:
  <url>  视频地址 或 av|bv|BV|ep|ss

Options:
  -tv, --use-tv-api                              使用TV端解析模式
  -app, --use-app-api                            使用APP端解析模式
  -intl, --use-intl-api                          使用国际版解析模式
  --use-mp4box                                   使用MP4Box来混流
  --encoding-priority <encoding-priority>        视频编码的选择优先级,用逗号分割 例:"hevc,av1,avc"
  --dfn-priority <dfn-priority>                  画质优先级,用逗号分隔 例:"8K 超高清, 1080P 高码率, HDR 真彩, 杜比视界"
  -info, --only-show-info                        仅解析而不进行下载
  -hs, --hide-streams                            不要显示所有可用音视频流
  -ia, --interactive                             交互式选择清晰度
  --show-all                                     展示所有分P标题
  --use-aria2c                                   调用aria2c进行下载(你需要自行准备好二进制可执行文件)
  --aria2c-proxy <aria2c-proxy>                  调用aria2c进行下载时的代理地址配置
  -mt, --multi-thread                            使用多线程下载
  -p, --select-page <select-page>                选择指定分p或分p范围:(-p 8 或 -p 1,2 或 -p 3-5 或 -p ALL)
  --audio-only                                   仅下载音频
  --video-only                                   仅下载视频
  --sub-only                                     仅下载字幕
  --debug                                        输出调试日志
  --skip-mux                                     跳过混流步骤
  --skip-subtitle                                跳过字幕下载
  --skip-cover                                   跳过封面下载
  --force-http                                   下载音视频时强制使用HTTP协议替换HTTPS(默认开启)
  -dd, --download-danmaku                        下载弹幕
  --language <language>                          设置混流的音频语言(代码),如chi, jpn等
  -c, --cookie <cookie>                          设置字符串cookie用以下载网页接口的会员内容
  -token, --access-token <access-token>          设置access_token用以下载TV/APP接口的会员内容
  --work-dir <work-dir>                          设置程序的工作目录
  --ffmpeg-path <ffmpeg-path>                    设置ffmpeg的路径
  --mp4box-path <mp4box-path>                    设置mp4box的路径
  --aria2c-path <aria2c-path>                    设置aria2c的路径
  --delay-per-page <delay-per-page>              设置下载合集分P之间的下载间隔时间(单位: 秒, 默认无间隔)
  -F, --file-pattern <file-pattern>              使用内置变量自定义单P存储文件名:

                                                 <videoTitle>: 视频主标题
                                                 <pageNumber>: 视频分P序号
                                                 <pageNumberWithZero>: 视频分P序号(前缀补零)
                                                 <pageTitle>: 视频分P标题
                                                 <aid>: 视频aid
                                                 <cid>: 视频cid
                                                 <dfn>: 视频清晰度
                                                 <res>: 视频分辨率
                                                 <fps>: 视频帧率
                                                 <videoCodecs>: 视频编码
                                                 <videoBandwidth>: 视频码率
                                                 <audioCodecs>: 音频编码
                                                 <audioBandwidth>: 音频码率
                                                 <ownerName>: 上传者名称
                                                 <ownerMid>: 上传者mid

                                                 默认为: <videoTitle>

  -M, --multi-file-pattern <multi-file-pattern>  使用内置变量自定义多P存储文件名:

                                                 默认为: <videoTitle>/[P<pageNumberWithZero>]<pageTitle>

  --config-file <config-file>                    读取指定的BBDown本地配置文件(默认为: BBDown.config)
  --version                                      Show version information
  -?, -h, --help                                 Show help and usage information

Commands:
  login    通过APP扫描二维码以登录您的WEB账号
  logintv  通过APP扫描二维码以登录您的TV账号

演示

下载完毕后在当前目录查看MP4文件:

 相关资料
  • 首先说背景:华五本硕,2段相关项目,一篇b会 算法岗的面试好就好在不用准备八股,上来就是自我介绍,项目介绍,刷题这老三样。题是一道基础的dfs,leetcode序号200。 问了面试官工作时长,感觉b站的工作时长都差不多,基本就是早10晚7,属于夜猫子版wlb。 挺多人说算法岗要顶会,但就我切身体验感觉:好学校,对口项目,好论文,三者满足其二就可以了,我也没顶会,但是只要方向对口,面试一般都推的比

  • 代码题 数组中和为target的元素的下标 代码题 和小于target的最长连续子序列 vue生命周期 vue双向绑定原理 箭头函数 为什么学前端 为什么跨考 已挂,面试体验不好,感觉是kpi面#哔哩哔哩实习#

  • 全程 35 min, 感觉面试官问的有些难度,我答得一般般,没想到竟然过了,已经 oc,感谢面试官~ 1. 自我介绍 2. TCP 和 UDP 的区别? 3. http1.1 和 http2.0 的区别? 4. 讲讲 https 的握手过程? 5. 强缓存和协商缓存? 6. 302 是什么?403 是什么?401 是什么? 7. 哪些地方需要用到缓存? 8. CPU 的调度算法? 9. 链表的结构

  • 1. 一组木板中,最大正方形边长 2. 荷塘里面,跳过荷叶,最大数字和 #秋招##2023校招#

  • 1.自我介绍 2.抽象类和普通类的区别 3.抽象类和接口区别 4.讲一些Set、List、Map 5.介绍项目 6.sql统计最热销的三个菜品 7.为什么用redis,redis为什么快 8.弹幕功能设计测试用例 9.排序数组两数之和(双指针AC) 10.面试官说他们部门功能测试偏多一些,建议我投开发🤣 11.如果让你做功能测试愿意吗? 整体面试小姐姐人很好,建议我投开发🤣,他们部门是偏功能测

  • #运营人求职交流聚集地# 当时还没疫情,直接去B站总部线下面的,顺便感受了一波公司氛围hhh 整体感觉真的很年轻化,有种人还在学校的错觉~而且是真的着装自由(dddd) 1.挑选了几段经历简单询问,感觉目的是探索职业规划。 2.在xx实习期间,mentor如何评价你? 3.挑选了一个项目,询问细节。 4.你B站会员是几级?除B站外,你还使用哪些平台?对比xx app的最大区别? 5.你使用各个ap

  • 没有自我介绍 上来直接两道代码题 1. 无重复最长子串 2. 打家劫舍 3. v-model 4. Vue生命周期 created 5. mounted 获取dom元素 6. 304状态码 具体怎么工作的(不会呜呜呜) 7. cookie 8. 基本数据类型 9. ES6新特性 10. var let const 区别 攒人品…求过呜呜呜呜😫

  • 自我介绍 逮着简历问 vue的diff算法和数据劫持,讲一讲你的理解 项目中的分片上传,如何实现的? 如果用户上传两个一样的文件,一个文件上传上半段,一个文件上传下半段,如何拼起来优化,而不是直接返回上传失败? 瀑布流 如何实现的长列表? 你是如何判断谁是底部元素的? 如果一次只请求10条数据,前端只展示了5条数据,如何判断底部元素的交叉状态?(被问蒙了) 响应式怎么做的? 如何通过bootstr