一、探究背景<br>ClassIn是翼鸥教育发布的一款功能强大的在线教室直播系统,凭借先进的多路视频通信技术,以及完善的全球布点建设云通信系统,ClassIn一直致力于在线教育技术的快发展。<br>在实际使用过程中,发现ClassIn历史课程回放仅支持「在线播放」,而没有「下载」功能,仅可在授课老师分享课程后方可获取下载链接。<br><br>这给学生「分享课程」等操作造成了极大困难。<br><br>因此,尝试通过其它手段获取回放直链,就显得尤为重要,而「抓包」思想是我首先想到的方法。<br><br>二、准备工具<br>一部Android手机(必须使用Android 11以下的设备,否则会有证书安装问题)<br>一个ClassIn账号以及一个有效的课程<br>如可以,建议给手机开启ROOT权限<br>三、方法讲解<br>1.安装软件<br>[1]ClassIn App<br><br><br>ClassIn官网下载渠道<br>ClassIn官方提供下载渠道,可以直接在下载窗口下载安装。<br><br>[2]HttpCanary App<br><br><br>酷安原动态<br>由于在各大应用市场均未搜到本应用,同时原作者也已经停止了日常维护,这里提供酷安大佬“NEKOOKEN”分享的下载链接(访问密码:3513)。<br><br>2.软件初步调试<br>[1]ClassIn App<br><br><br>ClassIn App 登录界面<br>将已有的ClassIn账号输入登录,进入「首页」界面,点击上方的「课程表」按钮,查看需要获取回放直链的课程。<br><br><br>ClassIn App 课程表示例<br>[2]HttpCanary App<br><br>进入APP,依次安照初始化步骤,同意条款→配置VPN→安装根证书→移动证书到系统CA列表(如无ROOT权限,可以选择右上角的跳过)<br><br>注:在「安装根证书」步骤中,可能会弹出Android系统自带的「为证书命名」窗口,在凭据用途中请选择「VPN和应用」(即默认选项),如图(示例为Android 10 原生ROM)。<br><br><br>“为证书命名”示例<br>请注意:如您使用Android 11设备,在安装证书时会提示必须在“设置”中安装CA证书,建议使用Android 11以下的设备或参考文末附录解决方法。<br><br>若一切正常,即可进入首页界面,准备后续的抓包操作。<br><br>3.开始抓包<br>* 在开始之前,建议将不必要的应用移出后台,避免收集到不必要的抓包数据。<br><br>①打开HttpCanary App进入首页,点击右下角按钮,开始抓包(可以通过是否有悬浮窗来判断是否已经成功开始抓包)。<br><br><br>HttpCanary App “开始抓包”示例<br>②打开ClassIn App,选择需要的课程,点击「回放观看」按钮。<br><br><br>ClassIn App “回放观看”示例<br>③观看5-10秒时间,然后退出ClassIn App,重新进入HttpCanary App,再次点击右下角按钮,停止抓包。<br><br><br>HttpCanary App “停止抓包”示例<br>④分析抓包数据,观察记录里GET记录,可以发现有https://playback.eeo.cn/开头的链接,此即为课程回放直链,点击它查看详细内容。<br><br><br>HttpCanary App “分析抓包数据”示例<br>⑤点击该URL,即可复制到剪贴板了。<br><br><br>HttpCanary App “复制URL”示例<br>⑥在浏览器中打开测试,成功。<br><br><br>“测试URL”示例<br>四、原理总结<br>本方法是通过HttpCanary利用VPN代理抓取ClassIn客户端的数据包后进一步分析得到。<br><br>相比之下,本方法步骤简单,技术含量较少,利于“小白化”操作。<br><br>同时也在研究其它方法实现其目的。<br><br>五、文末附录<br>1.ClassIn API<br>ClassIn官方提供使用「GitBook」发布的API,可供技术人员参考。<br><br>详细请点击本链接。<br><br><br>ClassIn API简介<br>2.HttpCanary Android 11 安装证书问题<br>由于Android 11收紧了APP安装「CA证书」的权限,只能用户手动安装,因此导致了用户无法正常使用HttpCanary。<br><br><br>Android 11 安装证书示例 此方法可用于视频和文件的下载,如果实在不懂如何操作,可以看评论区帮忙代下哦~~