如何在 python 编程中查看和编辑元标记
Posted
技术标签:
【中文标题】如何在 python 编程中查看和编辑元标记【英文标题】:how to view and edit meta tags in python programming 【发布时间】:2015-03-15 07:04:14 【问题描述】:我使用过其他编程语言(如 java)来编辑元标记,但每次我只能编辑流派标记中的数字。
我在很多软件中看到,比如 media monkey,我们可以用我们想要的名字来编辑流派标签。
目前,流派标签只允许写入从 1 到 79 的数字,而不是字符串。
示例代码:
from ID3 import *
try:
id3info = ID3('/some/file/moxy.mp3')
print id3info
id3info['TITLE'] = "Green Eggs and Ham"
id3info['ARTIST'] = "Moxy Früvous"
for k, v in id3info.items():
print k, ":", v
except InvalidTagError, message:
print "Invalid ID3 tag:", message
如何在 python 中使用我想要的字符串编辑流派标签?
谢谢
【问题讨论】:
看起来 ID3 将流派定义为整数,mappable to a genre -- 您可以检查具有字符串流派的 mp3 以查看它们的存储位置。 你用的是什么ID3包? 我刚刚用 pytagger 尝试了它(我的答案中的包链接),并且能够将流派设置为任意字符串。 pytagger 是纯 python,所以你应该可以在任何操作系统上安装它而无需编译任何东西。 【参考方案1】:ID3v1 仅支持流派的一字节数值。
ID3v2 有broader support for metadata。在 ID3v2 中,您可以使用流派字符串设置 TCON 框架。
例如,使用pytagger 包:
import tagger
id3 = tagger.ID3v2(r'whatever.mp3')
tagged = False
# Try to find a TCON frame to replace the contents
for frame in id3.frames:
if frame.fid == 'TCON':
frame.set_text('Blues')
tagged = True
# There were no TCON frames, add one
if not tagged:
genre = id3.new_frame('TCON')
genre.set_text('Blues')
id3.frames.append(genre)
id3.commit()
【讨论】:
以上是关于如何在 python 编程中查看和编辑元标记的主要内容,如果未能解决你的问题,请参考以下文章