Bilibili-Evolved icon indicating copy to clipboard operation
Bilibili-Evolved copied to clipboard

视频下载链接为地区cdn时无法下载

Open CloudyEagle opened this issue 2 years ago • 7 comments

对应功能

下载视频

问题描述

若UP体量偏小,所给链接时upos开头的概率较大,可下载; 若UP体量较大,或许在B站有版权保护,给upos开头的概率偏小, 反复点击有概率能给到upos链接,但地方cdn链接比较多,地方cdn链接无法下载; 且HEVC和AVC都存在会这样,希望能尝试是否存在云服务器的链接,并优先给出云服务器的下载地址。 示例视频—— https://www.bilibili.com/video/av849481134 https://www.bilibili.com/video/av468011137

脚本版本

v2.1.7-preview

浏览器版本

Edge 100.0.1185.29 (Official build) (64-bit)

播放器版本

2.76.9

播放策略

HEVC

错误信息

暂无吧

附加截图

Snipaste_2022-04-09_00-37-20 Snipaste_2022-04-09_00-38-08 Snipaste_2022-04-09_00-43-28 Snipaste_2022-04-09_00-44-13 Snipaste_2022-04-09_01-02-14 Snipaste_2022-04-09_01-03-07

CloudyEagle avatar Apr 08 '22 17:04 CloudyEagle

这么神奇, 我在这些视频里都是 upos 的

the1812 avatar Apr 09 '22 07:04 the1812

我发现我用手上电信USB上网卡可以是upos的,用移动的校园网时基本是地方的cdn了; 应该是跟网络环境有一定关联,如果能打破网络运营商的cdn限制也许就可以了。

CloudyEagle avatar Apr 11 '22 01:04 CloudyEagle

这么神奇, 我在这些视频里都是 upos 的

编辑:https://greasyfork.org/zh-CN/scripts/415714-make-bilibili-grate-again 这个脚本实现了替换垃圾cdn的功能,可以参考

如果可以加入upos测速和替换,就能能解决这个问题并提高速度,可用的cdn可以参考BiliRoaming/app/src/main/res/values/strings.xml#L96-L114BiliRoaming/app/src/main/res/values/strings.xml#L5-L23

如果能顺便把播放的也替换就好了,这是官方测速工具 测速指定视频 测速最近观看,可以看到cdn是随机分配的,我看到的有upos szbdyd cn-*-dx-v 三种cdn,szbdyd 延迟大速度慢老是卡加载,大部分情况不如upos QQ截图20220411111127 QQ截图20220411110812

sunfkny avatar Apr 11 '22 03:04 sunfkny

据我发现[下载视频]弹出的链接为upos的cdn时,是肯定能下载,且网络在电信运营商下是upos的概率最高; 在移动运营商的网络下链接为upos的概率极小,几乎没有;当然用脚本筛选cdn后,测速界面连上也是超时。 估计大部分upos的服务器走的是电信运营商的网络,且大部分非upos开头的是非P2P cdn,所以无法缓存。

CloudyEagle avatar Apr 11 '22 04:04 CloudyEagle

已用脚本https://greasyfork.org/scripts/415714 解决 我的测试链接

移动校园宽带—路由器—网线

Snipaste_2022-04-11_14-14-51 ————————————————

电信4G SIM-USB2.0网卡

Snipaste_2022-04-11_14-17-38 ————————————————

若下载视频的功能能实装脚本里的大致策略,下载视频前进行链接地址检测,

并尝试跳转到支持P2P服务器的链接上,就可以避免我这种无法下载的问题。

但港澳台的upos服务器链接与大陆地区不太一样,我有解析到一个,下图仅供参考。 Snipaste_2022-04-11_16-41-39

CloudyEagle avatar Apr 11 '22 06:04 CloudyEagle

感觉还是跟网络运营商有点关系吧 我用移动的宽带下载链接时常是cn开头中间有cmcc的,且无法下载; 并且能给出能下载的链接为upos开头的概率极低,甚至没有; 我也有尝试用脚本,近期好像不干预你的下载链接了,我还怀疑是B站的防盗取嘞。

下面四张图是我用移动网络连续点击后出来的链接

Snipaste_2022-04-19_00-34-53 Snipaste_2022-04-19_00-36-06 Snipaste_2022-04-19_00-37-10 Snipaste_2022-04-19_00-37-51

下面四张图我是用电信网络连续点击后出来的链接

Snipaste_2022-04-19_00-43-15 Snipaste_2022-04-19_00-44-13 Snipaste_2022-04-19_00-45-17 Snipaste_2022-04-19_00-46-20

均可以下载

————————————————————

如果下载时检测到不适合下载的链接建议重组链接至可下载的upos吧, 参考脚本里的一块功能,或者独立发布一个重定向下载无效链接的模块可以吗

CloudyEagle avatar Apr 18 '22 17:04 CloudyEagle

B站的视频 VOD CDN 有如下类别,大部分可以简单相互替换 Host。 注意:区分于直播,参见 B站视频云

  • Mirror 型:形似 upos-sz-mirror.*\.bilivideo\.com (akamai的除外), 此类 CDN 依托大厂 CDN 服务,最稳定,速度也相对最快。部分有 UA 限制, Refer 限制。部分非全地域可用。已知的 Mirror 型 CDN 如下:
    • upos-sz-mirrorali.bilivideo.com 阿里云 CDN
    • upos-sz-mirroralib.bilivideo.com 阿里云 CDN
    • upos-sz-mirroralio1.bilivideo.com 阿里云 CDN
    • upos-sz-mirrorcos.bilivideo.com 腾讯云 CDN
    • upos-sz-mirrorcosb.bilivideo.com 腾讯云 CDN,VOD 加速类型
    • upos-sz-mirrorcoso1.bilivideo.com 腾讯云 CDN
    • upos-sz-mirrorhw.bilivideo.com 华为云 CDN,融合 CDN
    • upos-sz-mirrorhwb.bilivideo.com 华为云 CDN,融合 CDN
    • upos-sz-mirrorhwo1.bilivideo.com 华为云 CDN,融合 CDN
    • upos-sz-mirror08c.bilivideo.com 华为云 CDN,融合 CDN
    • upos-sz-mirror08h.bilivideo.com 华为云 CDN,融合 CDN
    • upos-sz-mirror08ct.bilivideo.com 华为云 CDN,融合 CDN
    • upos-hz-mirrorakam.akamaized.net Akamai CDN,海外,有参数校验,其他类型的 CDN 不能直接替换为此 Host。但反过来可以。
    • upos-sz-mirroraliov.bilivideo.com 阿里云 CDN,海外
    • upos-sz-mirrorcosov.bilivideo.com 腾讯云 CDN,海外
    • upos-sz-mirrorhwov.bilivideo.com 华为云 CDN,海外
    • upos-sz-mirroralibstar1.bilivideo.com 阿里云 CDN,海外(东南亚),其他类型的 CDN 应该不能替换为此 Host,但反过来可以。
    • upos-sz-mirrorcosbstar1.bilivideo.com 腾讯云 CDN,海外(东南亚),其他类型的 CDN 应该不能替换为此 Host,但反过来可以。
    • upos-sz-mirrorhwbstar1.bilivideo.com 华为云 CDN,海外(东南亚),其他类型的 CDN 应该不能替换为此 Host,但反过来可以。
    • upos-bstar1-mirrorakam.akamaized.net Akamai CDN,海外(东南亚),有参数校验,其他类型的 CDN 不能直接替换为此 Host。但反过来可以。
  • MCDN 型:形似.*\.mcdn\.bilivideo\.(com|cn),大厂产品?类似 PCDN?现在见的较少,质量相对垃圾。此类 CDN 不能简单替换 Authority 为 Mirror 型的 CDN
  • PCDN 型:依托网心云等 PCDN 服务提供商,一方面通过 playurl 内的 bpcdn 参数返回 IP:Port 类型的 PCDN,配合客户端间 P2P 上传、下载使用,另一方面也有直接返回形似 .*\.szbdyd\.com 的 PCDN。此类 CDN 以南方地域,如广东移动等运营商的网络环境下分配最多。北方,大概是不同地方对 PCDN 容忍度不一样吧,如北京联通运营商,倒是没见过这种 playurl。纯 IPv6 环境基本不会分配此类 CDN,大抵是因为 PCDN 对 IPv6 支持不好。此类 CDN 质量最差,极不稳定,速度也差,但是流量便宜,为了节约带宽成本用得比较多,尤其是城镇、乡村地区。
  • BCache 型:形似 cn-.*\.bilivideo\.(com|cn)。如 cn-nmghhht-cu-08-01.bilivideo.com, nmghhht 就是内蒙古呼和浩特,cu 就是联通。此类为B站在各地自建的 CDN,为了节约大厂 CDN 费用吧,各个地域各个运营商都有分布,网络质量比 PCDN,MCDN 高,但相比 Mirror 型也不咋样。最近一年北京联通网络环境下观察到分配此类 CDN 非常多。此类 CDN 对 IPv6 支持比较差。
  • 特殊
    • (upos|proxy).*-tf-.*\.bilivideo\.com 。免流用的,但是替换也不影响免流。
    • upos-sz-upcdn.*\.bilivideo\.com,不怎么见到,推测是上传视频没过审核前的缓存或上传视频用的 CDN.
    • http://[IP]:[Port], 哔哩哔哩东南亚特有的 PCDN (也不能叫 PCDN 吧, 毕竟还是一些小主机商的 IP, 和国内不太一样), 也是省流量费的. 不能简单替换 Authority.

注:废弃的 Mirror CDN

  • upos-sz-mirrorcoso2.bilivideo.com ! 似乎已被废弃,没解析了 | 腾讯云 CDN,VOD 加速类型
  • upos-sz-mirrorbos.bilivideo.com !虽然有解析,但实际不可用 | 百度云 CDN
  • upos-sz-mirrorwcs*.bilivideo.com !似乎已被废弃,没解析了 | 网宿 CDN
  • upos-sz-mirrorks*.bilivideo.com !似乎已被废弃,没解析了 | 金山云 CDN
  • upos-sz-mirrorkodo*.bilivideo.com !似乎已被废弃,没解析了 | 七牛云 CDN(实际基于阿里云 CDN)

注: 东南亚的 CDN, 部分配置了区域限制

Last Updated: 2023/9/9

cxw620 avatar Apr 12 '23 07:04 cxw620