Python MP3 ID3 标签编辑器

问题描述 投票:0回答:3

为我朋友的 MP3 播放器重新组织一个大型 MP3 库,我需要将标题 ID3 标签命名为与文件名相同的名称,并且通过 Windows 属性执行此操作需要很长时间,所以我想知道是否有人知道如何制作一个 Python 脚本来快速连续地对目录中的所有 MP3 执行此操作。或者至少是可安装在 Windows 上的库的链接。

python id3
3个回答
10
投票

看这个:

另外深入了解 Python 使用 MP3 ID3 标签作为示例。

不要忘记 PyPI - Python 包索引。


4
投票

这是我为此编写的一个Python脚本https://gitlab.com/tomleo/id3_folder_rename

#! /usr/bin/python

import os
import re
import glob
import subprocess

from mutagen.easyid3 import EasyID3

path = os.getcwd()
fpath = u"%s/*.mp3" % path
files = glob.glob(fpath)

for fname in files:
    _track = EasyID3(fname)
    track_num = _track.get('tracknumber')[0]
    track_title = re.sub(r'/', '_', _track.get('title')[0])
    if '/' in track_num:
        track_num = track_num.split('/')[0]
    if len(track_num) == 1:
        track_num = "0%s" % track_num
    _valid_fname = u"%s/%s %s.mp3" % (path, track_num, track_title)
    if fname != _valid_fname:
        subprocess.call(["/bin/mv", fname, _valid_fname])

它使用 mutagen python 库来解析 ID3 信息。您必须调整子进程调用它才能使其与 Windows 一起工作,但这应该让您了解如何做到这一点。希望这有帮助。


0
投票

将其挖掘出来,因为它仍然是一个主题(17k 视图),并且此处链接的包已过时。

截至 10/2023 快速搜索显示:

  • tinytag:简单,看似Pythonic的方式,但只能读取标签。
  • 诱变剂:比较复杂,还可以写标签。

可能重复:ID3-mp3 在 python 中编辑 - 最新的包?

© www.soinside.com 2019 - 2024. All rights reserved.