批量下载b站任意视频的做法
以前整过下面这篇:

这次来简单扩展一下做法,如果我想下的是任意多个视频怎么办?比如有时我找了感兴趣的几个或者十几个视频,这没什么规律,但想一次操作就批量下下来,一个个点有点懒…x
本文介绍的是Windows下少量的一个做法(也有点标题党x)其它的话作为参考道理思路差不多。
这个思路是,我们在上面这篇专栏基础上想一下,其实给you-get或annie下载的命令行一般逻辑是:
you-get xxx url
annie xxx url
这里url就是我们想下载视频的网址。这俩工具其它的参数简单理解也就是在这xxx上改东西。
那好说,我们只要改变这个url,一直替换成我们想下的视频链接不就行了吗?相当于让you-get或annie像个“人工智能”,知道我们要下什么似的,走完一个马上自动下一个,当然不用我们再一个个去复制黏贴回车下载。
但还是要手动做一点事的,因为输入的这些url实在是任意。
我们在下面这个网址给浏览器安装一个插件:(怎么安装?看①)
① https://www.extfans.com/productivity/efkmnflmpgiklkehhoeiibnmdfffmmjk/
https://www.crx4chrome.com/extensions/efkmnflmpgiklkehhoeiibnmdfffmmjk/
(想说下之前https://crxdl.com/ 还能用,现在500了不知道之后会不会修复…)
装好之后打开几个我们想下的视频,点一下这个Copy URLs插件。比如:

点开即是差不多这个样子。
这里的英文,restore default settings是恢复为最开始的默认设置(搞乱了想重置点这个),copy to clipboard是复制倒剪贴板,setting就是设置,format是格式(以什么格式显示这些url文本,有“只url”、“网页标题+url”、HTML、CSV和JSON格式,还可选custom来自定义格式)
设置里面,选择复制所有链接,还是只以http开头的所有链接。export tabs from表示从哪里输出标签页(是从全部窗口,还是从当前的活跃窗口)。
注意标签和窗口的区别。来看看下面哪个是标签,哪个是窗口,哪个是活跃窗口?

明白了。现在我们单击copy to clipboard,然后粘贴到一个新建记事本:

保存,例如放在桌面吧,重命名就自己随意了。接着在cmd运行这么一串命令:
for /f %i in (C:\Users\ASUS\Desktop\新建了个文本文档.txt) do annie %i
这个txt文本的路径按你自己实际的看着改,改好后回车,就搞定了~
用you-get就把annie改成you-get
还可以把这行命令保存为bat文件。不过得这么写:
for /f %%i in (C:\Users\ASUS\Desktop\文档名字最好还是数字或英文.txt) do annie %%i
也是粘贴新建记事本里保存,后缀改为.bat或.cmd就行啦~
后话:我在想onetab插件有这个功能就好了,它好像只有“标题+url”的形式……也希望这个Copy URLs能有直接导出为txt的功能(当然可能其它插件会有,我找了几个类似的感觉还是这个最好,就懒得找了x
另外b站全面4k后,you-get有段日子没更新了(目前2020.07.09仍无新版本)。不过有人在那时就提交了commit,可以照着下面链接改一下you-get目录下的bilibili.py这个文件:(我这里是\Python\Python37-32\Lib\site-packages\you_get\extractors\bilibili.py,看你们是放在哪里了)
https://github.com/soimort/you-get/blame/develop/src/you_get/extractors/bilibili.py
改好了原地保存就可以啦~也可以看到extractors里也有一些近期几个月来可以自行修改的commit:https://github.com/soimort/you-get/commits/develop/src/you_get/extractors
感谢你观看到这里。