🎧 从喜马拉雅 xm 加密音频文件中的信息反推得到 mp3
事情是这样的:今天老师给了我一个从喜马拉雅听书平台下载的 xm 文件,想要转换成 mp3 文件用一般的播放器播放。但我经过一番搜索,得知现在的 xm 文件采用了非对称加密,根本就不是改了后缀的 m4a 格式,需要手机上提取的私钥才能解密。
但采用一些特殊的搜索技巧,我得以下载到原本的 mp3 音频。
首先,我直接去网上搜索这条音频,看看能不能直接从在线播放页面中抓到音频文件。但是搜素后无果,因为这个文章有太多人读过了,根本找不到想要的那个。

之后我使用十六进制编辑器等软件打开这个 xm 文件,发现它具有一个 ID3 标头。标头内虽然没有专辑图片,但它直接把专辑图片的 URL 写了进去。


根据 ID3 信息在网上搜索这个专辑,并对应好专辑图片,就找到了这条音频。

在专辑中找到对应的音频,使用从这个仓库找到的 API,成功获取到了「高音质」(其实只有 64Kbps!)音频的 mp3 源文件。
