使用wireshark抓取bilibili直播的真实地址
使用wireshark抓取bilibili直播的真实地址
一、 概述
我之前测试过bilibili的直播(主播使用OBS-studio推送),延迟是相当低,大概就是3s-4s延迟,所以猜测网上说的直播客户端使用hls协议播放是不可能的。hls如果是按照5秒切片,那个最少保留3个ts的片段,理想情况不考虑网络的传输都需要15s左右,而且腾讯云直播官网提供数据是hls直播延迟35s左右。我想着这样直播客户端应该是使用rtmp协议来实现的,按照我的猜测,我是用wireshark来抓取包分析之后,发现虽然不是rtmp协议,使用的是http + flv视频容器这种方式。应该是为了http走80端口,方便nginx做负载均衡。虽然后端服务器我不太清楚B站是怎么处理的,我还是把我抓包结果记录出来,让正在做直播的同学参考一下。
二、 准备所需要的环境
1 抓包工具软件 Wireshark-win64-2.0.2.exe
2 电脑播放软件ffmpeg-20140323-git-fc567ac-win64-shared.7z 主要使用ffplay播放器软件(命令行模式)
3 bilibili的手机客户端 4.14.0 播放器是ijkplayer ,在设置-》帮助-》开放源码许可 可以看到详细的使用相关的软件信息
4 就是360免费wifi 为了抓取手机上的包,最好的办法就是使用电脑作为wifi热点,手机连到该热点上,然后通过wireshark抓取该无线网卡的数据包
三、开始抓包
1 首先使用你电脑做为wifi热点,然后手机连接到该wifi热点上。这是必须的
2 打开bilibili的手机客户端,找到直播栏目
3 打开wireshark软件,选择你无线网卡,这里根据你个人电脑情况不同,你可能会看到多个无线网络连接,你自己一个一个试一下,看看是哪个手机发出的数据包?我的是(无线网络连接3 ) 效果如下:
选择无线网络连接3之后,就开始抓包了,这一步你可以根据你自己需要,当你点击播放直播的时候在开始抓包。
4 点击手机上的直播房间,如图:
然后观察wireshark中包分析,这里顺便说一下我之前以为是rtmp协议,所以在过滤的是 port 1935是看不到数据包的。所以我后来干脆没有使用过滤器,然后慢慢分析包的信息的,结果如下图:
5 上图可以看出,这是使用http + flv这种方式的,但是我还是不能确定,事情是不是这样的呢? 我接下来使用ffplay来播放测试该地址、播放命令如下:
直播路径仅供参考使用:http://60.207.246.38/live-play.acgvideo.com/live/398/live_5661153_2011833.flv?wsSecret=128828d624f2e70f9f17853a0dfea88c&wsTime=5752f544&wshc_tag=0&wsts_tag=577a7434&wsid_tag=76f758c1&wsiphost=ipdbm
播放结果如图:
可以看到虽然ffplay很简陋,但是还是直播了该内容,并且和手机是同步播放的。
四、结论
bilibili直播客户端,使用的播放器是ijkplayer,这个是B站开源的播放器,这里一万个赞。然后我测试结果证明了,直播客户端是使用http + flv的模式直播的,不是所谓和hls或者rtmp的。谢谢 联系邮箱845885222@qq.com
使用wireshark抓取bilibili直播的真实地址相关推荐
- Wireshark抓取网易音乐的下载地址
如果通过抓包的技术,那么几乎所有的音乐都能找到链接! 以网易音乐APP为例吧,从此开刀,希望大家能够举一反三,提高抓包的技术,解决实际的需求问题. 网易云音乐安装在了自己的Andorid的手机里面,手 ...
- 使用Wireshark抓取淘宝直播回放源地址并下载
转载自:https://zhuanlan.zhihu.com/p/37365714 写本文的初衷是为了下载江疏影的淘宝直播回放视频,学了一下手机抓包. 现在已经不对直播.直播录制相关内容做探究了,超出 ...
- wireshark抓取接入游戏盾的APP真实IP实例
在使用 Wireshark 抓取接入游戏盾的 APP 的真实 IP 的过程中,你需要执行以下步骤: 启动 Wireshark 并选择你要使用的网络接口. 在过滤器框中输入过滤器规则,以筛选出与游戏盾的 ...
- python 模拟浏览器selenium_Python使用Selenium模块模拟浏览器抓取斗鱼直播间信息示例...
本文实例讲述了Python使用Selenium模块模拟浏览器抓取斗鱼直播间信息.分享给大家供大家参考,具体如下: import time from multiprocessing import Poo ...
- python采集直播间数据_Python使用Selenium模块模拟浏览器抓取斗鱼直播间信息示例...
本文实例讲述了Python使用Selenium模块模拟浏览器抓取斗鱼直播间信息.分享给大家供大家参考,具体如下: import time from multiprocessing import Poo ...
- 使用wireshark抓取账号密码
运行wireshark,选取当前电脑使用的网络,我是用学校WiFi,所以选取WiFi. 进入抓包页面,这时wireshark就已经开始抓取电脑上的数据包了. 我们登录一个网站,我选择的是桂林生活网ht ...
- wireshark抓取Android手机app的包
一.环境 台式机系统:Windows7旗舰版 Android手机:华为9i 无线网卡:AC650双频高增益无线USB网卡 wifi共享大师:百度下载 wireshark:Wireshark-win64 ...
- 使用wireshark抓取聊天信息与爬虫入门
文章目录 1.聊天准备 2聊天并进行抓包 2.1.疯狂聊天 2.2.使用wireshark抓取聊天信息 2.初识网络爬虫 2.1.什么是爬虫 2.2.爬取南阳理工学院ACM题目网站信息 2.3.爬取重 ...
- Wireshark抓取网络聊天
Wireshark抓取网络聊天 一.实验要求 二.实验操作 三.数据发送抓包 1. 西文字符 2. 汉字字符 3. 混合发送 四.总结 五.参考 一.实验要求 1)分析此程序网络连接采用的是哪种协议( ...
最新文章
- DataAccessResourceFailureException异常解决方法
- oracle--pl/sql变量定义----
- Django使用心得(二)
- mysql 创建表_MySQL创建表(十一)
- springboot md5加密_SpringSecurity入门-SpringBoot集成SpringSecurity
- python代码加密解密_在python中加密 – 在Javascript中解密
- 盘点下 NSX-v 中“不合理”的命名
- 跟我学Spring Cloud(Finchley版)-18-Zuul深入
- micropython logging文档
- MB1504的程序实践与调试
- 41局域网交换机及其基本原理
- java emoji表情 乱码_java 微信昵称带有emoji 表情乱码
- elasticsearch5.x集群HA原理(shards、replicas)
- Web技术-1 Web前端总结
- 企业官网小程序搭建教程
- 来淄博旅游 2055
- 6.又双叒叕背包模拟
- 蓝牙Sig Mesh 概念入门①——简单介绍
- 一文了解linux 内核模块 强制卸载
- 网络变压器是干什么用的?(以太网 网络 LAN 局域网 通讯隔离滤波器)生产工厂/产品原理图/常用产品/价格影响因素
热门文章
- 浮动之电视剧详情页面
- 电子邮箱地址注册,收费邮箱哪个安全?申请163电子邮箱?
- 多智能体系统协同一致性问题(五)
- 基于Java毕业设计迎新管理系统演示录像2020源码+系统+mysql+lw文档+部署软件
- OpenNI2编程说明 (未整理)
- 二分搜索算法(以力扣周赛“每个小孩最多分到多少糖果”为例)
- (数据分析)第02章 Python语法基础,IPython和Jupyter Notebooks.md
- 这篇java面试是真的真的够全的,强烈推荐给大家
- React_Fragments
- 魔改合成大西瓜--11张图片定制(速度最快版)