问题标签 [mutagen]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 在 Windows 7 中使用 Python 处理 .mp3 元数据
我正在尝试通过 Python 编辑某些 MP3 文件的 ID3 标签。我做了一些研究,发现了诱变剂和 eyeD3 库。但是,我在这两个库中都遇到了类似的问题。两种实现都抱怨我提供的文件不存在,或者不是 .mp3 文件。
我已经下载了 Mp3tag (http://www.mp3tag.de/en/download.html) 并确认我提供的文件被标记为 ID3v2.3(ID3v1 ID3v2.3),这是一个 .mp3 文件。
以下是诱变剂代码,然后是我收到的错误:
现在,当我尝试使用 eyeD3 查看 ID3 数据时,我遇到以下情况:
我的猜测是我没有正确查看文件?我是否需要使用某种类型的 os 库来正确查看 Windows 7 的这些文件 ID3 数据?任何帮助是极大的赞赏。
谢谢。
python - Python诱变剂未正确保存
我正在从 Excel 文档中提取文本并将它们作为 id3 标记添加到一些 mp3 文件中。我的 Excel 文档中的大多数字符都是俄语 (Unicode),但有些是英语。当我运行脚本时,所有英文标签都被正确地写入元数据,但所有俄语字符都显示为问号。如果我在控制台中打印俄语字符,它们会完美显示。为什么他们被写成问号?
Python
python - Mutagen 无法打开文件 - ID3BadUnsyncError
我正在编写一个 python 脚本来重新格式化我的音乐文件夹中的文件名,使用 mutagen 库。这是脚本:
这是我尝试运行它时发生的情况:
有谁知道这里有什么问题?
编辑:原来诱变剂不适用于某些文件。我添加了一个 try 子句并跳过了错误,它现在可以工作了
python - 不会添加 id3 标签
我使用这个功能:
尝试在缺少它的文件上设置 id3 标签。它不会抛出异常。但它根本不起作用。这是为什么?这是一个示例输出:
更新 1
我把函数改成了这个(见代码的最后一行):
现在它写入 id3 版本 1(这似乎很明显)。但我不知道如何编写第 2 版。audio.tags.save()
不会...
python - 如何使用 mutagen.py 清除 mp3 元数据?
我想清除 MP3 文件中的所有元数据,并且我已经在我的项目中使用了 Mutagen。有没有办法可以简单地清除文件中的所有元数据?
python - Windows 7 上 Python 的 Mutagen 不起作用
一段时间以来,我一直在我的 Windows 7 机器上使用 Python 2.7 的 mutagen 包(版本 - mutagen-1.20),不幸的是它今天早些时候停止工作。
我已经重新安装了这个包,删除了所有属于这个包的文件,然后重新安装了一遍,但是所有的努力都是徒劳的。让我感到困惑的是,直到昨天这一切都运作良好。有人可以指出我可能出了什么问题。我在下面提到了一些代码和日志以供参考。谢谢!
我还安装了 eyed3 包,这对于这里使用的同一个 mp3 文件运行良好。不幸的是,eyed3 没有诱变剂那么令人印象深刻,我陷入了这种奇怪的境地。
mutagen.py - 用于测试的 Python 代码(example.mp3 位于脚本所在的同一目录中):
命令提示符的错误日志:
python - 使用 Python 和 mutagen 进行去mojibaking
我正在阅读 mojibaked ID3 标签mutagen
。我的目标是在学习编码和 Python 处理的同时修复 mojibake。
我正在使用的文件有一个ID3v2
标签,我正在查看它的专辑 ( TALB
) 帧,根据TALB
ID3 帧中的编码字节,它以 Latin-1 ( ISO-8859-1
) 编码。然而,我知道这个帧中的字节是用cp1251
(西里尔文)编码的。
到目前为止,这是我的代码:
现在,如您所见,mp3['TALB'].text[0]
这里表示为 Unicode 字符串。但是,它是mojibaked:
我在将这些cp1251
字节转码为正确的 Unicode 代码点时运气不佳。到目前为止,我的最好成绩非常不合时宜:
据我了解这种方法,它之所以有效,是因为我最终将 Unicode 字符串转换为 8 位字符串,然后我可以将其解码为 Unicode,同时指定我要解码的编码。
问题是我不能decode('cp1251')
直接使用 Unicode 字符串:
有人可以解释一下吗?ascii
当直接对u''
字符串进行操作时,我无法理解如何使它不解码为 7 位范围。
python - 使用诱变剂 mac 与 pc 分配专辑插图
我正在尝试为歌曲分配图片,并且我有一些适用于 Mac 的代码,但不适用于 PC。
从 mutagen.easyid3 导入 EasyID3
从 mutagen.id3 导入 ID3,APIC,错误
从 mutagen.mp3 导入 MP3
def image_assigner(self):
所以在 Mac 上,这段代码有效,但是当我在我的 PC 上尝试时,它不会。任何帮助,将不胜感激。谢谢!
编辑 所以,在做了更多研究之后,我发现这段代码确实将专辑插图保存到 Mac 和 Windows 上的 mp3 文件中,但它保存在 ID3v2.4 中,Mac 可以读取,但 Windows 不能阅读,所以它似乎没有保存在 Windows 上。似乎在诱变保存功能中使用 v1=2 选项应该将标签保存在 ID3v1 中(请参阅本页 10 月 4 日的帖子)。如果我更新专辑、艺术家、标题等的标签似乎可以工作,但是当我为专辑封面更新时,它仍然没有出现在 Windows 资源管理器中。有没有人在这方面有经验并且可以对此有所了解?谢谢。
python - python mutagen eyed3 写 id3v1 标签
我正在使用诱变剂来操纵我的 mp3,但我发现很难使用它来编写 id3v1 标签,看起来流行的 eyed3 包也没有提供任何关于如何执行此操作的示例。任何从事 mutagen 和 eyed3 工作的人都可以给我关于如何将 id3v1 标签写入 mp3 文件的建议吗?谢谢!
python - 优化 Mass ID3 标签扫描
我正在构建一个小工具,我想扫描音乐收藏,读取曲目的 ID3 信息,只要该特定艺术家的歌曲没有被访问超过两次,就可以存储它。我打算Mutagen
用于阅读标签。
然而,我和其他许多人的音乐收藏量很大,超过 20,000 首歌曲。据我所知,图书馆之类Mutagen
的必须打开和关闭每首歌曲才能从中获取 ID3 信息。虽然 MP3 的性能不是很重,但歌曲很多。我已经计划以保持每个艺术家的数量的形式进行小的优化,如果他们的歌曲数量超过 2,则不存储任何信息,但据我所知,我仍然需要打开每首歌曲以检查艺术家 ID3 标签.
我玩弄了使用目录作为艺术家姓名提示的想法,并且一旦艺术家歌曲数量超过 2,就不再阅读该目录中的任何信息,但并不是每个人都将他们的音乐设置在整洁的 Artist/Album/Songs 目录中。
有没有人想到任何其他优化可以减少打开这么多 MP3 的开销?