免费试用
← 返回博客

视频在放,右侧「视频媒体库」却一直是空的:列表靠听请求填出来

工具装好了,视频明明在播,右侧「视频媒体库」却一条都没有;换页面、重开软件、换台电脑,都一样。列表是靠听请求填出来的,不是靠翻文件找出来的——播放器没有真的取流,工具这一侧再正常也听不到。下面把几种「听不到」分开。

工具检测不到视频,是因为它靠听请求而不是找文件

工具发现视频的方式,是守在页面的网络出口,播放器每次去取数据都被它记下来,列表就是这些记录的汇总。 它并不把页面扫一遍去找视频文件——流媒体页面上压根没有那样一个文件。列表空着,等于没听到动静,不是没翻到东西。

要让列表里出现条目,下面两件事得同时成立。

  • 播放器真的开始取流:停在封面、鼠标扫过时动一下、自动播放被拦下,都不算。
  • 请求从工具能听到的位置发出:播放器嵌在另一层框架里,就听不到。

任意一条不成立,列表都是空的。页面上为什么没有「一个现成的视频文件」,机制在流媒体视频为什么下载不了里拆过,这里接着讲「听」。

播放器还没真的开始取流,列表就一直是空的

最多见的一种空,其实什么都没坏:画面在动,但播放器并没有真的去取数据。 封面轮播、悬停预览、被静音后自动播起来的小窗,都给出「它正在播」的错觉。

  • 悬停预览与封面轮播:鼠标扫过去动起来的那几秒,多是图片轮换或极短的预览片段。
  • 自动播放被浏览器拦下:页面在你点击过之前,带声音的自动播放一般会被拒绝,MDN 的自动播放指南写得很细;被拒之后不少站点不会重试,画面停在原地等一个点击。
  • 播放器还没被创建:信息流页面要等你滚到位置才把播放器建出来,在那之前没有可取流对象。
  • 前面隔着一道门:登录、年龄确认没走完,取流的请求不会发出。

这几条对应同一个动作:让视频真的播一次,跑满五秒以上再看列表。它比反复刷新管用——刷新并不会产生取流动作。

播放器换了画法之后,工具就跟不上了

画面在播、取流也真的发生了,列表还可能是空的——工具听到的东西不再是自己认得的形态。 现在的网页播放器很少把现成文件摆在页面上,而是用脚本在浏览器内存里把切片拼好再送进画面,浏览器为此专门定义了一套接口,W3C 的媒体源扩展规范开头写明了用途。

  • 播放器嵌在另一层框架里:整块播放区由另一个地址提供,取流从那一层发出。
  • 切片地址不带常规后缀:地址末尾没有常见的媒体标记,靠后缀判断的规则会跳过。
  • 请求先被页面自己的缓存层接走:页面用一套离线机制把数据接在手里再交给播放器,网络层就安静了。

这几种不是故障,而是「听请求」这条路的边界。同一套工具在别的站上照常工作,不能反过来说明这个站有问题。

一个二分法自查:播放时到底有没有媒体请求

判断责任在页面侧还是工具侧,靠一件事就能分清:播放那几秒里,有没有媒体请求发出去。 按 F12 打开开发者工具,切到网络面板,在筛选里选媒体类,盯住播放那几秒新冒出来的条目,点一次播放、跑满五秒。

  • 一条都没有:播放器没有取流,问题在页面这一侧,回到前面两节看是没真播还是被挡住。
  • 有请求,列表却仍然空着:取流发生了而工具没听上,问题在工具这一侧,这时才轮到换方式。

有一点要说清楚:这些地址不用、也不该照着去用。切片式的内容拿到一条也拼不出可播放的文件。另外要分清对象——这里查的是根本没开始,进度条动起来之后的慢和卡尾是另一类问题,顺序在下载太慢怎么提速里。

列表为空时,把想留的内容保存到本地

探测要等请求,录制不看请求、认的是画面——只要画面真的在动,上面任何一种「听不到」都拦不住它。 用 VidBrowser 把内容落到本地是四步:

第 1 步:下载并安装 VidBrowser

VidBrowser 是一款桌面视频浏览器,支持 Windows 和 Mac,内置下载与录制两大功能,不用再装扩展替它听请求,几分钟即可完成安装。

第 2 步:在 VidBrowser 里打开目标页面,让视频真的播起来

用你自己的账号登录、正常访问,然后点一次播放、跑满几秒。上面那个二分法在这一步就能复现。

第 3 步:先看右侧「视频媒体库」有没有条目

有条目,就先选分辨率,再点那条橙色「下载」按钮保存为 MP4。

第 4 步:一条都没有,改用录制

鼠标移到画面上会叠加出录制控件:选好速度(1x 实时、2x 或 4x 倍速更快录完),点「全录」录完整段,左侧的录制按钮可随时开始或暂停。受保护内容、实时直播,以及上面那些听不到取流的情形,都在这一步。录完的文件在左侧的下载历史里找回,不受账号状态影响。

这几类本来就没有可下载的源,别再等条目了

每一步都走过、列表仍然是空的,通常已不属于故障,而是本来就没有可下载的源。 空列表就是正确的结果。

  • 切片本身是加密的:请求听得见,拼出来的文件却放不了,这类内容靠录制留下来。
  • 实时直播:从第一秒起就是边生成边送,不存在「一个完整的文件」,听到的会是连续数据流。
  • 画面是脚本画出来的:整段内容由脚本一帧帧绘到画布上,页面上不存在媒体数据,连取流都没有。

不依赖「有没有文件」的方式就是录制。列表为空不等于做不成,只是入口换了。

常见问题

视频正常播放着,工具里为什么还是一条都没有?

因为探测听的是取流请求,不是画面有没有在动——悬停预览、被拦下的自动播放、嵌在另一层框架里的播放器,都会让画面在动而请求听不到。先点一次播放、跑满几秒。

同一个站昨天还能检测到,今天却是空的,中间变了什么?

多半是页面换了播放器的做法。站点升级播放器、把播放地址换一种写法之后,旧规则可能当天失效,这和工具有没有坏是两件事。顺序在下载器失灵怎么办里。

开发者工具里看到的那几个地址,能直接拿去下载吗?

多数情况下没用,也不建议这么用。切片式的内容是几十上百个小片段拼出来的,单独一条并不成片。想留一份,录制这条路更直接。

更多博客