喜马拉雅xm音频解码

发布于:2024-05-14 ⋅ 阅读:(284) ⋅ 点赞:(0)

github

https://github.com/Diaoxiaozhang/Ximalaya-XM-Decrypt

pip install python-magic
pip install mutagen
pip install wasmer
pip install wasmer_compiler_cranelift
pip install python-magic-bin

报错 ImportError: failed to find libmagic. Check your installation

import magic
def find_ext(data):
    exts = ["m4a", "mp3", "flac", "wav"]
    value = magic.from_buffer(data).lower()
    for ext in exts:
        if ext in value:
            return ext
    raise Exception(f"unexpected format {value}")
def decrypt_xm_file(from_file, output_path='./output'):
    print(f"正在解密{from_file}")
    data = read_file(from_file)
    info, audio_data = xm_decrypt(data)
    output = f"{output_path}/{replace_invalid_chars(info.album)}/{replace_invalid_chars(info.title)}.{find_ext(audio_data[:0xff])}"
   

magic只是为了用来检测下载文件的文件类型,但是我下载的文件都是音频 m4a 或者mp3, 可以下载几条验证一下,我用m4a类型保存看着比较正常,直接写死的m4a

output = f"{output_path}/{replace_invalid_chars(info.album)}/{replace_invalid_chars(info.title)}.m4a"

libmagic报错windows系统不好解决,绕过不解决了。

https://github.com/ahupp/python-magic#dependencies
https://segmentfault.com/q/1010000043254750
https://github.com/pidydx/libmagicwin64
https://www.saoniuhuo.com/question/detail-2221718.html
https://blog.csdn.net/RelaxTech/article/details/131447227


网站公告

今日签到

点亮在社区的每一天
去签到