·设为首页收藏本站📧邮箱修改🎁免费下载专区📒收藏夹📱AI全功能
返回列表 发布新帖

如何播放b站多p视频?

388 2

马上注册,免费下载更多dz插件网资源。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
即使复制了2p,3p等的网址,仍然只默认播放1p。我看别人的社区,复制2p的网址,直接就播放2p。请问各位大佬如何实现?我知道答案 回答被采纳将会获得1 贡献 已有1人回答
我要说一句 收起回复

评论2

CrystαlLv.8 发表于 2023-2-11 08:07:32 | 查看全部
https://addon.dismall.com/plugins/study_html5_bilibili.html
我要说一句 收起回复
Discuz智能体Lv.8 发表于 2025-3-16 15:49:10 | 查看全部
要在Discuz论坛中实现播放B站多P视频的功能,你可以通过以下步骤来实现:

### 1. 解析B站视频链接
首先,你需要解析B站视频的链接,获取视频的`aid`(视频ID)和`cid`(分P ID)。B站的视频链接通常包含这些信息。

例如,一个B站视频链接可能是这样的:
  1. https://www.bilibili.com/video/BV1Xx411c7mD?p=2
复制代码

其中,`BV1Xx411c7mD`是视频的`aid`,`p=2`表示你要播放的是第2P。

### 2. 使用B站的API获取视频信息
你可以使用B站的API来获取视频的分P信息。B站的API可以通过以下方式获取视频的分P信息:
  1. https://api.bilibili.com/x/player/pagelist?aid=视频ID
复制代码

例如:
  1. https://api.bilibili.com/x/player/pagelist?aid=12345678
复制代码

这个API会返回一个JSON格式的响应,包含视频的所有分P信息。

### 3. 在Discuz中嵌入视频播放器
在Discuz中,你可以使用`[media]`标签来嵌入视频播放器。你需要根据解析到的`cid`来生成正确的播放器代码。

例如:
  1. <iframe src="//player.bilibili.com/player.html?aid=视频ID&cid=分PID&page=分P序号" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true"> </iframe>
复制代码

其中,`aid`是视频ID,`cid`是分P ID,`page`是分P序号。

### 4. 自动解析用户输入的链接
你可以在Discuz中编写一个插件或修改现有的代码,自动解析用户输入的B站视频链接,并根据链接中的`p`参数生成正确的播放器代码。

例如,当用户输入:
  1. https://www.bilibili.com/video/BV1Xx411c7mD?p=2
复制代码

你的代码可以解析出`aid`和`p`参数,然后生成对应的播放器代码。

### 5. 示例代码
以下是一个简单的PHP代码示例,用于解析B站视频链接并生成播放器代码:

  1. function parse_bilibili_url($url) {
  2.     // 解析URL中的aid和p参数
  3.     $parsed_url = parse_url($url);
  4.     parse_str($parsed_url['query'], $query_params);
  5.    
  6.     $aid = substr($parsed_url['path'], strrpos($parsed_url['path'], '/') + 1);
  7.     $page = isset($query_params['p']) ? $query_params['p'] : 1;
  8.    
  9.     // 获取cid
  10.     $api_url = "https://api.bilibili.com/x/player/pagelist?aid=$aid";
  11.     $response = file_get_contents($api_url);
  12.     $data = json_decode($response, true);
  13.    
  14.     if ($data && isset($data['data'][$page - 1]['cid'])) {
  15.         $cid = $data['data'][$page - 1]['cid'];
  16.         
  17.         // 生成播放器代码
  18.         $player_code = "<iframe src="//player.bilibili.com/player.html?aid=$aid&cid=$cid&page=$page" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true"></iframe>";
  19.         return $player_code;
  20.     }
  21.    
  22.     return false;
  23. }

  24. // 示例使用
  25. $url = "https://www.bilibili.com/video/BV1Xx411c7mD?p=2";
  26. echo parse_bilibili_url($url);
复制代码


### 6. 集成到Discuz
你可以将上述代码集成到Discuz的插件或模板中,确保用户在发帖时输入B站视频链接时,自动解析并生成正确的播放器代码。

### 7. 注意事项
- 确保你的服务器能够访问B站的API。
- 由于B站的API可能会发生变化,建议定期检查API的可用性。
- 如果你不熟悉Discuz插件开发,可以参考DZ插件网(https://www.dz-x.net/)上的相关教程和插件。

通过以上步骤,你应该能够在Discuz论坛中实现播放B站多P视频的功能。如果你有更多问题,欢迎继续提问!
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
我要说一句 收起回复

回复

 懒得打字嘛,点击右侧快捷回复【查看最新发布】   【应用商城享更多资源】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

最新热评 加载中...
AI智能体
投诉/建议联系

discuzaddons@vip.qq.com

未经授权禁止转载,复制和建立镜像,
如有违反,按照公告处理!!!
  • 联系QQ客服
  • 添加微信客服

联系DZ插件网微信客服|最近更新|Archiver|手机版|小黑屋|DZ插件网! ( 鄂ICP备20010621号-1 )|网站地图 知道创宇云防御

您的IP:216.73.216.26,GMT+8, 2025-12-15 12:58 , Processed in 3.436767 second(s), 93 queries , Gzip On, Redis On.

Powered by Discuz! X5.1 Licensed

© 2001-2026 Discuz! Team.

关灯 在本版发帖
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表