bilibili视频无法下载?python来帮你

摘要

试图分析bilibili视频流如何传递

编码解析视频流

脚本运行,便于使用

试图分析bilibili视频流如何传递

首先,我们需要很碰巧的知道.m4s格式,这是一种用于做视频片段的格式。

其次,我们需要很碰巧的打开谷歌的开发者工具,发现他的请求路径,如下图


bilibili视频无法下载?python来帮你

很好,这时候我们已经获得了他的视频流了。其实已经可以下载了。但是我发现了更神奇的东西。

从html元素中找到了如图所示的东西,使用json格式化之后,发现他是对应着不同清晰度的视频流请求,以及一个音频文件。


bilibili视频无法下载?python来帮你

那么我们就有结论了。我们有视频所在页面的地址,通过bv号来标识【在旧版本的bilibili中是通过av号】,我们从页面中能解析出对应的视频流和音频,随后我们可以模拟下载视频流。

编码解析视频流

虽然我java写得最多,但是python用来写脚本是真的香,主要是因为有大量现成的库存在。人生苦短 ,我用python。

我们需要一些库来帮助我们快速实现目的

  1. requests-模拟请求的库
  2. pyquery-解析html的库
  3. json-解析json的库

获取html内容

模拟一个user-agent,通过request发起请求。免得被当做机器人给拦截了 。


bilibili视频无法下载?python来帮你


解析出html中的视频音频路径


bilibili视频无法下载?python来帮你

下载视频并输出到本地。


bilibili视频无法下载?python来帮你

再稍微调整调整基本齐活。

脚本运行,便于使用

还记得之前提过的为什么要学习shell脚本和macos管理脚本最好方案?我想聊聊我的想法吗? 用他们来让你的python脚本一键下载bilibili视频吧。

备注:其实还有一个问题,bilibili视频音频是分开的,但通过剪辑工具是可以轻松将他们合在一起。更轻松的当然是通过脚本执行咯。下期向大家推荐一个类库来解决这个问题。再见~ peace and love

求点赞,求关注。要源码请私信

展开阅读全文

页面更新:2024-04-27

标签:目的   下期   视频   清晰度   私信   剪辑   脚本   路径   音频   东西   轻松   页面   格式   发现   工具   科技

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top