Python开发实践-音乐整理工具MusicOrganizer

liftword2周前 (06-15)技术文章4

背景

音乐爱好者的爱好可能就是下载各种质量音乐,但是音乐多了之后如何整理就成了一个问题。从本文开始使用Python语言以循序渐进的方式开发一个音乐整理工具。

获取音乐信息

下面的代码首先遍历指定目录,然后在第12行,第14行使用mutagen库获取音乐信息。

import os
from mutagen.flac import FLAC
from mutagen.mp3 import EasyMP3


if __name__ == "__main__":
    rootdir = '.\Song'
    file_list = os.listdir(rootdir)  # 列出文件夹下所有的目录与文件


    for file in file_list:
        path = os.path.join(rootdir, file)
        if path[-5:] == '.flac':
            audio = FLAC(path)
        elif path[-4:] == '.mp3':
            audio = EasyMP3(path)
        else:
            audio = None
        print(audio)

测试代码的目录如下图所示:

程序执行结果如下:

{'album': ['Album1'], 'title': ['T1'], 'artist': ['A1'], 'albumartist': ['AA1']}
{'tracknumber': ['1'], 'language': ['KOR'], 'albumartist': ['AA2'], 'encoder': ['E2'], 'artist': ['A2'], 'title': ['T2'], 'album': ['Album2'], 'description': ['D2']}
{'tracknumber': ['1'], 'albumartist': ['AA3'], 'encoder': ['E3'], 'artist': ['A3'], 'title': ['T3'], 'album': ['Album3'], 'description': ['D3']}
{'tracknumber': ['1'], 'albumartist': ['AA4'], 'encoder': ['E4'], 'artist': ['A4'], 'title': ['T4'], 'album': ['Album4'], 'description': ['D4']}
{'albumartist': ['AA5'], 'artist': ['A5'], 'title': ['T5'], 'album': ['Album5'], 'description': ['D5']}

可以看到mp3文件的信息比flac文件略少。

参考代码

完整代码可以从以下链接下载:

https://github.com/xueweiguo/Python/tree/master/MusicOrganizer

作者著作介绍

《实战Python设计模式》是作者去年3月份出版的技术书籍,该书利用Python 的标准GUI 工具包tkinter,通过可执行的示例对23 个设计模式逐个进行说明。这样一方面可以使读者了解真实的软件开发工作中每个设计模式的运用场景和想要解决的问题;另一方面通过对这些问题的解决过程进行说明,让读者明白在编写代码时如何判断使用设计模式的利弊,并合理运用设计模式。

对设计模式感兴趣而且希望随学随用的读者通过本书可以快速跨越从理解到运用的门槛;希望学习Python GUI 编程的读者可以将本书中的示例作为设计和开发的参考;使用Python 语言进行图像分析、数据处理工作的读者可以直接以本书中的示例为基础,迅速构建自己的系统架构。




觉得本文有帮助?请分享给更多人。

关注微信公众号【面向对象思考】轻松学习每一天!

面向对象开发,面向对象思考!

相关文章

一起用python做个炫酷音乐播放器,想听啥随便搜

前言前段时间写的Python自制一款炫酷音乐播放器,有不少小伙伴私信我,对播放器提了不少改进建议,让我完善播放器的功能。今天音乐播放器2.0版本完成了,大家一起来看看是如何用python自制一款炫酷的...

零基础小白,如何利用DeepSeek自动编程,2小时完成音乐播放器?

自从DeepSeek横空出世,大家都被它的强大功能震惊了,于是满世界的教程来了,但都是什么生成PPT、总结、文案啥的,烂大街了!今天,我就教大家,怎么用DeepSeek的强大能力,2小时完成一个完整的...

利用python实现音乐自由

上期我们讲到了如何利用python实现小说自由,既然有了小说那边听音乐,边看小说是不是会更加快乐呢。这期我们就来讲讲如何利用python实现音乐自由。首先我们来打开某音乐网站来分析下源码点开一个<...

利用python爬虫爬取网站音乐

最近我想在网站上下载几首音乐放到我的u盘里听,但是上网上一找,各大音乐网站下载歌曲(尤其是好听的歌曲)都需要vip。对于像我这样的穷人来说,肯定是不会花几十块钱去下载几首音乐啦,而且作为程序员,充钱去...

Reaper:Python脚本加速音乐制作过程

这是编程派发布的第二篇投稿,作者atm是一名音乐工作者。文章讲述的是Python在音乐制作软件Reaper中的应用。内容虽然不长,对于大多数人来说用处也不大,但是算是开拓一些眼界。下次在知乎碰到Pyt...

Python编程:爬取歌曲案例

恭祝大家春节愉快!请点赞,转发加关注和私信,获取源代码!在介绍爬取音频数据案例的课程中,我们大概讲解了爬虫应该知道和应该会一些知识。在2021年春节长假期间,宅家或外出旅行,使用Python程序,能爬...