Bilibili_video_download icon indicating copy to clipboard operation
Bilibili_video_download copied to clipboard

有人知道怎么请求出1080p的mp4地址吗?

Open zhengfan2014 opened this issue 4 years ago • 15 comments

我发现在b站api加上type=mp4可以得到mp4地址,但是mp4地址是320p的 https://api.bilibili.com/x/player/playurl?cid=19937720&bvid=BV1Ex411q7oY&qn=80&type=mp4 {"code":0,"message":"0","ttl":1,"data":{"from":"local","result":"suee","message":"","quality":16,"format":"mp4","timelength":3602337,"accept_format":"mp4","accept_description":["流畅 360P"],"accept_quality":[16],"video_codecid":7,"seek_param":"start","seek_type":"second","durl":[{"order":1,"length":3602337,"size":226585547,"ahead":"","vhead":"","url":"http://upos-sz-mirrorks3.bilivideo.com/upgcxcode/20/77/19937720/19937720-1-16.mp4?e=ig8euxZM2rNcNbRB7WdVhoM17WUVhwdEto8g5X10ugNcXBlqNxHxNEVE5XREto8KqJZHUa6m5J0SqE85tZvEuENvNo8g2ENvNo8i8o859r1qXg8xNEVE5XREto8GuFGv2U7SuxI72X6fTr859r1qXg8gNEVE5XREto8z5JZC2X2gkX5L5F1eTX1jkXlsTXHeux_f2o859IB_\u0026uipk=5\u0026nbs=1\u0026deadline=1589088555\u0026gen=playurl\u0026os=ks3bv\u0026oi=3073510659\u0026trid=89ea61bef9704c09be39a61e98930052u\u0026platform=pc\u0026upsig=3d80a18fefc7ae94e3b62403045ec8fe\u0026uparams=e,uipk,nbs,deadline,gen,os,oi,trid,platform\u0026mid=25818910\u0026logo=80000000","backup_url":["http://upos-sz-mirrorks3c.bilivideo.com/upgcxcode/20/77/19937720/19937720-1-16.mp4?e=ig8euxZM2rNcNbRB7WdVhoM17WUVhwdEto8g5X10ugNcXBlqNxHxNEVE5XREto8KqJZHUa6m5J0SqE85tZvEuENvNo8g2ENvNo8i8o859r1qXg8xNEVE5XREto8GuFGv2U7SuxI72X6fTr859r1qXg8gNEVE5XREto8z5JZC2X2gkX5L5F1eTX1jkXlsTXHeux_f2o859IB_\u0026uipk=5\u0026nbs=1\u0026deadline=1589088555\u0026gen=playurl\u0026os=ks3cbv\u0026oi=3073510659\u0026trid=89ea61bef9704c09be39a61e98930052u\u0026platform=pc\u0026upsig=cc490d7dc3e5d2c14100fe08dcdc38c9\u0026uparams=e,uipk,nbs,deadline,gen,os,oi,trid,platform\u0026mid=25818910\u0026logo=40000000"]}]}} 有没有搞到1080p的方法,网上我看到个b站视频解析的可以弄到1080p没分段的mp4,不知道怎么搞的

zhengfan2014 avatar May 10 '20 03:05 zhengfan2014

需要用用户登录之后的session去请求才能获得1080p的,你可以参考我之前写的代码:https://github.com/CharlesPikachu/DecryptLogin/tree/master/examples/bilibiliDownloadUserVideos

CharlesPikachu avatar Jun 01 '20 14:06 CharlesPikachu

1080p的高清格式已经被我研究出来了, 请参考 http://bilibili.syyhc.com

dengmin avatar Jun 14 '20 02:06 dengmin

加上 &platform=html5&high_quality=1 就好啦 ○ω●

SigureMo avatar Aug 06 '20 05:08 SigureMo

加上&platform=html5&high_quality=1就好啦○ω●

怎么播放第二p?

helishou avatar Apr 14 '21 15:04 helishou

加上&platform=html5&high_quality=1就好啦○ω●

怎么播放第二p?

修改 cid 啊,各 p 的 cid 不一样的

例如 https://www.bilibili.com/video/BV1vZ4y1M7mQ?p=1 对应的就是 https://api.bilibili.com/x/player/playurl?cid=222190584&bvid=BV1vZ4y1M7mQ&platform=html5&high_quality=1https://www.bilibili.com/video/BV1vZ4y1M7mQ?p=2 则对应 https://api.bilibili.com/x/player/playurl?cid=222200470&bvid=BV1vZ4y1M7mQ&platform=html5&high_quality=1

SigureMo avatar Apr 14 '21 15:04 SigureMo

加上&platform=html5&high_quality=1就好啦○ω●

怎么播放第二p?

修改 cid 啊,各 p 的 cid 不一样的

例如 https://www.bilibili.com/video/BV1vZ4y1M7mQ?p=1 对应的就是 https://api.bilibili.com/x/player/playurl?cid=222190584&bvid=BV1vZ4y1M7mQ&platform=html5&high_quality=1 而 https://www.bilibili.com/video/BV1vZ4y1M7mQ?p=2 则对应 https://api.bilibili.com/x/player/playurl?cid=222200470&bvid=BV1vZ4y1M7mQ&platform=html5&high_quality=1

请问下这个地址我电脑访问就是1080p,手机访问就是360p,加了user agent也没用,这是什么原因

helishou avatar Apr 16 '21 12:04 helishou

@helishou

请问下这个地址我电脑访问就是1080p,手机访问就是360p,加了user agent也没用,这是什么原因

「这个地址」是指这个 API https://api.bilibili.com/x/player/playurl?cid=222200470&bvid=BV1vZ4y1M7mQ&platform=html5&high_quality=1,还是从 API 获得的结果 https://upos-sz-mirrorkodo.bilivideo.com/upgcxcode/70/04/222200470/222200470-1-208.mp4?e=ig8euxZM2rNcNbR1hWdVhwdlhWR1hwdVhoNvNC8BqJIzNbfq9rVEuxTEnE8L5F6VnEsSTx0vkX8fqJeYTj_lta53NCM=&uipk=5&nbs=1&deadline=1618585308&gen=playurl&os=kodobv&oi=2075769731&trid=9e75cb07d9904956bb5c946bd20e0c01T&platform=html5&upsig=c54e0082eeb262e96798ae69158d6ec2&uparams=e,uipk,nbs,deadline,gen,os,oi,trid,platform&mid=0&orderid=0,1&logo=80000000

在我这将 PC 请求的结果放在手机播放是 1080P 的

SigureMo avatar Apr 16 '21 13:04 SigureMo

api的地址。这不是直接返回的网页吗

helishou avatar Apr 18 '21 17:04 helishou

返回网页???你说这个?

https://api.bilibili.com/x/player/playurl?cid=222200470&bvid=BV1vZ4y1M7mQ&platform=html5&high_quality=1

这个返回的是 JSON 啊。

SigureMo avatar Apr 18 '21 17:04 SigureMo

~~喔喔我知道了 你说的是手机啊,确实返回网页……~~

喔,我刚刚是直接从 GitHub 点击过去的,因为 referer 是 GitHub 所以不能正常显示接口内容……直接浏览器输入地址不会出现是网页的情况

另外这是我刚刚从手机获取的视频链接https://upos-sz-mirrorkodo.bilivideo.com/upgcxcode/70/04/222200470/222200470-1-208.mp4?e=ig8euxZM2rNcNbR1hWdVhwdlhWR1hwdVhoNvNC8BqJIzNbfq9rVEuxTEnE8L5F6VnEsSTx0vkX8fqJeYTj_lta53NCM=&uipk=5&nbs=1&deadline=1618773412&gen=playurl&os=kodobv&oi=2075769244&trid=a9bd7b53ab7b46cf9f1135607c5bcb63T&platform=html5&upsig=53a5e6b44c0c1d9dbad0a8a5aa2e1a5f&uparams=e,uipk,nbs,deadline,gen,os,oi,trid,platform&mid=100969474&orderid=0,1&logo=80000000(该链接只有一小段时间有效……),应该是 1080P 的吧……

SigureMo avatar Apr 18 '21 17:04 SigureMo

@SigureMo 哦哦..现在我网页打开也是json了...之前电脑端和手机端他都会返回一个bilibili的播放器.可能被重定向了....

helishou avatar Apr 19 '21 00:04 helishou

@SigureMo https://player.bilibili.com/player.html?aid=${action.data.aid}&cid=${action.data.cid}&high_quality=1&autoplay=true&platform=html5

哦,看了一下我用的是这个地址.这个电脑1080p,手机360p...

helishou avatar Apr 19 '21 00:04 helishou

@helishou

啊这我怎么貌似这个也是 1080P?不过我之前其他文档确实在使用官方提供的外链(iframe)时有 pc 端1080p 手机端 360p 的问题。因为没找到解决方案,所以就放弃官方提供的外链而自己试 API 做文档外链了。

SigureMo avatar Apr 19 '21 02:04 SigureMo

https://github.com/cattypapa/blibli_videodown 我写了个最新的也很简单的代码,可以直接获取到视频的最高质量版本并下载到本地,支持单P和多P下载,暂时不支持番剧下载,不过过后会加上的

learnman1994 avatar Apr 27 '21 16:04 learnman1994

1080p的高清格式已经被我研究出来了, 请参考 http://bilibili.syyhc.com

有github地址吗

w13411965905 avatar Sep 29 '21 07:09 w13411965905