在Python中更改文件元数据

2024-05-13 13:32:04 发布

您现在位置:Python中文网/ 问答频道 /正文

好吧,我在这附近找过了,但没有找到任何可靠的答案。

我正在尝试在windows中更改文件艺术家、文件名、分级、流派等,当您在“详细信息”中查看文件夹时会显示这些内容。

目前,我有我想编辑的文件在一个列表中,我正在迭代它们,但正如我所说的,我不确定如何更改列表中的每个文件。

def Files(The_FileList):
'''Changes each files metadata'''
for each_file in The_FileList:

    #clueless here.

return The_FileList

需要使用.avi/.mkv一般电影文件,因为我做了很多编码。

我正在寻找一个简单的选择,因为这是我想做的一切。

谢谢


Tags: 文件the答案文件夹编辑内容列表文件名
2条回答

在许多情况下(在本例中),元数据是特定于文件类型的。(有些文件系统提供自己的元数据,如NTFS和以后的文件系统所提供的元数据,但是这个特定的元数据来自文件本身,而不是来自文件系统)。

要修改相关文件中的元数据,您可以使用Mutagen library(假设它们是mp3/aac/flac/vorbis/etc.-可能还有其他具有不同元数据格式的音频格式)。

诱变剂实现。

我留下一个例子来更改目录中所有文件的3个属性:

import mutagen
from mutagen.mp4 import MP4
from os import scandir

ruta = './'
l_archivos = sorted([archivo.name for archivo in scandir(ruta) if archivo.is_file()])

mutagen.File(l_archivos[1])      # U: See the tags of the data

def edit_Media_Data():

    for f in range(len(l_archivos[:-1])):                 # A: A range of all the fields exept the script
        file = MP4(l_archivos[f])                         # A: Capture the file to edit
        file['©nam'] = l_archivos[f].replace('.mp4','')   # U: Take the file name and makeit the tittle
        file['©ART'] = 'Hector_Costa_Guzman'              # U: Edit the Autor
        file['©alb'] = 'Curso_Django'                     # U: Edit the Album
        file.pprint()
        file.save()  

相关问题 更多 >