python批量修改mp3信息

本文介绍如何利用mutagen库批量修改mp3文件的歌曲信息,包括升级版和第三版的处理方法。
摘要由CSDN通过智能技术生成
# coding=utf-8

import os
import eyed3


def getMp3Files(parent):
    mp3Files = []

    sons = os.listdir(parent)

    if (isinstance(sons, list)):
        for n in sons:
            # print("{}  {}".format(n, os.sep.join((parent, n))))
            sonPath = os.sep.join((parent, n))

            if (os.path.isdir(sonPath)):
                grandChildren = getMp3Files(sonPath)
                # print("mepath {}, {}".format(sonPath, grandChildren))
                mp3Files.extend(grandChildren)
            elif os.path.isfile(sonPath) and len(sonPath) > 3:
                suffix = sonPath[len(sonPath)-4:]
                if suffix == ".mp3":
                    mp3Files.append(sonPath)
            else:
                pass

    return mp3Files


def dealOneMp3(path):
    audio = eyed3.load(path)
    title = audio.tag.title
    fn = os.path.basename(path)
    parentPath = os.path.dirname(path)
    parent = os.path.basename(parentPath)
    audio.tag.title = parent + "_" + fn
    audio.tag.save()

    mp3 = eyed3.load(path)
    print("{}  {} {} {}".format(path, title, fn, mp3.tag.title))


def dealAll(allPath):
    for p in allPath:
        dealOneMp3(p)


if __name__ == "__main__":
    all = getMp3Files(os.path.abspath("."))
    # print("\n".join(all))
    # print(len(all))

    dealAll(all)

y

 

 

用mutagen修改mp3歌曲名

# coding=utf-8

import os
import eyed3
from mutagen.id3 import ID3, TIT2, APIC, TPE1, TALB


def getMp3Files(parent):
    mp3Files = []

    sons = os.listdir(parent)

    if (isinstance(sons, list)):
        for n in sons:
            # print("{}  {}".format(n, os.sep.join((parent, n))))
            sonPath = os.sep.join((parent, n))

            if (os.path.isdir(sonPath)):
                grandChildren = getMp3Files(sonPath)
                # print("mepath {}, {}".format(sonPath, grandChildren))
                mp3Files.extend(grandChildren)
            elif os.path.isfile(sonPath) and len(sonPath) > 3:
                suffix = sonPath[len(sonPath)-4:]
                if suffix == ".mp3":
                    mp3Files.append(sonPath)
            else:
                pas
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值