以下是一个示例代码,它遍历指定文件夹中的MP3文件,并将ID3标签添加到SQLite数据库中:
import os
import sqlite3
from mutagen.id3 import ID3
# 连接到SQLite数据库
conn = sqlite3.connect('music.db')
c = conn.cursor()
# 创建表
c.execute('''CREATE TABLE IF NOT EXISTS songs
(title text, artist text, album text, year text)''')
# 指定要遍历的文件夹路径
folder_path = '/path/to/folder'
# 遍历文件夹中的文件
for root, dirs, files in os.walk(folder_path):
for file in files:
if file.endswith('.mp3'):
file_path = os.path.join(root, file)
audio = ID3(file_path)
# 从ID3标签中获取相关信息
title = audio.get('TIT2').text[0] if 'TIT2' in audio else ''
artist = audio.get('TPE1').text[0] if 'TPE1' in audio else ''
album = audio.get('TALB').text[0] if 'TALB' in audio else ''
year = audio.get('TDRC').text[0] if 'TDRC' in audio else ''
# 将信息插入SQLite数据库
c.execute("INSERT INTO songs VALUES (?, ?, ?, ?)", (title, artist, album, year))
conn.commit()
# 关闭数据库连接
conn.close()
上述代码使用了mutagen
库来读取MP3文件的ID3标签信息,然后将这些信息插入到SQLite数据库中。在代码中,您需要将/path/to/folder
替换为实际的文件夹路径。还可以根据需要修改数据库表的结构和插入的字段。