如何下载B站(bilibili)视频手动法
虽然
目前存在着第三方软件来下载到B站视频,但其
视频质量却
不一定是B站的
原始视频源,同时在
2018年以前,可以通过
电脑端网页版中获取
真实URL链接(也有很多人不知道这种方法),以此下载到视频,但是之后,官方更新了
URL策略(URL防盗链),导致以前的方法无法下载到URL,
本文的出发点即是如何手动方法下载到B站视频!
1.下载视频
- 01
我们使用「 Chrome浏览器」!并且打开你想要下载B站视频页面,
- 02
紧接着在当前网页 「右键点击检测」(或者按 「F12键」),之后我们便会看到一个窗口 (Devtools)
- 03
Devtools集合了很多功能,在窗口顶部上我们可以看到有 Elements、 Console、 Sources、 Network等等。 现在,我们只需要 使用Network来查看通过网络来请求来的资源的详细信息,而这些信息的内容包括了 视频的URL地址请求,而这正是我们所需要的东西!
- 04
点击 Network,之后点击播放视频,快速拉动进度条,以此获取网络来请求来的资源的详细信息。 接着在 Filter里去筛选信息,这里视频一般都是 flv或 mp4。我们可以看到,那些请求资源正是 视频URL地址! (开头带有数字的)。这时候直接复制打开, 是无法下载的,为此我们得用另一种方法来下载! 如(这里数字是编造的,请以你所发现的为例):640000-1-80.flv 我们可以看到 640000-1这个 “-1”表示 视频分割顺序, 一般视频会被分割成多个,但有些视频只有1个,如: 640000-1-80.flv 640000-2-80.flv 640000-3-80.flv ... 然后,“-”接着“80”,这个数字与视频清晰度有关,该值越大越清晰! 目前已知的: 80为超清1080p 64为高清720p 32为清晰480p 15为流畅360p
- 05
点击左上角的小箭头,将鼠标移动到视频标题处并点击,然后选择在h1标签下面选择div
- 06
接着在右边 右键点击Edit as HTML。 输入 <a href="在network下获取到的URL覆盖到这段文字" target="_blank">点击下载视频</a>
- 07
这里的URL就是我们刚才在network下找到的请求,直接把它copy下来就可以了,然后把它复制到<a href="复制的内容">下即可,完成后回车,接着点击该链接即可下载!
2.下载弹幕文件xml
- 01
之前我们在 network下找到的请求视频,我们可以看到 一堆数字-数字-数字.flv, 我们只截取最前面的数字(“-”之后的不要),我们把它copy下来,然后新建一个标签页(crtl+T), 输入https://comment.bilibili.com/复制的数字.xml 之后页面加载完毕后crtl+S进行保存下载弹幕文件即可! 如果还是不知道是哪个数字的话,可以看下图!这里不方便所以加黑马赛克去掉
3.利用代码
- 01
在书签内修改并置入代码,代码如下: javascript: var url = prompt("请在chrome下network获取视频URL后再粘贴进来"); if (url == "") { alert("Null!"); } else { alert("Url:," + url); patt = /[?!acgvideo.com/upgcxcode/]\d{4,9}/; id = url.match(patt)[0].split("/")[1]; if (document.getElementById("download") != null) { document.getElementById("download").remove(); } x = document.getElementsByTagName("h1")[0]; x.nextElementSibling.innerHTML += "<div style='float: left; clear: left;'id='download'><a style='font-size: 15px;' href=" + url + " download='download'>" + '下载视频' +"</a><a style='font-size: 15px;' href='https://comment.bilibili.com/" + id + ".xml' download='" + id + "' target='_blank'> 弹幕下载xml </a></br></div>"; } ;void (0);
- 02
之后,只要在 DevTools中 network下,获取并复制 URL即可,接着直接 点击该 书签,输入URL地址即可!