Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/346.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用诱变剂(Python和Django)获得标题、艺术家和专辑艺术?_Python_Django_Mutagen - Fatal编程技术网

如何使用诱变剂(Python和Django)获得标题、艺术家和专辑艺术?

如何使用诱变剂(Python和Django)获得标题、艺术家和专辑艺术?,python,django,mutagen,Python,Django,Mutagen,所以,我使用诱变剂在我的网站上获取上传音乐的信息。我尝试了以下代码: import mutagen mutagen.File(filePath) 它显示以下消息: {'TXXX:compatible_brands': TXXX(encoding=<Encoding.UTF8: 3>, desc='compatible_brands', text=['isommp42']), 'TXXX:minor_version': TXXX(encoding=<Encoding.UTF8:

所以,我使用诱变剂在我的网站上获取上传音乐的信息。我尝试了以下代码:

import mutagen
mutagen.File(filePath)
它显示以下消息:

{'TXXX:compatible_brands': TXXX(encoding=<Encoding.UTF8: 3>, desc='compatible_brands', text=['isommp42']), 'TXXX:minor_version': TXXX(encoding=<Encoding.UTF8: 3>, desc='minor_version', text=['0']), 'TXXX:major_brand': TXXX(encoding=<Encoding.UTF8: 3>, desc='major_brand', text=['mp42']), 'TSSE': TSSE(encoding=<Encoding.UTF8: 3>, text=['Lavf57.56.101'])}
{'TXXX:compatible_brands':TXXX(encoding=,desc='compatible_brands',text=['isommp42'],'TXXX:minor_version':TXXX(encoding=,desc='minor_version',text=[0'],'TXXX:major_brand':TXXX(encoding=,desc desc major='major_brand',text=['mp42']),'TSSE:'TSSE:'TSSE(encoding=,text='Lavf57.56.101'])
这段代码不应该像文档中描述的那样打印艺术家和标题吗?我很困惑。它是编码的吗?如果是,我如何解码

找到了解决方案:请参见下面的答案

mutagen.File(filePath, easy=True)

这应该行得通。注意:如果您在尝试此代码后得到{},则您的音乐文件没有元数据。

您传递的文件的文件类型是什么?在filePath参数中,您实际得到的是什么?@Exprator filePath='music/a.mp3'不您不能将'music/a.mp3'发送给诱变剂,您需要执行
诱变剂.File('a.mp3')
@Exprator我再次得到同样的结果。还有,为什么我不能发送文件路径?我不太理解文档。我的文件保存在一个目录中,我希望我的django视图能够获得音乐文件的艺术家和标题。如何使用诱变剂?