news 2026/8/14 12:55:42

B站视频解析API实战:一套PHP代码,让视频直链5分钟到手

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
B站视频解析API实战:一套PHP代码,让视频直链5分钟到手

B站视频解析API实战:一套PHP代码,让视频直链5分钟到手

【免费下载链接】bilibili-parsebilibili Video API项目地址: https://gitcode.com/gh_mirrors/bi/bilibili-parse

你有没有过这种时刻:在网上找到一个讲得特别好的B站教程,想把它嵌进自己公司的培训页面,让同事不用切到B站就能看;或者想缓存几集纪录片,留着在地铁上慢慢刷。结果你在网页里翻来覆去,看到的全是一堆加密字符串,视频文件到底存在哪个地址,完全摸不着头脑。

这不是你笨——浏览器里的那个播放器,本质上只是"接到指令去取货"的搬运工,真正的仓库地址是它当场向B站服务器临时申请、动态下发的。你想要的,就是学会自己"问路"。而这个问路的本事,一个叫bilibili-parse的开源 PHP 解析库就能替你完成。这篇 B站视频解析API 实战文章,就来带你把这条路彻底走通。

核心关键词:B站视频解析API长尾关键词:PHP视频解析工具、B站视频直链获取、视频播放集成API、B站视频离线下载方案、AV号转播放地址

先说人话:它到底是什么

bilibili-parse = 输入一个编号(AV/BV/EP),输出一条能直接播放的视频地址。

就这么简单。它自己不存任何视频、不碰任何版权内容,只做一件事:替你向B站服务器发起一次合法请求,然后把返回的加密数据"翻译"成你能直接用的播放链接。对新手来说,你甚至不需要理解任何网络协议,只需要认识三个词——视频编号、清晰度、格式,剩下的交给它。

一张表摸清它的全部家底

动手之前,先把能力全景摊开来看:

参数作用默认值可选值
av / bv / ep告诉它"是哪个视频"av、bv 用于普通视频,ep 用于番剧/课程
p多P视频取第几集11、2、3……
q想要多清晰3216 / 32 / 64 / 80
format输出什么封装格式flvflv / dash / mp4
type视频大类videovideo / bangumi(番剧)
otype结果怎么吐出来jsonjson / url / dplayer

三种格式的区别,一句话记牢:flv是传统分段直链,拿到就能播;dash会拆成视频流 + 音频流两条地址,画质上限高但需要自己拼装;mp4是最省心的封装,几乎所有播放器都直接认。

除了这张表,它还藏着两个贴心小机关:一是自动降档——你随手填一个不存在的清晰度,它会自动向下匹配最近的合法档位,不会直接报错;二是缓存——同一视频短时间内重复解析时直接读缓存,省流量也省等待。

三步跑通:从零到拿到直链

它的运行门槛低得感人:PHP 5.4 及以上版本,装好 Curl 和 OpenSSL 扩展就够了。

第一步,把代码请进家门。

git clone https://gitcode.com/gh_mirrors/bi/bilibili-parse

第二步,当成现成接口直接用。项目根目录的 index.php 本身就是一个开箱即用的 API 入口,你连业务代码都不用写。把它放到支持 PHP 的站点目录,然后浏览器访问:

https://你的域名/bilibili-parse/?av=14661594&p=1&q=64&otype=json

有意思的是,如果你不带任何参数直接打开 index.php,它会自动渲染出 public/readme.html 文档页——等于内置了一份使用手册,上手成本又低了一截。

第三步,写三行代码接进你的项目。核心逻辑都封装在 src/Bilibili.php 的Injahow\Bilibili类里,调用方式是清爽的链式写法:

require 'src/Bilibili.php'; use Injahow\Bilibili; $bp = new Bilibili('video'); // 普通视频;番剧填 'bangumi' $bp->bvid('BV1xx4y1x7zz') // av、bv、ep 三选一 ->page(1) // 第1P ->quality(64) // 清晰度 ->format('mp4') // flv / dash / mp4 ->cache(true)->cache_time(3600); // 开启1小时缓存 echo $bp->result(); // 拿到解析结果

到这一步,一条"编号 → 直链"的流水线就算正式通了。接下来的问题就是:这条流水线,能为你做什么?

三种身份,三种玩法

1. 搭学习平台的老师 / 站长

你想让自家平台上的B站课程"无感播放",本质就两步:解析出直链,然后喂给播放器。项目里已经预置了一个播放器演示页 public/dplayer.html,先用它验证效果:

https://你的域名/bilibili-parse/public/dplayer.html?av=14661594&p=1

确认能播之后,再把你自己的播放器接上result()返回的 url 字段即可。给热门课程开缓存、清晰度设在 64,播放流畅度和加载速度都能兼顾。

2. 做系统集成的开发者

你的程序只需要结构化数据?把 otype 设为 json,接口会返回 code、quality、url 等字段,你的代码只管按约定解析:

  • code=0,解析成功,url 直接拿去用;
  • code 非 0,message 字段会告诉你失败原因。

再配合你的重试、日志、队列机制,一套稳定的解析服务就立起来了。多P视频记得循环 page 参数逐集取地址。

3. 只想离线缓存的普通用户

不写代码也有办法。用 otype=url,接口会返回一段纯文本直链,复制到下载工具或手机浏览器里保存即可:

https://你的域名/bilibili-parse/?av=14661594&p=1&format=mp4&otype=url

画质建议选 32 档,画质与文件体积比较均衡;下载尽量在 Wi-Fi 环境下进行,更稳妥。

翻车现场:四个高频坑的"原因—解法"

玩得越深,越可能遇到下面这些情况。对照着查,基本都能救回来:

报错 / 现象常见原因解决办法
返回"无访问权限"视频需要登录或会员cookie()方法传入登录态 Cookie,或换非会员视频
返回"视频清晰度受限,可能需要会员"请求的清晰度超出当前权限降低 q 参数;或带上会员 Cookie 再试
返回"获取信息失败"cid 没取到,多为参数或网络问题核对 av/bv/ep 是否填错、网络是否可达,避免多种编号混传
缓存迟迟不生效cache 目录不存在或不可写按源码注释提前建好cache/cid/目录并确保可写;也支持换成 apcu 内存缓存

另外单独叮嘱一句:dash 格式返回的是视频流 + 音频流两个地址,需要自己合并封装,别指望它当单一直链用;想"拿来就播",优先 mp4 或 flv。

收尾:你的下一步该做什么

到这里,bilibili-parse 的核心玩法你已经全部握在手里了:一个编号,换来一条直链,然后想怎么用就怎么用。它最难得的地方,是把整套解析逻辑压缩进了单个 PHP 类——读透它,你也就顺便搞懂了"视频播放地址是怎么被下发和加密的",这本身就是一份绝佳的网络编程教材。

按这个顺序进阶,收获最大:

  1. 打开 src/Bilibili.php,从result()方法读起,顺着整个解析流程走一遍;
  2. 对照 index.php,学学怎么把类包装成一个 HTTP 接口;
  3. 再挑战番剧(type=bangumi)与课程解析,体会 ep 编号与 av/bv 的差异。

最后提一句边界:这类工具请用于个人学习、内容研究等正当场景,下载的内容注意尊重版权,也尽量不要把解析接口裸奔在公网上供人滥用。工具是中立的,把它用在哪里,取决于你。

现在,去把收藏夹里第一个视频编号填进去吧——你会发现,"直链获取"这件事,真的比你想象中简单。

【免费下载链接】bilibili-parsebilibili Video API项目地址: https://gitcode.com/gh_mirrors/bi/bilibili-parse

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/14 12:55:26

NCM音乐转换不再愁:ncmdump免费工具手把手一学就会

NCM音乐转换不再愁:ncmdump免费工具手把手一学就会 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 你是不是也遇到过这种情况:在网易云音乐下载的歌,全是.ncm格式,拷到U盘、换台手机、…

作者头像 李华
网站建设 2026/8/14 12:54:58

从0到1打造高转化页面:电梯网站建设的全流程深度解析与避坑指南

说实话,刚入行做网站优化的时候,我也曾天真地以为,只要代码写得漂亮,排版够高级,客户自然就来了。那时候我觉得技术是王道,只要把SEO参数设置得完美无缺,搜索引擎就会像磁铁一样把流量吸过来。但现实狠狠给了我一巴掌。后来我接触了上百个不同行业的案例,包括传统的制造…

作者头像 李华
网站建设 2026/8/14 12:54:16

网站建设先进材料如何赋能企业数字化升级并提升行业竞争力

在这个数字洪流席卷全球的今天,企业想要在大浪淘沙中站稳脚跟,光有优质的产品已经不够了。很多人觉得,做个网站嘛,随便找个模板套一下,填点文字放几张图片,不就完了吗?钱少、速度快、见效也快,听起来似乎挺完美。但如果你真的这么想,那我得说,你正在错过一次让企业品…

作者头像 李华
网站建设 2026/8/14 12:54:02

电商实战指南:一份保姆级的电子商务网站建设规划书范文,帮你避坑省钱

做电商的朋友都知道,现在那个市场真的是卷啊,卷产品、卷价格、卷服务,最后还得卷体验。很多老板一上来就问:“我花个几万块弄个网站吧,赶紧上线赚钱。”这种心态我太理解了,谁都想着一夜暴富,但现实往往是骨感的。如果你连个正经的规划都没有就砸钱上线,那基本上就是在…

作者头像 李华
网站建设 2026/8/14 12:52:43

网站建设的小故事:新手站长如何从0到1打造高转化官网的蜕变之旅

本文关键词:网站建设的小故事做网站建设的小故事,听起来好像有些文绉绉的,但如果把这层华丽的外衣剥开,你会发现这背后其实就是一部部充满汗水、泪水,甚至还有点血泪的奋斗史。我接触过的无数站长朋友,包括我自己,在刚开始折腾网站的时候,大多都带着一种“我要颠覆互联…

作者头像 李华
网站建设 2026/8/14 12:52:19

南充网站建设费用大揭秘:2024普通企业建站到底要花多少钱才不吃亏

说到南充网站建设费用,很多在咱们南充或者川东北片区做生意的老板、朋友,第一反应可能都是心里一紧:“哎呀,做个网站会不会要好几万?会不会是个无底洞?”这种顾虑太正常了,毕竟在互联网时代,大家都听说网站很重要,但又怕被那些不懂行的公司当“肥羊”宰。今天,我不打…

作者头像 李华