如何使用python下载某B站的视频(附源码)
2023-08-22 16:19 作者:zombie_man_ | 我要投稿
需要了解的工具:
先看看我发的第一期专栏,里面有关开发者模式的介绍,一些相关的请求库与解析库。本期专栏将不再赘诉。
下载ffmpeg。下载官网链接:https://ffmpeg.org/download.html。
注意:如果想要在cmd中使用,需要先配置环境变量
有关于此的介绍与使用详细可以看此链接:https://zhuanlan.zhihu.com/p/356411237
本期将导入 subprocess 来用python执行ffmpeg的有关命令。
对于m4s的处理及相关源码(能直接运行):
本期处理依据来源于此:https://github.com/SocialSisterYi/bilibili-API-collect/blob/master/docs/video/videostream_url.md
m4s文件是单独的音频或者视频文本文件。
可以了解先以下b站的api设置。具体可以看此链接:
https://zhuanlan.zhihu.com/p/556023455。
通过请求b站的api能够返回含有url与backup_url的 json 文本

我们的目的就是请求以上的url。打开开发者模式:依次点击下图的五个位置:

五处的url即是我们需要的m4s路由文件。(由于是音视频文件分开,需要再找一个音频或视频文件)
源代码的简单实现:
有关注释已放置在代码块中。
运行成功截图:

对于第一期与第二期的相关拓展:
有些动漫网站,network下没有ts文件的可以直接下载m3u8格式文件,将其扩展名改为txt。用文本编辑器打开后发现有ts文件的。就可以执行以下代码:
二期:再通过点触验证码识别后,我们可以通过执行以下代码将cookies保存下来,下次直接使用cookies跳过点触验证码的识别。
使用cookies跳过验证码识别代码:
如有错误或者改进之处,欢迎各位提出