Facebook 也是「隐私设置最容易被误当成下载器故障」的平台:你的好友能看到的视频,并不等于匿名访客能看到。
该复制哪种 Facebook 链接
能解析的是帖子本身的地址;信息流、个人主页和搜索结果不行。Reel 与 Watch 页面同样可用,但用的是各自的地址形态。
- facebook.com/watch/?v={id} —— Watch 页面
- facebook.com/reel/{id} —— Reel
- facebook.com/{user}/videos/{id} —— 主页或个人页上的视频
可见性决定结果
Facebook 在提供页面之前就已经套用了受众设置,所以设为「朋友可见」「小组可见」或「仅自己」的帖子,对解析服务来说根本不存在。这是「明明自己能播、粘贴进来却什么都没有」最常见的原因。
- 公开视频可以解析;仅朋友可见与仅自己可见的不行
- 封闭小组的帖子需要组内身份,无法读取
- 已被删除或因授权被静音的视频同样返回空结果
为什么有些 Facebook 视频是无声的
Facebook 有时把画面和声音分开提供,有时给一个完整文件。分开的时候,规则和其它平台一致:纯视频轨道不含音频,需要把两条合并起来。
- 结果面板出现两个列表,就意味着要做两次选择
- 合并需要支持 File System Access API 的桌面浏览器
- 源站静音的音轨依然是静音 —— 这里没有能力把 Facebook 扣下的声音补回来
速查表
这些表格全站共用,所以你在别处看到的数字,在这里看到的是同一个。
| 地址形状 | 能否解析 | 说明 |
|---|---|---|
| instagram.com/reel/{id} | 是 | Reel 或帖子只承载一个媒体,个人主页没有。 |
| facebook.com/watch/?v={id} | 是 | Watch 视频、Reel 与主页视频都能解析;但受众设置仍然有一票否决权。 |
| reddit.com/r/{sub}/comments/{id}/… | 是 | 承载媒体的是帖子下方的永久链接,而 v.redd.it 把它当作两条流送出。 |
| pinterest.com/pin/{id} | 是 | 一个 Pin 可能指向视频、指向图片,也可能只是跳转到一个本身没有媒体的链接。 |
| threads.com/@{user}/post/{id} | 是 | 一条帖子一个视频。当前域名与较早的域名都可用。 |
| xiaohongshu.com/explore/{id} | 是 | 笔记地址可以解析,App 分享出来的短链会跳转到它。 |
| douyin.com/video/{id} | 是 | 分享文案里带有链接,整段粘贴即可。 |
| youtube.com/watch?v={id} | 是 | watch 地址可以解析;频道页和搜索结果背后没有唯一的一条视频。 |
| tiktok.com/@{user}/video/{id} | 是 | 视频地址可以解析,个人主页不行。 |
| bilibili.com/video/BV… | 是 | BV 地址可以解析,个人空间页不行。 |
| x.com/{user}/status/{id} | 是 | status 地址可以解析,个人主页时间线不行。 |
| /{user} · /profile · /search | 否 | 个人主页、画板、频道、搜索结果与首页信息流背后都没有单独的一条媒体。 |
哪种链接最稳妥
- facebook.com/watch/?v={id}
- facebook.com/reel/{id}
以上是最稳妥的链接形状。其它公网 http(s) 链接同样可以粘贴 —— 能不能解析取决于源站,所以个人主页、搜索页与私密帖只会返回空结果。
背景与边界情况
为什么看起来公开的帖子仍然返回空
你看到的内容是被你的会话过滤过的。一条公开但出现在受限小组里的帖子,或者一条后来被删除、被静音的帖子,可以在你这里正常播放,却依然读不到。
- 小组帖继承的是小组的可见性,而不是帖子自己的
- 被删除的视频可能还在你的屏幕上缓存着,尽管它早已解析不了
- 因授权被静音的视频对所有人都是无声的,包括解析服务
Reel 与 Watch 视频的表现并不一样
Facebook 发布视频的方式不止一种,它们给出的结果面板也不相同。把结果当成「平台的属性」而不是「这条链接的属性」,正是导致无声文件的常见原因。
- Watch 页面常常返回一个完整文件
- Reel 更可能返回两条需要合并的轨道
- 合并需要桌面浏览器,所以手机上只能逐条保存