如何下载Bilibili视频列表?
新版CR TubeGet已内置支持,此教程已失效。
youtube-dl对于bilibili列表下载不支持。
实际上,bilibili普通视频与播放列表,其url在入口处没有分别,因此以url做区分,不行。
但若有教程类列表,其中视频后以?p=1表示,比如:
这大概是最好的C#入门教程了吧
https://www.bilibili.com/video/av2357992/?p=1
根据此特征,设计其内置列表表达式,得列表如:
但youtube-dl对此解析取cid有问题,我已做反馈,至此时尚无回音。
BiliBili列表下载同一个视频问题分析
2019.05.31:好吧,我也等不及了,自己编译youtube-dl_cr.exe,这个是为bilibili及其它中国网站而特别编译的。
1、下载crtubeget.rar,解压
2、下载ytdl_cr.exe,丢入crtubeget目录中,即可实现bilibili的列表下载
注:v0.9.1.9版,遇到此种情况,自动下载此组件
它的文件描述是:YouTube video downloader for CR TubeGet
然后再下载列表视频,如下图:
下载结果,是想要的:
还有一类是记录片。
比如:
深入大脑:第1集_纪录片_bilibili_哔哩哔哩
https://www.bilibili.com/bangumi/play/ep275928
它将被解析为Watch列表。而另种形式,直接解析为播放列表:
深入大脑 _ 纪录片 _ bilibili _ 哔哩哔哩弹幕视频网
https://www.bilibili.com/bangumi/media/md28220253
解析如下:
第三种就是搜索结果。
今天突然对清江画廊有点兴趣,就搜索一把:
https://search.bilibili.com/all?keyword=清江画廊
以此写解析式,得结果如下:
非常不错。一键下载,可以慢慢欣赏了~
第四就是up主上传的视频:
还有一种情况是,视频是分段的,也以列表处理。
注:此问题,在v0.9.2.0中已解决,分片视频被完全下载为单一文件。
比如:https://www.bilibili.com/video/av17558564
以youtube-dl下之,其显示如下:
CR TubeGet亦对它做列表处理。
因为分段视频地址与普通视频地址格式一样,判断是否列表需要请求其页面源码解析,耗时一点,因此默认没有设置,而以配置文件开关实现。
使用此功能,需要在配置文件中加个开关:
请定位到%appdata%\CRTubeGet文件夹,在CRTubeGet.ini之[Download]节中,加入如下字段:
[Download]
ParseBiliBiliPlaylist=True
之后启动程序。
那么,在解析上述url时,它将以列表解析:
OK,它将被完全下载。
不完美的是,它显示的视频时间,是整个视频的,目前没法拿到视频片段时间。