喜马拉雅xm音频解码

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

相关推荐

  1. 喜马拉雅xm音频解码

    2024-05-14 06:00:19       34 阅读
  2. Python喜马拉雅免费音频数据爬取部署

    2024-05-14 06:00:19       39 阅读
  3. 音频解码器音乐播放器

    2024-05-14 06:00:19       22 阅读
  4. 喜马拉雅后端一面

    2024-05-14 06:00:19       43 阅读
  5. 喜马拉雅项目调整

    2024-05-14 06:00:19       33 阅读
  6. FFmpeg--音频解码流程:aac解码pcm

    2024-05-14 06:00:19       50 阅读
  7. 使用ffmpeg进行AAC音频解码

    2024-05-14 06:00:19       60 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-14 06:00:19       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-14 06:00:19       100 阅读
  3. 在Django里面运行非项目文件

    2024-05-14 06:00:19       82 阅读
  4. Python语言-面向对象

    2024-05-14 06:00:19       91 阅读

热门阅读

  1. TCP传输的三次握手四次挥手策略

    2024-05-14 06:00:19       27 阅读
  2. 机器学习概念:几种常见的距离参数概念和应用

    2024-05-14 06:00:19       21 阅读
  3. 多线程中的单例模式

    2024-05-14 06:00:19       26 阅读
  4. 网络层相关协议

    2024-05-14 06:00:19       25 阅读
  5. 微信小程序、uniapp密码小眼睛

    2024-05-14 06:00:19       29 阅读
  6. springboot 开启缓存 @EnableCaching(使用redis)

    2024-05-14 06:00:19       33 阅读
  7. 蓝桥杯备战20.有奖问答_动态规划

    2024-05-14 06:00:19       33 阅读
  8. 【经验分享】SFTP使用指南

    2024-05-14 06:00:19       28 阅读
  9. 云原生周刊:Kubernetes Grafana 看板更新 | 2024.5.13

    2024-05-14 06:00:19       32 阅读
  10. C++ QT设计模式:迭代器模式

    2024-05-14 06:00:19       33 阅读