2019 年 5 月

知乎上有些不错的视频。
好吧,我知道,有爱的你,你是想给它Down下来……
终于,CR TubeGet,加上了对它的支持。

首先找到有视频的回复,复制其链接。
还是直上图吧:
copy.pngcopy2.png

之后,就是解析、下载:
analyse.png
download.png
downloaded.png

如此,即可完成对它的下载

国内网络问题,YouTube下载过程中容易失败,返回信息为:

...
[download]  57.0% of ~41.62MiB at 578.57KiB/s ETA 01:28 
[download]  57.0% of ~41.62MiB at 694.36KiB/s ETA 01:27 
ERROR: unable to download video data: <urlopen error EOF occurred in violation of protocol (_ssl.c:600)>

若有此类错误,则可以重试下载。

程序中,碰到此类情况,默认重试10次。一般情况下,就能解决问题了,但有些10次不够,怎么办?
改配置文件。
请定位到%appdata%\CRTubeGet文件夹,在CRTubeGet.ini之[Download]节中,加入如下字段:

[Download]
MaxRetryTimes=100

之后启动程序,则下载过程失败后,可重复100次。

如何看到它起了作用?
还是%appdata%\RTubeGet文件夹下,日志文件,CRTubeGet.log中,看有没有如下字串:

2019-05-13 20:26:05 Retry download times: 0, url: https://www.youtube.com/watch?v=eY1vR-g6R0c
2019-05-13 20:26:21 Retry download times: 1, url: https://www.youtube.com/watch?v=eY1vR-g6R0c
2019-05-13 20:26:45 Retry download times: 2, url: https://www.youtube.com/watch?v=eY1vR-g6R0c

如有这个的,且download times: 后面数字一直递增,即为它在工作。
直到达到指定重试次数,才显示以失败。

OK,若您碰到如此情况,这样改下再做下载吧

B站视频默认为flv格式。若下载为其它设备可用,则需要转码。
这里以转换为mp4为例
简单方案:下载后,以格式工厂等视频转换工具,转成mp4。

CR TubeGet,支持直接转为mp4格式。经验证,转换速度不够快。
首完,参数设置中,设置输出为mp4:
v-mp4.png

那么,可以直接粘贴下载Bilibili视频了:
downlad&convert.png
可见已完成列表,已为mp4格式:
converted.png
查看电脑中视频:
mp4files.png

OK。
不止mp4,参数设置中所有格式都可支持。
但验证,转换速度不快,特别是分辨率高且转换为webm时,更慢。
那就科喝杯咖啡,慢慢等一会吧~:b
webm.png
webm2.png

Aria2是一款免费开源跨平台且不限速的多线程下载神器。
CR TubeGet调用youtube-dl进行下载,而youtube-dl亦支持aria2下载。因此,在v0.9.0.8中,CR TubeGet加入对Aria2下载器支持。
为通用性考虑,CR TubeGet程序包中未打入aria2程序,有需要的朋友请去其官方网站下载,之后丢入CR TubeGet文件夹中即可。
注:aria2组件对分段视频不能支持

其链接为:https://aria2.github.io/,当前最新版本为1.34.0。
下载for windows版的:
a_zip.png
从zip包中,解出来aria2c.exe,丢在CR TubeGet目录下:
aria2_1.png
CR TubeGet判断aria2c.exe存在会通知youtube-dl调用aria2c进行下载。
OK,就是这么简单。
这里也放了一份:点击下载

那么,其效果如何呢?
我以百度香港云服务器测试,与不使用aria2情况下做对比,截图如下:
正常下载:
2019-05-16_110418.png
aria2下载:
aria2.png
显而易见,提速不少,且下载速度稳定。
请注意,使用aria2下载,其进度显示字串,与正常下载,稍有差异。

而在使用过程中发现,其也偶尔报错:
jn.png
未知原因。
后来看日志,此错误为已下载的文件被占用所致。

因为它由youtube-dl调用,程序中的下载暂停与继续,是通过冻结youtube-dl来实现。因此在任务暂停时候,aria2仍然在下载,没有办法冻结其对应的aria2下载器。这里是个稍显欠缺的使用体验。

另:并非所有视频格式都支持aria2下载。若视频源为m3u8分片视频,则它不会被支持。

CR TubeGet支持主流搜索引擎之视频结果下载。
当前支持的搜索引擎为:google、bing、baidu、yahoo、yandex、ask

以google为例,比如搜索[月季花],并选择视频:
2019-05-05_164349.png

并Copy其URL地址入CR TubeGet,可得视频列表:
2019-05-05_164358.png

点击下载,即可下载支持的视频结果:
2019-05-05_164502.png

是不是很简单呢?
其它搜索引擎视频搜索结果亦如此,请试试吧。
ask.png
bd.png